LDAPS
LDAPS ist die sichere Version des Lightweight Directory Access Protocol (LDAP), wobei die LDAP-Kommunikation mit TLS/SSL verschlüsselt wird.
Standardmäßig wird die LDAP-Kommunikation zwischen Client- und Serveranwendungen nicht verschlüsselt. Mit LDAPS schützen Sie den Inhalt von LDAP-Abfragen zwischen Linux VDA- und LDAP-Server.
Die folgenden Linux VDA-Komponenten benötigen LDAPS:
- Brokeragent: Registrierung des Linux VDA bei einem Delivery Controller
- Richtliniendienst: Richtlinienbewertung
Die Konfiguration von LDAPS umfasst Folgendes:
- Aktivieren von LDAPS auf dem Active Directory (AD)-/LDAP-Server
- Exportieren der Stammzertifizierungsstelle für Clients
- Aktivieren/Deaktivieren von LDAPS auf dem Linux VDA
- Konfigurieren von LDAPS für Drittanbieter-Plattformen
- Konfigurieren von SSSD
- Konfigurieren von Winbind
- Konfigurieren von Centrify
- Konfigurieren von Quest
Hinweis:
Mit folgendem Befehl können Sie einen Überwachungszyklus für die LDAP-Server festlegen. Der Standardwert ist 15 Minuten. Stellen Sie den Wert auf mindestens 10 Minuten ein.
/opt/Citrix/VDA/bin/ctxreg create -k "HKLM\Software\Citrix\VirtualDesktopAgent" -v "ListOfLDAPServersMonitorPeroid" -t "REG_DWORD" -d "0x0000000f" --force <!--NeedCopy-->
Aktivieren von LDAPS auf dem AD-/LDAP-Server
Sie können LDAP über SSL (LDAPS) aktivieren, indem Sie ein ordnungsgemäß formatiertes Zertifikat von einer Microsoft Zertifizierungsstelle (ZS) oder einer anderen Zertifizierungsstelle installieren.
Tipp:
LDAPS wird automatisch aktiviert, wenn Sie eine unternehmenseigene Stammzertifizierungsstelle auf einem Domänencontroller installieren.
Weitere Informationen zum Installieren des Zertifikats und Verifizieren der LDAPS-Verbindung finden Sie unter How to enable LDAP over SSL with a third-party certification authority.
Wenn Sie eine Zertifikatauthentifizierungshierachie mit mehreren Ebenen verwenden, besitzen Sie nicht automatisch das geeignete Zertifikat für die LDAPS-Authentifizierung auf dem Domänencontroller.
Informationen zum Aktivieren von LDAPS für Domänencontroller über eine Zertifikatauthentifizierungshierachie mit mehreren Ebenen finden Sie im Artikel LDAP over SSL (LDAPS) Certificate.
Aktivieren der Stammzertifizierungsstelle für Clients
Der Client muss ein Zertifikat einer Zertifizierungsstelle verwenden, dem der LDAP-Server vertraut. Importieren Sie das Stammzertifizierungsstellenzertifikat in einen vertrauenswürdigen Schlüsselspeicher, um die LDAPS-Authentifizierung für den Client zu aktivieren.
Weitere Informationen zum Exportieren der Stammzertifizierungsstelle finden Sie unter How to export Root Certification Authority Certificate auf der Supportwebsite von Microsoft.
Aktivieren oder Deaktivieren von LDAPS auf dem Linux VDA
Zum Aktivieren oder Deaktivieren von LDAPS auf dem Linux VDA führen Sie das folgende Skript aus (Sie müssen als Administrator angemeldet sein):
Die Syntax für diesen Befehl enthält Folgendes:
-
Aktivieren von LDAP über SSL/TLS mit dem bereitgestellten Stammzertifizierungsstellenzertifikat:
/opt/Citrix/VDA/sbin/enable_ldaps.sh -Enable pathToRootCA <!--NeedCopy-->
-
Aktivieren von LDAP über SSL/TLS mit Kanalbindung:
/opt/Citrix/VDA/sbin/enable_ldaps.sh -Enablecb pathToRootCA <!--NeedCopy-->
Hinweis:
Das Stammzertifizierungsstellenzertifikat für die Kanalbindung muss im PEM-Format vorliegen. Wenn durch Aktivieren von LDAPS keine virtuelle Python3-Umgebung erstellt wird, erstellen Sie sie gemäß den Anweisungen unter Erstellen einer virtuellen Python3-Umgebung manuell.
Um SSL-Verbindungsfehler zu beheben, die bei der Verwendung des Pip-Tools auftreten können, sollten Sie die folgenden vertrauenswürdigen Hosts zur Datei /etc/pip.conf hinzufügen:
[global]
trusted-host =
pypi.org
files.pythonhosted.org
-
Fallback auf LDAP ohne SSL/TLS
/opt/Citrix/VDA/sbin/enable_ldaps.sh -Disable
<!--NeedCopy-->
Der Java-Schlüsselspeicher für LDAPS ist in /etc/xdl/.keystore. Unter anderem sind folgende Registrierungsschlüssel betroffen:
HKLM\Software\Citrix\VirtualDesktopAgent\ListOfLDAPServers
HKLM\Software\Citrix\VirtualDesktopAgent\ListOfLDAPServersForPolicy
HKLM\Software\Citrix\VirtualDesktopAgent\UseLDAPS
HKLM\Software\Policies\Citrix\VirtualDesktopAgent\Keystore
HKLM\Software\Citrix\VirtualDesktopAgent\EnableChannelBinding
<!--NeedCopy-->
Konfigurieren von LDAPS für Drittanbieter-Plattformen
Neben Linux VDA-Komponenten gibt es verschiedene Softwarekomponenten von Drittanbietern, die mit dem Linux VDA verbunden sind und ebenfalls sicheres LDAP erfordern, z. B. SSSD, Winbind, Centrify und Quest. In den folgenden Abschnitten wird beschrieben, wie Sie sicheres LDAP mit LDAPS, STARTTLS oder SASL Sign and Seal konfigurieren.
Tipp:
Nicht alle diese Softwarekomponenten nutzen den SSL-Port 636 für sicheres LDAP. Außerdem kann LDAPS (LDAP über SSL auf Port 636) meist nicht gemeinsam mit STARTTLS auf Port 389 verwendet werden.
SSSD
Konfigurieren Sie den sicheren LDAP-Datenverkehr mit SSSD auf Port 636 oder Port 389 entsprechend den Optionen. Weitere Informationen finden Sie hier: SSSD LDAP Linux man page.
Winbind
Die Winbind LDAP-Abfrage verwendet die ADS-Methode. Winbind unterstützt nur die StartTLS-Methode auf Port 389. Betroffene Konfigurationsdateien sind /etc/samba/smb.conf und /etc/openldap/ldap.conf (für RHEL) oder /etc/ldap/ldap.conf (für Ubuntu). Nehmen Sie an den Dateien die folgenden Änderungen vor:
-
smb.conf
ldap ssl = start tls
ldap ssl ads = yes
client ldap sasl wrapping = plain
-
ldap.conf
TLS_REQCERT never
Alternativ können Sie sicheres LDAP mit SASL GSSAPI Sign and Seal konfigurieren; es kann jedoch nicht neben TLS/SSL existieren. Um SASL-Verschlüsselung zu verwenden, ändern Sie die Konfiguration für smb.conf:
ldap ssl = off
ldap ssl ads = no
client ldap sasl wrapping = seal
Centrify
Centrify unterstützt LDAPS auf Port 636 nicht. Es bietet jedoch sichere Verschlüsselung auf Port 389. Weitere Informationen finden Sie auf der Website von Centrify.
Quest
Quest Authentication Services unterstützt LDAPS auf Port 636 nicht, bietet jedoch mit einer anderen Methode sichere Verschlüsselung auf Port 389.
Problembehandlung
Folgende Probleme können bei der Verwendung dieses Features auftreten:
-
Verfügbarkeit des LDAPS-Diensts
Stellen Sie sicher, dass die LDAPS-Verbindung auf dem AD/LDAP-Server verfügbar ist. Der Port ist standardmäßig 636.
-
Registrierung des Linux VDA schlägt fehl, wenn LDAPS aktiviert ist
Überprüfen Sie, ob der LDAP-Server und die Ports richtig konfiguriert sind. Überprüfen Sie zuerst das Stammzertifizierungsstellenzertifikat und stellen Sie sicher, dass es mit dem AD/LDAP-Server übereinstimmt.
-
Versehentlich vorgenommene falsche Registrierungsänderung
Wenn Sie die LDAPS-bezogenen Schlüssel versehentlich ohne enable_ldaps.sh aktualisiert haben, wird u. U. die Abhängigkeit der LDAPS-Komponenten unterbrochen.
-
LDAP-Datenverkehr wird nicht durch SSL/TLS von Wireshark oder anderen Netzwerküberwachungs-Tools verschlüsselt.
LDAPS ist standardmäßig deaktiviert. Führen Sie /opt/Citrix/VDA/sbin/enable_ldaps.sh aus, um die Aktivierung zu erzwingen.
-
Kein LDAPS-Datenverkehr von Wireshark oder einem anderen Netzwerküberwachungstool
Bei der Linux VDA-Registrierung und Gruppenrichtlinienbewertung erfolgt LDAP/LDAPS-Datenverkehr.
-
LDAPS-Verfügbarkeit konnte durch Ausführen von “ldp connect” auf dem AD-Server nicht verifiziert werden
Verwenden Sie den AD FQDN statt der IP-Adresse.
-
Stammzertifizierungsstellenzertifikat konnte nicht durch Ausführen des Skripts /opt/Citrix/VDA/sbin/enable_ldaps.sh importiert werden
Geben Sie den vollständigen Pfad des Zertifizierungsstellenzertifikats an und prüfen Sie den Typ des Stammzertifizierungsstellenzertifikats. Er sollte mit den meisten unterstützten Java Keytool-Typen kompatibel sein. Wenn er nicht in der Liste der unterstützten Typen enthalten ist, können Sie ihn konvertieren. Wir empfehlen das mit base64 verschlüsselte PEM-Format, wenn ein Problem mit dem Zertifikatformat auftritt.
-
Stammzertifizierungsstellenzertifikat wird mit Keytool -list nicht angezeigt
Wenn Sie LDAPS durch Ausführen von
/opt/Citrix/VDA/sbin/enable_ldaps.sh
aktivieren, wird das Zertifikat nach “/etc/xdl/.keystore” importiert und ein Kennwort wird zum Schutz des Schlüsselspeichers eingerichtet. Wenn Sie das Kennwort vergessen, können Sie das Skript erneut ausführen und einen Schlüsselspeicher erstellen.