Anmeldeprobleme wegen LDAP-Authentisierung: Ist Validierung des Fingerprints erforderlich?

  • Bei der BROCKHAUS-AG treten Anmeldeprobleme auf mit folgender Fehlermeldung: "Vertec konnte sich nicht mit dem LDAP Authentisierungsserver verbinden."

    Die Ursache liegt in der Validierung des Fingerprints:

    Der LDAP Server bezieht sein Zertifikat aus einer eigenen Windows CA. Das heißt, die Zertifikate werden automatisch ausgestellt und auch erneuert. Die Logik vom LDAP Server, welches Zertifikat er nun verwendet, kann man schlecht steuern, es wird immer das genommen, was am längsten gültig ist.

    Wenn nun der Domain Controller ein neues Zertifikat zugewiesen bekommt oder eins erneuert, weil dieses kurz vor dem Ablaufen ist, ändert sich automatisch auch das LDAP Zertifikat und somit auch der Fingerprint. Das führt dann zum oben geschilderten Anmelde-Problem.

    Das Anmeldeproblem kann nur dadurch gelöst werden, dass man in den "Systemeinstellungen" unter "Authentisierung" das neue Zertifikat im Feld "LDAPS Zertifikat-Fingerabdruck" einträgt. Voraussetzung ist, dass man herausfindet, welches Zertifikat der LDAP Server aktuell verwendet, und das ist etwas aufwändig.

    Frage:

    Aus Sicht unserer IT ist bei Vertec die Validierung des LDAPS-Fingerprints nicht unbedingt erforderlich, da der Fingerprint in der Regel nur verwendet wird, um ein bestimmtes Zertifikat zu identifizieren und nicht, um es zu validieren.  
    Wer hat ähnliche Erfahrungen gemacht und würde es auch begrüßen, wenn in Vertec keine Validierung des Fingerprints erfolgen würde?

    • Offizieller Beitrag

    Die Implementation ist genau so wie von Dir geschrieben. Wir können so auch self-signed Zertifikate unterstützen, was, wie ich Deinen Zeilen entnehmen kann, bei Euch auch der Fall ist. Nur bei "echten", externen Zertifikaten könnten wir ohne das auskommen. Bei einem self-signed Zertifikat ist es sonst total unklar, ob die Gegenseite überhaupt die Richtige ist und man-in-the-middle Attacken wären denkbar.

  • Wir würden auch gerne die LDAP Authentifizierung nutzen. Ich verstehe aber auch nicht so ganz weshalb hier auf die Validierung des Zertifikats per Fingerprint gesetzt wird. Fast alle LDAP Schnittstellen validieren ihre Zertifikate über einen Zertifikatsspeicher oder haben die Möglichkeit ein Zertifikat zur Validierung zur Verfügung zu stellen. Habe ich ein selbst signiertes Zertifikat füge ich das einfach dem entsprechenden Zertifikatsspeicher hinzu oder stelle es der Anwendung zur Verfügung. In beiden Fällen kann ich aber auch ein Stammzertifikat zur Verfügung stellen über das sich dann untergeordnete Zertifikate validieren lassen. Für Vertec wäre als Zertifikatsspeicher auf dem Windows Server ja der Windows Zertifikatsspeicher vorhanden.

    In einer Windows Domänenumgebung mit einer Domänenzertifizierungsstelle ist dort im Normalfall auch das selbst signierte Stammzertifikat schon vorhanden. Das Zertifikat das vom Domänencontroller für LDAP genutzt wird kann hierüber einfach validiert werden und das auch noch wenn es automatisch neu generiert wurde.

    • Offizieller Beitrag

    Wir haben das genau aus dem Grund gemacht: damit es auch mit self-signed Zertifikaten funktioniert. Das Eintragen des Fingerprints kommt einer Vertrauensstellung gleich, ähnlich wie Sie es beschreiben, einfach technologisch viel einfacher rumzusetzen. Ich sehe, dass Sie da sehr versiert unterwegs sind, aber für viele Leute ist das Handling von eigenen Zertifikaten und dem Zertifikatsspeicher zu kompliziert (mich eingeschlossen).

    Gerade eben haben wir für den 6.5.0.11 das Handling von self-signed Zertifikaten geprüft und die Akzeptanz für den Cloud Installer verschärt (https://www.vertec.com/ch/kb/vertec-version-6-5/, siehe Cloud App Installer prüft TLS Zertifikat restriktiver). Das Handling von diesen Zertifikaten ist ziemlich mühsam, und selbst wenn man diesen korrekt vertraut lokal, dann halten sich die meisten Browser doch nicht an das: unsere Tests haben gezeigt, dass nur der Firefox noch self-signed denen lokal vertraut wird auch vertraut:

    Damit ist das lokale OS gemeint! Die anderen Browser (Chrome, Edge, Opera) öffnen die Seite (hier das Vertec App Portal) nicht, mit einem Sicherheitsfehler.

    Natürlich wird das OS selber seinem eigenen Zertifikatsspeicher viel eher trauen, es zeigt einfach, dass die Welt den self-signed Zertifikaten immer weniger Liebe entgegen bringt. Wir überlegen uns deshalb auch, mittelfristig unsere Unterstützung für self-signed Zertifikate im Vertec Cloud Server abzukünden (siehe https://www.vertec.com/kb/cloudserver…ltes-zertifikat).

    Was uns aber auch stört: dass selbst bei richtigen Zertifikaten man den Fingerprint eintragen muss. Es gibt da schon lange Pläne, das zu ändern, diese sind einfach aus Prioritätsgründen immer wieder zurückgestellt worden - es ist auch nicht die Mehrheit der Vertec Kunden, welche eine LDAP Anbindung nutzt, und uns schien das Eintragen eines Fingerprints akzeptabel. Wenn wir lokal das OS fragen würden, ob man dem Zertifikat trauen kann, dann würde es ja auch Ihren Fall abdecken, mit eigener Stammzertifikatsinfrastruktur und internen Vertrauensstellungen. Wir diskutieren das Thema nochmals intern.

  • Vielen Dank für die ausführliche Antwort. Das Zertifikat das der Vertec Cloud Server für TLS verwendet ist aber ja erstmal komplett losgelöst von dem das für LDAP validiert werden muss. Für LDAP könnte man ja im ersten Schritt wie Sie beschrieben haben die Validierung hier abändern. Da wie sie schon schreiben nicht die Mehrheit der Kunden eine LDAP Anbindung nutzt kann man vielleicht auch davon ausgehen das bei Kunden die Sie nutzen ein größeres Wissen zur Funktion dieser Mechanismen vorhanden ist?

    Zur Nutzung von selbst signierten Zertifikaten bin ich einer etwas anderen Meinung. Ich denke das viele Unternehmen für ihre internen Zertifikate noch eine selbst signierte Stammzertifizierung verwenden und hierrüber dann Zertifikate für unterschiedliche Dienste (interne Websites /Domänencontroller) generieren. Auch für Firefox ist das von Ihnen beschriebene Problem über eine Gruppenrichtlinie lösbar. Firefox nutzt im Standard einen eigenen Zertifikatsspeicher für Stammzertifikate, das lässt sich aber auf den Windows Zertifikatsspeicher ändern: https://support.mozilla.org/en-US/kb/setti…orities-firefox Eine schöne Lösung sind selbst signierte Zertifikate sicher nicht, sie werden uns aber vermutlich noch einige Jahre begleiten.