Hallo.
Ich habe mir auch das EcoDMS Docker-Image (21.12 burns) auf einer Synology angeschaut, wollte die Benutzerverwaltung ebenso an den Directory Server (LDAP/AD) hängen und erhielt diverse/dieselben Fehlermeldungen. Hier habe ich meine Recherchen, Ansatzpunkte und Hilfestellungen dokumentiert - hoffentlich nützlich für andere.
Code:
"LDAP: error code 8 - BindSimple: Transport encryption required".
Grund: Ab Samba 4.4.1 wurde dem Server eine Option hinzugefügt, strikter mit Authentifizierung umzugehen: "ldap server require strong auth" - eingeschaltet im Standard. Siehe
Doku und
Release Notes
1. Lösungsansatz: Den Directory Server umkonfigurieren, so dass er auch unverschlüsselt authentifiziert.
Hierfür gibt es keine Option im DSM Gui und in DSM 7.1 ist dies anscheinend nicht vorgesehen. Zumindest wurde der Hinweis aus dem aktuellen Administratorhandbuch entfernt, ist jedoch im
DSM 6.2 Handbuch noch vorhanden (siehe Kapitel 7 FAQ).
Hier beschreibt jemand in der Community die Schritte ein wenig genauer als unten zu sehen.
/etc/samba/smb.conf editieren und "ldap server require strong auth = no" in [global] eintragen.
Nach einem NAS Neustart hat die Verbindung dann wunderbar funktioniert - unverschlüsselt authentifiziert. Kann man mit anderen Tools, wie z.B. ldp.exe (enthalten in
MS RSAT) auch ausprobieren.
Code:
ld = ldap_open("diskstation.fritz.box", 389);
Established connection to diskstation.fritz.box.
Retrieving base DSA information...
Getting 1 entries:
Dn: (RootDSE)
[...]
res = ldap_simple_bind_s(ld, 'ecodms@fritz.box', <unavailable>); // v.3
Authenticated as: 'ecodms@fritz.box'.
Expanding base 'DC=fritz,DC=box'...
Getting 1 entries:
Dn: DC=fritz,DC=box
[...]
Unverschlüsselte Kommunikation ist aber allenfalls in privaten Netzen noch vertretbar meiner Meinung nach. Deswegen kommen wir zum nächsten Ansatz.
2. Lösungsansatz: EcoDMS auf verschlüsselte Kommunikation umschalten.
Beim Umstellen von LDAP auf LDAPS zeigt EcoDMS folgende Fehlermeldung:
Code:
[...] PKIX Path Building Failed [...]
Dies deutet auf Schwierigkeiten im Bereich Zertifikate hin (Public Key Infrastructure).
Der Client (in diesem Fall "EcoDMS Server") kann die Vertrauensstellung zum LDAP nicht herstellen, da das ausgelieferte Zertifikat nicht bekannt ist.
Da der EcoDMS Server jedoch in einem Docker Container läuft, ist es ein wenig schwieriger an die Konsole/Shell heranzukommen, die benötigt wird, um an den Zertifikatsspeicher heranzukommen. Das geht entweder über die Synology Docker Gui (Terminal - Erstellen - mit Befehl starten)
oder über die Docker CLI, sofern SSH im DSM eingeschaltet ist und eine Verbindung aufgebaut wurde zur Synology.
Code:
sudo docker exec -ti CONTAINERNAME /bin/bash
Die folgenden Schritte bauen die Verbindung zum LDAP Server auf, laden das entsprechende Zertifikat herunter, setzen ausreichende Berechtigungen und fügen es dem Zertifikatsspeicher des Betriebssystems hinzu (alternativ könnte man das Zertifikat auch über DSM herunterladen und in einen Ordner legen, der vom Container erreichbar ist denke ich).
Diese Vertrauensstellung kann der EcoDMS Server nutzen, um die LDAP Verbindung so aufzubauen, wie es der Directory Server im Standard erwartet.
Code:
openssl s_client -connect SERVER:636 <<<'' | openssl x509 -out /PATH/FILE
chmod 644 /PATH/FILE
cd /PATH
update-ca-certificates
Die Fehlermeldung kann ignoriert werden, da es sich um ein selbstsigniertes Zertifikat handelt, dessen Zertifikatskette nicht nachvollzogen werden kann. Bitte auch ignorieren, dass auf dem Screenshot "0 added" angezeigt wird. das Zertifikat wurde schon einmal hinzugefügt und liegt im Zertifikatsspeicher (hier unter dem Namen "cert.pem". Ich wollte die Doku aber so lückenlos wie möglich ersgtellen.
Nach einem NAS Neustart hat die Verbindung dann wunderbar funktioniert - dieses mal verschlüsselt authentifiziert.
Einstellungen in EcoDMS Client wie folgt:
URL | ldaps://SERVER |
BasisDN | DC=domain,DC=tld |
BenutzerDN | CN=benutzer,CN=Users,DC=domain,DC=tld |
Passwort | xxxxxxxxxx |
SuchDN | CN=Users |
Filter | entsprechender LDAP query filter |
UUID Feld | samaccountname |
Zu guter letzt ein Screenshot von EcoDMS Benutzereinstellungen:
Während der Konfiguration sind noch diverse weitere Fehlermeldungen aufgetaucht, die aber relativ einfach zu lösen waren - meistens beruhend auf Tippfehlern etc.
Zwei Wermutstropfen bleiben:
1) Das Zertifikat, welches im Standard von der DSM für den Directory Server ausgestellt wird, hat nur eine Laufzeit von 1 Jahr. Somit müssten die oben genannten Schritte quasi jährlich wiederholt werden. Vielleicht kann man die Laufzeit noch beeinflussen - muss ich demnächst mal reinschauen.
2) Den Connection Manager kriege ich leider immer noch nicht dazu, eine Verbindung mit einem LDAP Benutzer aufzubauen. ..... Vielleicht mach ich da mal ein Ticket bei EcoDMS auf .... Oder ich hab hier ein Brett vorm Kopf ....
Gruß
win7x8664