Folgen Sie der Anleitung in diesem Artikel, um Ihren LDAP-Client mit dem Secure LDAP-Dienst zu verbinden.
Wichtig:
- Dokumentation des Anbieters
Die Angaben in diesem Artikel dienen nur als Referenz und können sich ändern. Zusätzlich zu dieser Hilfe sollten Sie die Dokumentation Ihres Anbieters lesen, um die aktuellsten Schritte zum Verbinden Ihres Clients mit dem Secure LDAP-Dienst zu erhalten. - Vorbereitung
Bevor Sie diese Anleitung verwenden, müssen Sie den Client dem Secure LDAP-Dienst hinzufügen, Zugriffsberechtigungen konfigurieren, ein Clientzertifikat und einen Schlüssel herunterladen und optional Zugangsdaten erstellen. - Verbindung testen
Optional können Sie vor Beginn dieser Schritte einen schnellen Verbindungstest mit einfachen Tools wie ldapsearch, ADSI und ldp.exe durchführen. Die Tools eignen sich auch zur Behebung von Fehlern, die unter Umständen beim Verbinden Ihres LDAP-Clients mit Secure LDAP auftreten. Eine Anleitung finden Sie unter Verbindung testen und Fehler beheben. - Einrichtungsschritte ausführen
Nachdem Sie den LDAP-Client gemäß der Anleitung auf dieser Seite verbunden haben, müssen Sie die Einrichtung des LDAP-Clients abschließen, indem Sie den Dienststatus in der Google Admin-Konsole auf Ein setzen. Eine Anleitung dazu findest du unter 5. Stellen Sie LDAP-Clients auf Ein um.
Inhalt
Dieser Artikel enthält die folgenden Abschnitte:
- Allgemeine Konfigurationsanleitung: Enthält allgemeine Anleitungen zum Verbinden von LDAP-Clients, die in diesem Artikel nicht angegeben sind.
- Konfigurationsanleitung für bestimmte LDAP-Clients: Enthält eine Anleitung zum Verbinden bestimmter LDAP-Clients (z. B. Atlassian Jira oder OpenVPN) mit dem Secure LDAP-Dienst. Die Schritte variieren je nach Clienttyp.
- Konfigurationsanleitung für Java-Anwendungen: Enthält allgemeine Anleitungen für Java-basierte Anwendungen mit LDAP-Funktionalität.
- Optional: stunnel als Proxy verwenden: In diesem Abschnitt finden Sie Anleitungen mit zusätzlichen Hinweisen zum Herstellen einer Verbindung zu LDAP-Clients, die keine digitalen Zertifikate unterstützen.
Bei dieser Anleitung wird davon ausgegangen, dass die heruntergeladenen Client-Schlüssel- und Zertifikatsdateien ldap-client.key und ldap-client.crt heißen.
Grundlegende Konfigurationsanleitung
Dieser Abschnitt enthält eine allgemeine Anleitung zum Verbinden Ihres LDAP-Clients mit dem Secure LDAP-Dienst. Wenn Ihr LDAP-Client in der Anleitung unten nicht aufgeführt ist, sehen Sie in der Dokumentation der jeweiligen Anwendung nach.
Hinweis:Bei bestimmten LDAP-Clients wie Atlassian Jira und SSSD wird während der Nutzerauthentifizierung eine Nutzersuche durchgeführt, um weitere Informationen zu einem Nutzer zu erhalten. Damit die Nutzerauthentifizierung für solche LDAP-Clients richtig funktioniert, müssen Sie Nutzerinformationen lesen für alle Organisationseinheiten aktivieren, in denen Nutzeranmeldedaten bestätigen aktiviert ist. Eine Anleitung finden Sie unter Zugriffsberechtigungen konfigurieren.
So verbinden Sie den LDAP-Client mit dem Secure LDAP-Dienst:
- Konfigurieren Sie Ihren LDAP-Client mit Cloud Directory als LDAP-Server.
Laden Sie das Zertifikat auf Ihren LDAP-Client hoch.
Der Secure LDAP-Dienst verwendet TLS-Clientzertifikate als primären Authentifizierungsmechanismus. Um das Zertifikat in den LDAP-Client hochzuladen, öffnen Sie die Authentifizierungs- oder Verzeichniseinstellungen des LDAP-Clients und geben Sie die Details aus der Tabelle unten ein.
Hinweis:Ausführliche Informationen dazu, wie und wo Sie TLS-Zertifikate hochladen, finden Sie in der Dokumentation Ihres Anbieters.
In der folgenden Tabelle finden Sie grundlegende Verbindungsinformationen:
|
Hostname |
ldap.google.com |
|---|---|
|
Ports |
389 bei LDAP mit aktiviertem StartTLS |
|
Base DN (Basis-DN) |
Ihre Domain im DN-Format (Distinguished Name). Beispiel: dc=beispiel,dc=de für beispiel.de |
|
Nutzername und Passwort |
Bei manchen LDAP-Clients benötigen Sie für die Authentifizierung nicht nur ein Zertifikat, sondern auch einen Nutzernamen und ein Passwort. Wenn "Nutzername" und "Passwort" keine Pflichtfelder sind, können Sie diesen Schritt überspringen. Erstellen Sie in der Google Admin-Konsole einen Nutzernamen und ein Passwort. Weitere Informationen |
|
Clientzertifikat und Schlüsseldateien |
Verwenden Sie das Zertifikat und die Schlüsseldatei, die Sie aus der Google Admin-Konsole heruntergeladen haben. Wenn der LDAP-Client keine Möglichkeit zur Authentifizierung mit einem Clientzertifikat bietet, lesen Sie den Abschnitt stunnel als Proxy verwenden. WICHTIG:Einige LDAP-Clients, z. B. Apache Directory Studio, unterstützen das Hochladen digitaler Zertifikate nicht. Sie können dieses Problem umgehen, indem Sie Stunnel als Proxy verwenden. |
Konfigurationsanleitungen für bestimmte LDAP-Clients
ADSI Edit (Windows)
Gehen Sie so vor:
- Folgen Sie der Anleitung unter ldp.exe (Windows), um die Clientzertifikate zu installieren.
- Gehen Sie zu Action > Connect to… (Aktion > Verbinden mit…).
- Geben Sie die folgenden Verbindungseinstellungen ein:
Name:Geben Sie einen Namen für die Verbindung ein, z. B. Google LDAP.
Verbindungspunkt: „Wählen Sie einen Distinguished Name oder Naming Context aus oder geben Sie ihn ein.“
Geben Sie Ihren Domainnamen im DN-Format ein, z. B. dc=beispiel,dc=de für beispiel.de.
Computer (Computer): „Select or type a domain or server“ (Domain oder Server auswählen oder eingeben)
ldap.google.com
Use SSL-based Encryption (SSL-basierte Verschlüsselung verwenden): Aktiviert
- Klicken Sie auf Erweitert… und geben Sie die folgenden Details ein:
Anmeldedaten angeben:Aktiviert
Nutzername:Der Nutzername der Zugangsdaten aus der Admin-Konsole
Passwort:Das Passwort der Zugangsdaten aus der Admin-Konsole
Portnummer:636
Protokoll:LDAP
Einfache Bindungsauthentifizierung:Aktiviert
- Klicken Sie auf OK und dann noch einmal auf OK.
- Wenn die Verbindung hergestellt wurde, werden die im Basis-DN vorhandenen Inhalte des aktiven Verzeichnisses rechts im Fenster angezeigt.
Apache Directory Studio
Wenn Sie Apache Directory Studio verwenden möchten, stellen Sie eine Verbindung über Stunnel her und verwenden Sie Anmeldedaten (Nutzername und Passwort), die in der Admin-Konsole generiert wurden. Wenn die Anmeldedaten vorhanden sind und stunnel auf dem localhost-Port 1389 überwacht wird, führen Sie die folgenden Schritte aus:
- Klicken Sie auf File > New… (Datei > Neu…).
- Wählen Sie LDAP Browser > LDAP Connection (LDAP-Browser > LDAP-Verbindung) aus.
- Klicken Sie auf Weiter.
- Geben Sie die Verbindungsparameter ein:
Verbindungsname:Wählen Sie einen Namen aus, z. B. Google LDAP.
Hostname:localhost
Port:1389 (oder der stunnel-Listen-/Accept-Port)
Verschlüsselungsmethode:Keine Verschlüsselung (Hinweis: Wenn stunnel remote ausgeführt wird, wird die Verschlüsselung zwischen stunnel und dem Client empfohlen.)
- Klicken Sie auf Weiter.
- Geben Sie die Authentifizierungsparameter ein:
Authentifizierungsmethode:Einfache Authentifizierung
Bind-DN oder Nutzer:Der Nutzername der Anmeldedaten aus der Admin-Konsole
Bind-Passwort:Das Passwort der Anmeldedaten aus der Admin-Konsole
- Klicken Sie auf Weiter.
- Geben Sie den Basis-DN ein.
Dies ist Ihr Domainname im DN-Format (dc=beispiel,dc=de für beispiel.de). - Klicken Sie auf Beenden.
Atlassian Jira
Atlassian Jira führt während der Nutzerauthentifizierung eine Nutzersuche durch, um weitere Informationen zu einem Nutzer zu erhalten. Damit die Nutzerauthentifizierung für diesen LDAP-Client richtig funktioniert, müssen Sie Nutzerinformationen lesen und Gruppeninformationen lesen für alle Organisationseinheiten aktivieren, in denen Nutzeranmeldedaten bestätigen aktiviert ist. Weitere Informationen
Wichtig: Wenn Sie dieser Anleitung folgen, besteht die Gefahr, dass das keyStorePassword für Nutzer und Protokolldateien preisgegeben wird. Treffen Sie Vorkehrungen, um unbefugten Zugriff auf die lokale Shell, das Logfile und die Admin-Konsole zu verhindern. Alternativ zur folgenden Anleitung können Sie die stunnel4-Methode verwenden (siehe Optional: stunnel als Proxy verwenden).
Hinweis:In der folgenden Anleitung wird davon ausgegangen, dass Jira unter /opt/atlassian/jira installiert ist.
So verbinden Sie einen Atlassian Jira-Client mit dem Secure LDAP-Dienst:
- Kopieren Sie das Zertifikat und den Schlüssel auf Ihren Jira-Server. (Dies ist das Zertifikat, das in der Admin-Konsole generiert wird, wenn Sie den LDAP-Client dem Secure LDAP-Dienst hinzufügen.)
Beispiel:
$ scp ldap-client.key user@jira-server:
- Konvertieren Sie das Zertifikat und die Schlüssel in das Schlüsselspeicher-Format von Java. Sie werden während des Vorgangs mehrfach nach Passwörtern gefragt. Der Einfachheit halber sollten Sie ein sicheres Passwort auswählen und es bei allen Eingabeaufforderungen wiederverwenden.
$ openssl pkcs12 -export -out jira-ldap.pkcs12 -in ldap-client.crt -inkey ldap-client.key
$ sudo /opt/atlassian/jira/jre/bin/keytool -v -importkeystore -srckeystore jira-ldap.pkcs12 -srcstoretype PKCS12 -destkeystore /opt/atlassian/jira/jira-ldap.jks -deststoretype JKS
- Konfigurieren Sie Jira so, dass der neu erstellte Schlüsselspeicher verwendet wird. Folgen Sie der Anleitung, um Optionen hinzuzufügen:
"-Djavax.net.ssl.keyStore=/opt/atlassian/jira/jira-ldap.jks -Djavax.net.ssl.keyStorePassword=password"
Unter Linux:- Bearbeiten Sie /opt/atlassian/jira/bin/setenv.sh.
- Suchen Sie die Einstellung „JVM_SUPPORT_RECOMMENDED_ARGS“.
- Fügen Sie „-Djavax.net.ssl.keyStore=/opt/atlassian/jira/jira-ldap.jks -Djavax.net.ssl.keyStorePassword=password“ hinzu und ersetzen Sie „password“ durch das oben ausgewählte Passwort.
- Starten Sie Jira neu.
$ /opt/atlassian/jira/bin/stop-jira.sh
$ /opt/atlassian/jira/bin/start-jira.sh
- Melden Sie sich als Administrator in der Weboberfläche von Jira an.
- Gehen Sie zu Einstellungen > Nutzerverwaltung. Die Einstellungen erreichen Sie über das Zahnradsymbol rechts oben.
- Klicken Sie auf User Directories (Nutzerverzeichnisse).
- Klicken Sie auf Verzeichnis hinzufügen.
- Wählen Sie LDAP als Typ aus.
- Klicken Sie auf Weiter.
- Geben Sie Folgendes ein:
Name
Google Secure LDAP
Directory Type (Verzeichnistyp)
OpenLDAP
Hostname
ldap.google.com
Port
636
Use SSL (SSL verwenden)
Aktiviert
Nutzername
Erstellen Sie in der Google Admin-Konsole einen Nutzernamen und ein Passwort. Weitere Informationen
Passwort
Erstellen Sie in der Google Admin-Konsole einen Nutzernamen und ein Passwort. Eine Anleitung hierfür finden Sie unter Anmeldedaten generieren.
Base DN (Basis-DN)
Ihr Domainname im DN-Format, z. B. dc=beispiel,dc=de für beispiel.de
Additional User DN (Zusätzlicher Nutzer-DN)
Optional. "ou=Users"
Additional Group DN (Zusätzlicher Gruppen-DN)
Optional. „ou=Groups“
LDAP Permissions (LDAP-Berechtigungen)
Schreibgeschützt
Advanced Settings (Erweiterte Einstellungen)
Nicht geändert
User Schema Settings (Einstellungen für das Nutzerschema) >
User Name Attribute (Attribut des Nutzernamens)googleUid
User Schema Settings (Einstellungen für das Nutzerschema) >
User Name RDN Attribute (RDN-Attribut des Nutzernamens)uid
Group Schema Settings (Einstellungen für das Gruppenschema) >
Group Object Class (Objektklasse der Gruppe)groupOfNames
Group Schema Settings (Einstellungen für das Gruppenschema) >
Group Object Class (Objektfilter der Gruppe)(objectClass=groupOfNames)
Membership Schema Settings (Einstellungen für das Mitgliedschaftsschema) >
Group Members Attribute (Attribut der Gruppenmitglieder)member
Membership Schema Settings (Einstellungen für das Mitgliedschaftsschema) >
Use the User Membership Attribute (Attribut der Nutzermitgliedschaft verwenden)Aktiviert - Weisen Sie einer Gruppe eine Rolle zu:
Bevor Atlassian Jira einem Nutzer die Anmeldung erlauben kann, muss dieser Nutzer Mitglied einer Gruppe sein, die Zugriff auf Jira hat.
So weisen Sie einer Gruppe eine Rolle zu:- Öffnen Sie Settings > Applications > Application access (Einstellungen > Anwendungen > Anwendungszugriff).
- Geben Sie im Textfeld Gruppe auswählen den Namen der Google-Gruppe ein, für die Sie den Zugriff auf Jira gewähren möchten.
CloudBees Core/Jenkins
Eine Anleitung zum Verbinden von CloudBees Core mit Secure LDAP finden Sie auf der englischsprachigen Seite Configure CloudBees Core with Google's Cloud Identity Secure LDAP (CloudBees Core mithilfe von Google Cloud Identity Secure LDAP konfigurieren).
FreeRADIUS
Gehen Sie so vor:
- Installieren und konfigurieren Sie FreeRADIUS unter /etc/freeradius/3.0/.
Wenn FreeRADIUS installiert ist, können Sie die LDAP-Konfiguration hinzufügen. Dazu brauchen Sie das Plug-in freeradius-ldap.
$ sudo apt-get install freeradius freeradius-ldap
- Kopieren Sie die Schlüssel- und Zertifikatsdateien des LDAP-Clients in die Verzeichnisse /etc/freeradius/3.0/certs/ldap-client.key bzw. /etc/freeradius/3.0/certs/ldap-client.crt.
$ chown freeradius:freeradius
/etc/freeradius/3.0/certs/ldap-client.*
$ chmod 640 /etc/freeradius/3.0/certs/ldap-client.*
- Aktivieren Sie das LDAP-Modul.
$ cd /etc/freeradius/3.0/mods-enabled/
$ ln -s ../mods-available/ldap ldap
- Bearbeiten Sie /etc/freeradius/3.0/mods-available/ldap.
- ldap->server = 'ldaps://ldap.google.com:636'
- identity = Nutzername aus den Anmeldedaten für die Anwendung
- password = Passwort aus den Anmeldedaten für die Anwendung
- base_dn = 'dc=domain,dc=com'
- tls->start_tls = no
- tls->certificate_file = /etc/freeradius/3.0/certs/ldap-client.cer
- tls->private_key_file = /etc/freeradius/3.0/certs/ldap-client.key
- tls->require_cert = 'allow'
- Kommentieren Sie alle Felder im Breadcrumb-Pfad aus, die den Abschnitt „ldap“ –> „post-auth“ –> „update“ darstellen.
- Bearbeiten Sie /etc/freeradius/3.0/sites-available/default.
Dadurch wird die Verbindung des FreeRadius-Clients geändert. Wenn Sie nicht den Standardclient verwenden, müssen Sie den entsprechenden Client (Inner-Tunnel oder einen benutzerdefinierten Client) aktualisieren, den Sie konfiguriert haben.
- Ändern Sie den Abschnitt authorize, um den folgenden Block unten nach der PAP-Anweisung (Password Authentication Protocol) hinzuzufügen:
if (User-Password) {
update control {
Auth-Type := ldap
}
}
- Aktivieren Sie im Abschnitt authorize LDAP, indem Sie das Minuszeichen davor entfernen.
#
# The ldap module reads passwords from the LDAP database.
ldap
- Ändern Sie den Abschnitt authenticate, indem Sie den Block Auth-Type LDAP so bearbeiten:
# Auth-Type LDAP {
ldap
# }
- Ändern Sie den Abschnitt authenticate, indem Sie den Block Auth-Type PAP so bearbeiten:
Auth-Type PAP {
# pap
ldap
}
- Ändern Sie den Abschnitt authorize, um den folgenden Block unten nach der PAP-Anweisung (Password Authentication Protocol) hinzuzufügen:
GitLab
Eine Anleitung zum Verbinden von GitLab mit Secure LDAP finden Sie auf der englischsprachigen Hilfeseite Google Secure LDAP | Configuring Google LDAP client.
Itopia/Ubuntu
Eine Anleitung zum Verbinden von Itopia/Ubuntu mit Secure LDAP finden Sie auf der Hilfeseite Configuring Google Cloud Identity LDAP on Ubuntu 16.04 for user logins (Google Cloud Identity LDAP unter Ubuntu 16.04 für Nutzeranmeldungen konfigurieren).
Ivanti/LanDesk
Gehen Sie so vor:
- Öffnen Sie auf Ihrem Ivanti-Webserver OpenLDAPAuthenticationConfiguration.xml oder OpenLDAPSSLAuthenticationConfiguration.xml in einem Texteditor in den beiden folgenden Ordnern:
C:\ProgramData\LANDesk\ServiceDesk\servicedesk.Framework und C:\ProgramData\LANDesk\ServiceDesk\servicedesk.WebAccess (wobei servicedesk der Instanzname ist) - Aktualisieren Sie den Wert <Server> auf ldap.google.com.
- Aktualisieren Sie den Wert <Port> auf Port 3268 für Klartext mit aktiviertem StartTLS und auf 3269 für den SSL/TLS-Port. Die Standardwerte sind 389 für den Klartextport und 636 für den SSL/TLS-Port.
- Legen Sie den Wert <TestDN> auf Ihren Domainnamen im DN-Format fest. Beispiel: dc=beispiel,dc=de für beispiel.de.
- Fügen Sie sowohl ..ProgramData\LANDesk\ServiceDesk\ServiceDesk.Framework\tps.config als auch ..ProgramData\LANDesk\ServiceDesk\WebAccess\tps.config die Zeile
<add key="AuthenticationProvider" value="Touchpaper.Integrations.OpenLDAPLogon.OpenLDAPAuthenticationProvider" />
oder die Zeile
<add key="AuthenticationProvider" value="Touchpaper.Integrations.OpenLDAPSSLLogon.OpenLDAPSSLAuthenticationProvider" />
hinzu. - Öffnen Sie im Ivanti Configuration Center die erforderliche Instanz.
- Klicken Sie neben der Anwendung Service Desk Framework auf Edit (Bearbeiten).
Das Dialogfeld Edit Application (Anwendung bearbeiten) für Service Desk Framework wird angezeigt. - Wählen Sie in der Gruppe Configuration parameters (Konfigurationsparameter) aus der Liste Logon policy (Anmelderichtlinien) die Option Explicit only (Nur explizit) aus und klicken Sie dann auf OK.
- Klicken Sie neben der Web Access-Anwendung auf Bearbeiten.
Das Dialogfeld Edit Application (Anwendung bearbeiten) für Web Access wird angezeigt. - Wählen Sie in der Gruppe Konfigurationsparameter in der Liste Anmelderichtlinie die Option Nur explizit aus und klicken Sie dann auf OK.
Verwenden Sie bei der Anmeldung das Netzwerkpasswort des zugehörigen Domainnutzers.
Ausnahmeprotokollierung für die LDAP-Serverauthentifizierung
Wenn Sie Probleme bei der Konfiguration der LDAP-Serverauthentifizierung haben, können Sie die Ausnahme-Protokollierung aktivieren, um das Problem zu identifizieren. Diese Funktion ist standardmäßig nicht aktiviert und sollte auch wieder deaktiviert werden, wenn Sie die Fehlersuche abgeschlossen haben.
So aktivieren Sie das Ausnahme-Logging für die LDAP-Serverauthentifizierung:
- Öffnen Sie die entsprechende Authentifizierungsdatei der Konfiguration (XML-Datei) in einem Texteditor:
DirectoryServiceAuthenticationConfiguration.xml, OpenLDAPAuthenticationConfiguration.xml oder OpenLDAPSSLAuthenticationConfiguration.xml - Ändern Sie die Zeile:
<ShowExceptions>false</ShowExceptions>
in
<ShowExceptions>true</ShowExceptions>
- Speichern Sie die Änderungen.
Ldp.exe (Windows)
Gehen Sie so vor:
- Konvertieren Sie die Zertifikats- und Schlüsseldateien in eine Datei im PKCS12-Format. Geben Sie an der Eingabeaufforderung Folgendes ein:
Wenn Sie macOS oder Linux verwenden, geben Sie die folgenden Befehle ein:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
Geben Sie ein Passwort zum Verschlüsseln der Ausgabedatei ein.
In Windows:
$ certutil -mergepfx ldap-client.crt ldap-client.p12
Wichtig:Die beiden Dateien (<CERT_FILE>.crt und <CERT_FILE>.key) müssen sich im selben Verzeichnis befinden. Achten Sie außerdem darauf, dass sowohl key als auch crt denselben Namen haben (mit einer anderen Erweiterung). In diesem Beispiel verwenden wir die Namen ldap-client.crt und ldap-client.key. - Gehen Sie zum Steuerfeld.
- Suchen Sie im Suchfeld nach „Zertifikat“ und klicken Sie auf Nutzerzertifikate verwalten.
- Gehen Sie zu Action > All Tasks > Import… (Aktion > Alle Aufgaben > Importieren…).
- Wählen Sie Current User (Aktueller Nutzer) aus und klicken Sie auf Next (Weiter).
- Klicken Sie auf Browse… (Durchsuchen…).
- Wählen Sie rechts unten im Dialogfeld über die Drop-down-Liste file type (Dateityp) die Option Personal Information Exchange (*.pfx;*.p12) (Austausch personenbezogener Daten (*.pfx;*.p12)) aus.
- Wählen Sie die Datei ldap-client.p12 aus Schritt 2 aus, klicken Sie auf Öffnen und dann auf Weiter.
- Geben Sie das Passwort aus Schritt 2 ein und klicken Sie auf Next (Weiter).
- Wählen Sie den Zertifikatspeicher Persönlich aus, klicken Sie auf Weiter und dann auf Fertigstellen.
- Führen Sie Ldp.exe aus.
- Klicken Sie auf Verbindung > Verbinden…
- Geben Sie die folgenden Verbindungsdetails ein:
Server:ldap.google.com
Port:636
Verbindungslos:Nicht aktiviert
SSL:Aktiviert
- Klicken Sie auf OK.
- Gehen Sie zu View > Tree (Ansicht > Baum).
- Geben Sie den Basis-DN ein. Dies ist Ihr Domainname im DN-Format, z. B. dc=beispiel,dc=de für beispiel.de.
- Klicken Sie auf OK.
- Wenn die Verbindung erfolgreich ist, werden im rechten Bereich von LDP.exe die Active Directory-Inhalte angezeigt, z. B. alle Attribute, die im Basis-DN vorhanden sind.
Netgate/pfSense
Eine Anleitung zum Verbinden von Netgate/pfSense mit Secure LDAP finden Sie auf der Hilfeseite Google Cloud Identity als Authentifizierungsquelle konfigurieren.
OpenLDAP/ldapsearch (Linux)
Verwenden Sie in der Befehlszeile den OpenLDAP-Befehl ldapsearch, um auf Ihr LDAP-Verzeichnis zuzugreifen.
Angenommen, Ihre Clientzertifikats- und Schlüsseldateien sind ldap-client.crt und ldap-client.key, Ihre Domain ist beispiel.de und der Nutzername ist jsmith:
$ LDAPTLS_CERT=ldap-client.crt LDAPTLS_KEY=ldap-client.key ldapsearch -H ldaps://ldap.google.com -b dc=example,dc=com '(uid=jsmith)'
Dadurch werden die entsprechenden Umgebungsvariablen so festgelegt, dass sie auf die Clientschlüssel verweisen. Sie können die anderen ldapsearch-Optionen z. B. durch die Filter und angeforderten Attribute ersetzen. Weitere Informationen finden Sie auf den ldapsearch-Manpages („man ldapsearch“).
ldapsearch (macOS)
Gehen Sie so vor:
- Konvertieren Sie die Zertifikats- und Schlüsseldateien in eine Datei im PKCS12-Format. Geben Sie an der Eingabeaufforderung Folgendes ein:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
Geben Sie Ihr Passwort ein, um die Ausgabedatei zu verschlüsseln.
- Klicken Sie rechts oben in der Menüleiste auf
und geben Sie Schlüsselbundzugriff ein.
- Öffnen Sie die App „Schlüsselbundverwaltung“ und klicken Sie in der Liste auf der linken Seite auf System.
- Klicken Sie links oben in der Menüleiste auf Datei und wählen Sie Objekte importieren aus.
- Suchen Sie nach dem Speicherort der generierten Datei ldap-client.p12, wählen Sie sie aus und klicken Sie auf Öffnen.
Geben Sie Ihr Passwort ein, wenn Sie dazu aufgefordert werden.
In der Liste der System-Keychain-Zertifikate sollte jetzt ein Zertifikat mit dem Namen LDAP Client angezeigt werden. - Klicken Sie auf den Pfeil neben dem Zertifikat des LDAP-Clients. Darunter wird ein privater Schlüssel angezeigt.
- Klicken Sie doppelt auf den privaten Schlüssel.
- Wählen Sie im Dialogfeld den Tab Zugriffssteuerung aus und klicken Sie links unten auf +.
-
Geben Sie im geöffneten Fenster Befehl + Umschalttaste + G ein, um ein neues Fenster zu öffnen, und ersetzen Sie dann den vorhandenen Text durch /usr/bin/ldapsearch.
-
Klicken Sie auf Go (Öffnen).
Dadurch wird ein Fenster geöffnet, in dem „ldapsearch“ markiert ist. -
Klicken Sie auf Hinzufügen.
-
Klicken Sie auf Änderungen speichern und geben Sie Ihr Passwort ein, wenn Sie dazu aufgefordert werden.
Sie können jetzt über die Befehlszeile mit dem OpenLDAP-Befehl „ldapsearch“ auf Ihr LDAP-Verzeichnis zugreifen.
-
Angenommen, die Datei ldap-client.p12, die Sie zuvor in den Schlüsselbund importiert haben, hat den Namen LDAP Client, Ihre Domain ist beispiel.de und der Nutzername ist jsmith. Geben Sie Folgendes ein:
$ LDAPTLS_IDENTITY="LDAP Client" ldapsearch -H ldaps://ldap.google.com:636 -b dc=example,dc=com '(uid=jsmith)'
Dadurch werden die relevanten Umgebungsvariablen so festgelegt, dass sie auf das importierte Clientzertifikat verweisen. Sie können die anderen ldapsearch-Optionen z. B. durch die Filter und angeforderten Attribute ersetzen. Weitere Informationen finden Sie auch im Handbuch zu ldapsearch (man ldapsearch).
OpenVPN (Community-Version)
Gehen Sie so vor:
- Installieren und konfigurieren Sie OpenVPN. Falls Sie dies bereits getan haben, öffnen Sie die Seite „Settings“ (Einstellungen) in OpenVPN.
Die allgemeine Konfiguration eines VPN wird in diesem Hilfeartikel nicht beschrieben. Sobald ein VPN konfiguriert ist, können Sie die Nutzerauthentifizierung und -autorisierung über LDAP hinzufügen. Insbesondere müssen Sie das Plug-in openvpn-auth-ldap installieren.
$ sudo apt-get install openvpn openvpn-auth-ldap
- Kopieren Sie die LDAP-Clientschlüssel- und Zertifikatsdateien nach /etc/openvpn/ldap-client.key und /etc/openvpn/ldap-client.crt.
- Erstellen Sie eine Datei mit dem Namen /etc/openvpn/auth-ldap.conf mit folgendem Inhalt (vorausgesetzt, beispiel.de ist der Domainname):
<LDAP>
URL ldaps://ldap.google.com:636 #
Timeout 15
TLSEnable false
TLSCACertDir /etc/ssl/certs
TLSCertFile /etc/openvpn/ldap-client.crt
TLSKeyFile /etc/openvpn/ldap-client.key
</LDAP>
<Authorization>
BaseDN "dc=example,dc=com"
SearchFilter "(uid=%u)" # (or choose your own LDAP filter for users)
RequireGroup false
</Authorization>
- Bearbeiten Sie die OpenVPN-Konfigurationsdatei, häufig /etc/openvpn/server.conf oder ähnlich benannt. Fügen Sie unten in der Datei Folgendes hinzu:
plugin /usr/lib/openvpn/openvpn-auth-ldap.so /etc/openvpn/auth-ldap.conf
verify-client-cert optional
- Starten Sie den OpenVPN-Server neu.
$ sudo systemctl restart openvpn@server
- Konfigurieren Sie die VPN-Clients so, dass die Nutzernamen und Passwörter der Nutzer verwendet werden. Fügen Sie beispielsweise in einer OpenVPN-Clientkonfiguration auth-user-pass am Ende der OpenVPN-Clientkonfigurationsdatei hinzu und starten Sie den OpenVPN-Client:
$ openvpn --config /path/to/client.conf
- Folgen Sie der Anleitung zum Verwenden von Stunnel als Proxy.
OpenVPN Access Server (kommerzielle Version)
Eine Anleitung zum Verbinden von OpenVPN Access Server mit Secure LDAP finden Sie auf der Hilfeseite Google Secure LDAP (in englischer Sprache).
PaperCut MF und NG
Eine Anleitung zum Verbinden von PaperCut mit Secure LDAP finden Sie auf der Hilfeseite How to sync and authenticate Google Workspace and Google Cloud Identity users in PaperCut (Google Workspace- und Google Cloud Identity-Nutzer in PaperCut synchronisieren und authentifizieren).
Puppet Enterprise
Eine Anleitung zum Verbinden von Puppet Enterprise mit Secure LDAP finden Sie auf der englischsprachigen GitHub-Seite Google Cloud Directory for PE (Google Cloud Directory für Puppet Enterprise).
Softerra LDAP-Browser
Wichtig:Bevor Sie beginnen, müssen Sie Softerra LDAP Browser mit der Versionsnummer 4.5 (4.5.19808.0) oder höher installiert haben. Weitere Informationen finden Sie unter LDAP Browser 4.5.
Gehen Sie so vor:
- Konvertieren Sie die Zertifikats- und Schlüsseldateien in eine Datei im PKCS12-Format. Geben Sie an der Eingabeaufforderung Folgendes ein:
Wenn Sie macOS oder Linux verwenden, geben Sie die folgenden Befehle ein:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
Geben Sie ein Passwort zum Verschlüsseln der Ausgabedatei ein.
In Windows:
$ certutil -mergepfx ldap-client.crt ldap-client.p12
Wichtig:Die beiden Dateien (<CERT_FILE>.crt und <CERT_FILE>.key) müssen sich im selben Verzeichnis befinden. Achten Sie außerdem darauf, dass sowohl key als auch crt denselben Namen haben (mit einer anderen Erweiterung). In diesem Beispiel verwenden wir die Namen ldap-client.crt und ldap-client.key. - Installieren Sie das Schlüsselpaar im Softerra LDAP-Browser.
- Gehen Sie zu Tools > Certificate Manager (Tools > Zertifikatmanager).
- Klicken Sie auf Import… (Importieren).
- Klicken Sie auf Next (Weiter).
- Klicken Sie auf Browse… (Durchsuchen…).
- Wählen Sie im Drop-down-Menü Dateityp rechts unten im Dialogfeld die Option Personal Information Exchange (*.pfx;*.p12) aus.
- Wählen Sie die im Schritt 2 genannte Datei ldap-client.p12 aus.
- Klicken Sie auf Open (Öffnen) und dann auf Next (Weiter).
- Geben Sie das Passwort aus Schritt 2 oben ein und klicken Sie auf Next (Weiter).
- Wählen Sie den Zertifikatspeicher Persönlich aus.
- Klicken Sie auf Weiter.
- Klicken Sie auf Beenden.
- Fügen Sie ein Serverprofil hinzu.
- Rufen Sie Datei > Neu > Neues Profil… auf.
- Geben Sie einen Namen für das Profil ein, z. B. Google LDAP.
- Klicken Sie auf Weiter.
Geben Sie Folgendes ein:
Host:ldap.google.com
Port:636
Base DN:Ihr Domainname im DN-Format. (z. B. dc=beispiel,dc=de für beispiel.de)
Use secure connection (SSL) (Sichere Verbindung (SSL) verwenden):aktiviert
- Klicken Sie auf Weiter.
- Wählen Sie External (SSL Certificate) (Extern (SSL-Zertifikat)) aus.
- Klicken Sie auf Weiter.
- Klicken Sie auf Beenden.
Sophos Mobile
Eine Anleitung zum Verbinden von Sophos Mobile mit Secure LDAP finden Sie auf der Seite Connecting Sophos Mobile to Google Cloud Identity/Google Cloud Directory using Secure LDAP (Sophos Mobile mithilfe von Secure LDAP mit Google Cloud Identity/Google Cloud Directory verbinden).
Splunk
Wenn Sie Splunk mit Secure LDAP verbinden möchten, benötigen Sie die Splunk-Version 8.1.4 oder neuer. Wenn Sie eine ältere Splunk-Version – wie z. B. Version 8.1.3 – verwenden, werden möglicherweise übermäßig viele LDAP-Anfragen an den LDAP-Server gesendet, sodass Ihr Kontingent schnell erschöpft sein könnte. Weitere Informationen zu den Problemen mit Splunk-Version 8.1.3 finden Sie in diesem englischsprachigen Hilfeartikel.
Gehen Sie so vor:
- Kopieren Sie den LDAP-Clientschlüssel und die Zertifikatsdateien nach /home/splunk/splunkadmin/etc/openldap/certs/ldap-client.key und /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.crt.
$ cat /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.crt /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.key > /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
$ sudo chown $(splunkuser):$(splunkuser) /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.*
$ sudo chmod 644 /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.*
- Fügen Sie der Datei ldap.conf die folgenden Konfigurationsdateien hinzu:
ssl start_tls
TLS_REQCERT never
TLS_CERT /home/splunkadmin/splunk/etc/openldap/certs/ldap.pem
TLS_KEY /home/splunkadmin/splunk/etc/openldap/certs/ldap.pem - Fügen Sie die folgenden Konfigurationen in die Datei /home/splunkadmin/.ldaprc des Nutzers ein:
TLS_CERT /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
TLS_KEY /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
- Fügen Sie die LDAP-Strategie über die Splunk-Web-UI hinzu. Geben Sie die folgenden Informationen ein und klicken Sie auf Speichern:
|
Name |
Google Secure LDAP |
|---|---|
|
Host |
ldap.google.com |
|
Port |
636 |
|
SSL aktiviert |
Aktiviert |
|
Verbindungsreihenfolge |
1 |
|
Bind DN |
Geben Sie die Anmeldedaten ein, die Sie in der Google Admin-Konsole generiert haben. |
|
DN-Passwort binden |
Geben Sie die Anmeldedaten ein, die Sie in der Google Admin-Konsole generiert haben. |
|
Base DN (Basis-DN) |
Ihr Domainname im DN-Format (z. B. dc=beispiel,dc=de für die Domain beispiel.de) |
|
Filter für Nutzerbasis |
Geben Sie den Nutzerbasisfilter für die Objektklasse ein, nach der Sie die Nutzer filtern möchten. |
|
Attribut „Nutzername“ |
uid |
|
Attribut „Echter Name“ |
displayname |
|
E‑Mail-Attribut |
|
|
Attribut für die Gruppenzuordnung |
dn |
|
Basis-DN für Gruppe |
Ihr Domainname im DN-Format, z. B. ou=Gruppen,dc=beispiel,dc=de für die Domain beispiel.de |
|
Suchfilter für statische Gruppen |
Geben Sie den statischen Gruppensuchfilter für die Objektklasse ein, nach der Sie die statischen Gruppen filtern möchten. |
|
Attribut für Gruppennamen |
cn |
|
Statisches Mitgliedsattribut |
member |
SSSD (Red Hat Enterprise und CentOS)
SSSD führt eine Nutzersuche durch, um weitere Informationen für die Nutzerauthentifizierung zu erhalten. Damit die Nutzerauthentifizierung für diesen LDAP-Client richtig funktioniert, müssen Sie Nutzerinformationen lesen und Gruppeninformationen lesen für alle Organisationseinheiten aktivieren, in denen Nutzeranmeldedaten bestätigen aktiviert ist. Weitere Informationen
So verbinden Sie einen SSSD-Client unter Red Hat 8 oder CentOS 8 mit dem Secure LDAP-Dienst:
- Fügen Sie den SSSD-Client dem Secure LDAP-Dienst hinzu:
- Gehen Sie in der Admin-Konsole zu Apps > LDAP > CLIENT HINZUFÜGEN.
Achten Sie darauf, dass Sie sich mit Ihrem Geschäftskonto und nicht mit Ihrem privaten Gmail-Konto anmelden. - Geben Sie die Clientdetails ein und klicken Sie auf WEITER.
- Konfigurieren Sie die Zugriffsberechtigungen:
Nutzeranmeldedaten überprüfen – Gesamte Domain
Nutzerinformationen lesen – Gesamte Domain
Gruppeninformationen lesen –Ein - Klicken Sie auf LDAP-CLIENT HINZUFÜGEN.
- Laden Sie das generierte Zertifikat herunter.
- Klicken Sie auf WEITER ZU CLIENTDETAILS.
- Ändern Sie den Dienststatus auf EIN.
- Gehen Sie in der Admin-Konsole zu Apps > LDAP > CLIENT HINZUFÜGEN.
- Abhängigkeiten installieren:
dnf install openldap-clients sssd-ldap
install -d --mode=700 --owner=sssd --group=root /etc/sssd/ldap
Entpacken Sie die Zertifikats-ZIP-Datei und kopieren Sie die CRT- und KEY-Dateien nach /etc/sssd/ldap.
- Optional: Testen Sie ldapsearch:
LDAPTLS_REQCERT=never \
LDAPTLS_KEY=Google.key \
LDAPTLS_CERT=Google.crt \
ldapsearch -H ldaps://ldap.google.com:636/ \
-b dc=example,dc=com \
-D usertoverify@example.com \
-W \
'(mail=usertoverify@example.com)' \
mail dn
Geben Sie das Google-Passwort des Nutzers ein, wenn Sie dazu aufgefordert werden.
Hinweis: Dem Nutzer muss eine Google Workspace Enterprise- oder Cloud Identity Premium-Lizenz zugewiesen sein. - Erstellen Sie die Datei
/etc/sssd/sssd.confmit folgendem Inhalt:
[sssd]
services = nss, pam
domains = example.com[domain/example.com]
ldap_tls_cert = /etc/sssd/ldap/Google.crt
ldap_tls_key = /etc/sssd/ldap/Google.key
ldap_tls_reqcert = never
ldap_uri = ldaps://ldap.google.com
ldap_search_base = dc=example,dc=com
id_provider = ldap
auth_provider = ldap
ldap_schema = rfc2307bis
ldap_user_uuid = entryUUID - Aktualisieren Sie die Berechtigungen und SELinux-Labels:
chown 0:0 /etc/sssd/sssd.conf /etc/sssd/ldap/*
chmod 600 /etc/sssd/sssd.conf /etc/sssd/ldap/*
restorecon -FRv /etc/sssd
- SSSD neu starten:
systemctl restart sssd
- Führen Sie einen Test aus:
ssh an Server:ssh -l user@example.com {HOSTNAME}
Fehlerbehebung
- SSSD-Version prüfen (muss mindestens 1.15.2 sein):
# sssd --version
2.2.3
-
Bei RHEL/CentOS (oder jeder Distribution mit SELinux-Erzwingung) müssen die SSSD-Konfigurationsdateien sowie die Zertifikatsdatei und der Schlüssel in einem Verzeichnis gespeichert sein, auf das die Rolle „sssd_conf_t“ zugreifen kann:
# egrep "object_r:sssd_conf_t" /etc/selinux/targeted/contexts/files/file_contextsSuchen Sie in /var/log/audit/audit.log nach AVC-Ablehnungsnachrichten.
- Prüfen Sie, ob in /etc/nsswitch.conf „sss“ für die Entitäten „passwd“, „shadow“, „group“ und „netgroup“ angegeben ist:
passwd: files sss
shadow: files sss
group: files sss
netgroup: files sss
Hier werden LDAP-Nutzer durch lokale Dateien überschrieben.
- Prüfen Sie /var/log/sssd.conf auf Konfigurationsfehler:
Beispiel:
[sssd] [sss_ini_add_snippets] (0x0020): Config merge error: File /etc/sssd/sssd.conf did not pass access check. Skipping.Aktion: Sie müssen die .conf-Datei mit dem Befehl „chmod 600“ ändern.
Beispiel:
[sssd] [sss_ini_call_validators] (0x0020): [rule/allowed_domain_options]: Attribute 'ldap_groups_use_matching_rule_in_chain' is not allowed in section 'domain/{DOMAIN}'. Check for typos.[sssd] [sss_ini_call_validators] (0x0020): [rule/allowed_domain_options]: Attribute 'ldap_initgroups_use_matching_rule_in_chain' is not allowed in section 'domain/{DOMAIN}'. Check for typos.
Aktion: Entfernen Sie die nicht unterstützten Gruppenübereinstimmungen von LDAP-Erweiterungen aus sssd.conf.
-
Überprüfen Sie /var/log/sssd_{DOMAIN}.log auf LDAP/network/auth-Fehler.
Beispiel:[sssd[be[beispiel.de]]] [sss_ldap_init_sys_connect_done] (0x0020): ldap_install_tls failed: [Connect error] [error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed (self signed certificate)]
Aktion: Sie müssen „ldap_tls_reqcert = never“ zu sssd.conf hinzufügen.
Um die Ausführlichkeit von Fehlern zu erhöhen, fügen Sie „debug_level = 9“ in sssd.conf im Abschnitt „Domain“ hinzu und starten Sie „sssd“ neu.
SSSD (andere Linux-Distributionen)
SSSD führt eine Nutzersuche durch, um weitere Informationen für die Nutzerauthentifizierung zu erhalten. Damit die Nutzerauthentifizierung für diesen LDAP-Client richtig funktioniert, müssen Sie Nutzerinformationen lesen und Gruppeninformationen lesen für alle Organisationseinheiten aktivieren, in denen Nutzeranmeldedaten bestätigen aktiviert ist. Weitere Informationen
So verbinden Sie einen SSSD-Client mit dem Secure LDAP-Dienst:
- Installieren Sie SSSD-Version >= 1.15.2.
$ sudo apt-get install sssd
- Angenommen, Ihre Clientzertifikats- und Schlüsseldateien heißen /var/ldap-client.crt und /var/ldap-client.key und Ihre Domain ist beispiel.de. Bearbeiten Sie /etc/sssd/sssd.conf mit einer Konfiguration wie:
[sssd]
services = nss, pam
domains = beispiel.de[domain/example.com]
ldap_tls_cert = /var/ldap-client.crt
ldap_tls_key = /var/ldap-client.key
ldap_uri = ldaps://ldap.google.com
ldap_search_base = dc=example,dc=com
id_provider = ldap
auth_provider = ldap
ldap_schema = rfc2307bis
ldap_user_uuid = entryUUID
ldap_groups_use_matching_rule_in_chain = true
ldap_initgroups_use_matching_rule_in_chain = true
-
Ändern Sie die Eigentümerschaft und Berechtigung der Konfigurationsdatei:
$ sudo chown root:root /etc/sssd/sssd.conf
$ sudo chmod 600 /etc/sssd/sssd.conf -
SSSD neu starten:
$ sudo service sssd restart
Tipp:Wenn Sie das SSSD-Modul auf Linux-Computern ohne externe IP-Adressen in Google Compute Engine verwenden, können Sie trotzdem eine Verbindung zum Secure LDAP-Dienst herstellen, sofern Sie den internen Zugriff auf Google-Dienste aktiviert haben. Weitere Informationen finden Sie unter Privaten Google-Zugriff konfigurieren.
macOS
Gehen Sie wie unten beschrieben vor, um den macOS-Client für die Authentifizierung des Nutzerkontos über Secure LDAP zu verbinden.
Systemanforderungen
- Die macOS-Version muss Catalina Version 10.15.4 oder höher sein.
- Für Schritt 1 der Vorbereitungsphase ist eine Google Super Admin-Nutzer-ID erforderlich.
- Sie benötigen lokale Administratorberechtigungen, um diese Konfiguration auszuführen.
Inhalt:
Die Anleitungen in diesem Abschnitt zeigen, wie Sie die macOS-Authentifizierung mit Secure LDAP manuell einrichten und testen.
Schritt 1: macOS als LDAP-Client in der Admin-Konsole einrichten
Eine Anleitung finden Sie unter LDAP-Clients hinzufügen oder in dieser Secure LDAP-Demo. Außerdem wird während dieses Vorgangs ein automatisch generiertes TLS-Clientzertifikat heruntergeladen.
Schritt 2: Zertifikat in den System-Schlüsselbund importieren
- Kopieren Sie das Zertifikat (die in Schritt 1 heruntergeladene ZIP-Datei) und den Schlüssel auf den macOS-Computer.
Tipp:Entpacken Sie die Datei, um die Zertifikats- und Schlüsseldateien zu finden. - Importieren Sie das Schlüsselpaar in den Systemschlüsselbund:
-
Konvertieren Sie den Schlüssel und das Zertifikat in eine PKCS 12-Datei (p12). Führen Sie im Terminal den folgenden Befehl aus:
openssl pkcs12 -export -out ldap-client.p12 -in ldap-client.crt -inkey ldap-client.key
Tipp:Notieren Sie sich den Namen der .p12-Datei.
Sie werden aufgefordert, ein Passwort einzugeben. Geben Sie ein Passwort ein, mit dem die P12-Datei verschlüsselt werden soll. -
Öffnen Sie die Anwendung Schlüsselbundverwaltung.
-
Klicken Sie auf den System-Schlüsselbund.
-
Klicken Sie auf Datei > Objekte importieren.
-
Wählen Sie die oben erstellte Datei ldap-client.p12 aus.
-
Wenn Sie dazu aufgefordert werden, geben Sie das Administratorpasswort ein, um Änderungen am Systemschlüsselbund zu ermöglichen.
-
Geben Sie das Passwort ein, das Sie oben erstellt haben, um die P12-Datei zu entschlüsseln.
Hinweis:In der Liste der Schlüssel sollte ein neues Zertifikat mit dem zugehörigen privaten Schlüssel angezeigt werden. Es hat unter Umständen den Namen LDAP-Client. Notieren Sie sich den Namen des Zertifikats für den nächsten Schritt unten.
- Folgen Sie Schritt 6 im Abschnitt ldapsearch (macOS) in diesem Artikel, um die Zugriffssteuerung für den privaten Schlüssel einzurichten, um die unten angegebenen Apps hinzuzufügen. Wenn der private Schlüssel nicht in der Kategorie Alle Elemente angezeigt wird, wechseln Sie zur Kategorie Meine Zertifikate und suchen Sie den richtigen Eintrag für den privaten Schlüssel, indem Sie das entsprechende Zertifikat maximieren.
Die ldapsearch-App, wie in der Anleitung beschrieben, ist nur für die Fehlerbehebung relevant und nicht für andere Zwecke. Sie wird in der Regel entfernt, bevor Nutzern Zugriff auf macOS gewährt wird.
Die folgenden drei Apps müssen der Zugriffssteuerungsliste hinzugefügt werden:
/System/Library/CoreServices/Applications/Directory Utility
/usr/libexec/opendirectoryd
/usr/bin/dscl
-
-
Fügen Sie der Datei /etc/openldap/ldap.conf eine Zeile hinzu und achten Sie darauf, dass „LDAP Client“ genau dem Zertifikatsnamen entspricht, der nach dem Import der .p12-Datei in der macOS-Anwendung „Schlüsselbundverwaltung“ angezeigt wird. Der Name stammt aus dem allgemeinen Namen des X.509-Antragstellers des generierten Zertifikats:
sudo bash -c 'echo -e "TLS_IDENTITY\tLDAP Client" >> /etc/openldap/ldap.conf'
Schritt 3: Gerät zur Authentifizierung auf das Google-Verzeichnis verweisen
Öffnen Sie die Anwendung Directory Utility, um einen neuen LDAP-Verzeichnisbaumknoten zu erstellen:
- Klicken Sie auf das Schloss, um Änderungen vorzunehmen, und geben Sie Ihr Passwort ein.
- Wählen Sie LDAPv3 aus und klicken Sie auf das Stiftsymbol, um die Einstellungen zu bearbeiten.
- Klicken Sie auf Neu.
- Geben Sie als Servername ldap.google.com ein, wählen Sie Mit SSL verschlüsseln aus und klicken Sie auf Manuell.
- Wählen Sie den neuen Servernamen aus und klicken Sie auf Edit… (Bearbeiten…).
- Geben Sie einen aussagekräftigen Namen für die Konfiguration ein, z. B. Google Secure LDAP.
- Wählen Sie Mit SSL verschlüsseln aus und prüfen Sie, ob der Port auf 636 festgelegt ist.
- Wechseln Sie zum Tab Search & Mappings (Suche und Zuordnungen).
- Wählen Sie in der Drop-down-Liste Auf diesen LDAPv3-Server zugreifen mit die Option RFC2307 aus.
- Wenn Sie dazu aufgefordert werden, geben Sie die domainspezifischen Informationen bei Search Base Suffix (Suchbasissuffix) ein. Geben Sie beispielsweise
dc=zomato,dc=comfür den Domainnamen zomato.com ein. - Klicken Sie auf OK.
- Konfigurieren Sie Attribute unter dem Datensatztyp Nutzer:
- Wählen Sie im Abschnitt Record Types and Attributes (Eintragstypen und Attribute) die Option Users (Nutzer) aus und klicken Sie auf den Button +.
- Wählen Sie im Pop-up-Fenster Attributtypen und dann GeneratedUID aus. Klicken Sie auf OK, um das Pop-up-Fenster zu schließen.
GeneratedUID sollte unter „Nutzer“ angezeigt werden, nachdem der Bereich maximiert wurde.
- Klicken Sie auf die GeneratedUID und dann im Feld rechts auf das Symbol „+“.
- Geben Sie apple-generateduid in das Textfeld ein und klicken Sie auf Eingabe.
- Klicken Sie unter dem Knoten Users auf das Attribut NFSHomeDirectory.
- Aktualisieren Sie auf dem Bildschirm rechts den Wert für dieses Attribut auf
#/Users/$uid$. - Klicken Sie auf OK und geben Sie Ihr Passwort ein, um die Änderungen zu speichern.
- Konfigurieren Sie im Fenster Directory Utility (Verzeichnisdienstprogramm) die neue LDAP-Konfiguration:
- Rufen Sie den Tab Suchrichtlinie auf.
- Klicken Sie auf das Schloss, um Änderungen vorzunehmen, und geben Sie das Passwort des aktuellen Nutzers ein, wenn Sie dazu aufgefordert werden.
- Ändern Sie die Drop-down-Option von Suchpfad in Benutzerdefinierter Pfad.
- Öffnen Sie den Tab Authentifizierung und klicken Sie auf das Symbol +.
- Wählen Sie
/LDAPv3/ldap.google.comaus der Liste „Verzeichnisdomains“ aus und klicken Sie auf Hinzufügen. - Klicken Sie auf den Button Übernehmen und geben Sie bei Aufforderung Ihr Administratorpasswort ein.
- Führen Sie die folgenden vier Befehle aus, um die Authentifizierungsmechanismen DIGEST-MD5, CRAM-MD5, NTLM und GSSAPI zu deaktivieren. macOS verwendet Simple Bind zur Authentifizierung über den Google Secure LDAP-Dienst:
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string DIGEST-MD5" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string CRAM-MD5" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string NTLM" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
sudo /usr/libexec/PlistBuddy -c "add ':module options:ldap:Denied SASL Methods:' string GSSAPI" /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist
- Starten Sie neu, um die OpenDirectory-Konfiguration zu aktualisieren.
Schritt 4: Mobiles Konto erstellen (ermöglicht die Offlineanmeldung)
Jeder Google Workspace- oder Cloud Identity-Nutzer kann sich mit seinem Nutzernamen und Passwort in einem Netzwerkkonto (Google-Konto) anmelden. Für diesen Anmeldevorgang ist eine Netzwerkverbindung erforderlich. Wenn sich ein Nutzer mit und ohne Netzwerkverbindung anmelden muss, kann ein mobiles Konto erstellt werden. Mit einem mobilen Konto können Sie sich mit dem Nutzernamen und Passwort Ihres Netzwerkkontos (Google-Konto) anmelden, unabhängig davon, ob Sie mit dem Netzwerk verbunden sind. Weitere Informationen finden Sie unter Mobile Konten auf dem Mac erstellen und konfigurieren.
So erstellen Sie ein mobiles Konto für Secure LDAP-Nutzer:
-
Führen Sie den folgenden Befehl aus, um eine Verbindung zum Secure LDAP-Server herzustellen und einen Home-Pfad und ein oder mehrere mobile Konten einzurichten:
sudo /System/Library/CoreServices/ManagedClient.app/Contents/Resources/createmobileaccount -n $uid -v
Tipp:Ersetzen Sie $uid durch den Nutzernamen der E-Mail-Adresse, die mit dem Google-Konto des Nutzers verknüpft ist. Beispiel: jschmidt ist der Nutzername für jschmidt@solarmora.com. -
Geben Sie bei Aufforderung den SecureToken-Administratornutzernamen und dann Ihr Passwort ein. Dadurch wird $uid in FileVault eingefügt. Dies ist erforderlich, wenn das macOS-Laufwerk verschlüsselt ist.
Schritt 5 (optional): Anmeldebildschirm festlegen
- Klicken Sie unten links auf Systemeinstellungen > Nutzer & Gruppen > Anmeldeoptionen.
- Geben Sie Ihre Administratoranmeldedaten ein.
- Ändern Sie Anmeldefenster anzeigen als in Name und Passwort.
Schritt 6: Gerät neu starten und anmelden
- Überprüfen Sie, ob das Gerät mit dem Internet verbunden ist. Wenn Sie keine Internetverbindung haben, funktioniert die Anmeldung für den Secure LDAP-Nutzer nicht.
Hinweis:Eine Internetverbindung ist nur für die erste Anmeldung erforderlich. Alle weiteren Anmeldungen sind ohne Internetzugang möglich. - Melden Sie sich auf dem Gerät mit dem Nutzerkonto an, das für die Authentifizierung mit Secure LDAP konfiguriert ist.
Bei der Anleitung in diesem Abschnitt geht es hauptsächlich um die Automatisierung der Gerätekonfiguration für Ihre Nutzer. Führen Sie die Schritte 1 und 2 unten auf demselben macOS-Gerät aus, auf dem Sie die manuelle Konfiguration in der Vorbereitungsphase abgeschlossen haben.
Schritt 1: Mac-Profil mit Zertifikat mit Apple Configurator 2 erstellen
- Installieren Sie auf dem Computer, auf dem Sie die macOS-Authentifizierung mit Secure LDAP manuell konfiguriert haben, Apple Configurator 2.
- Öffnen Sie Apple Configurator 2. Erstellen Sie ein neues Profil und klicken Sie im Bereich „Certificate“ (Zertifikat) auf „Configure“ (Konfigurieren). Importieren Sie die zuvor generierte P12-Datei.
Hinweis:Für diese P12-Datei muss ein Passwort festgelegt sein. Geben Sie dieses Passwort im Bereich „Password“ (Passwort) des Zertifikats ein.
- Speichern Sie das Profil.
- Wenn Sie ein Gerät mit einem M1- oder M2-Prozessor verwenden, überspringen Sie diesen Schritt und fahren Sie mit Schritt 5 fort. ) Öffnen Sie dieses Profil in einem beliebigen Texteditor und fügen Sie die folgenden Zeilen in das erste <dict>-Tag ein:
<key>PayloadScope</key>
<string>System</string>
Das wird hinzugefügt, da Apple Configurator noch keine Profile für macOS unterstützt.
- Fügen Sie im zweiten <dict>-Tag parallel zu den Zertifikatsdaten die folgenden Zeilen ein:
<key>AllowAllAppsAccess</key>
<true/>
Dadurch kann das Zertifikat von allen Anwendungen aufgerufen werden.
Schritt 2: Verzeichniskonfigurationsdatei (PLIST) in XML konvertieren
In diesem Schritt extrahieren Sie alle manuellen Konfigurationen, die Sie in Schritt 3 der Vorbereitungsphase vorgenommen haben, in eine XML-Datei. Mit dieser Datei und dem in Schritt 1 erstellten Mac-Profil können Sie andere macOS-Geräte automatisch konfigurieren.
- Kopieren Sie /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist auf Ihren Computer oder in einen anderen Ordner.
- Konvertieren Sie die Datei in XML, damit Sie sie in einem beliebigen Texteditor überprüfen können. Führen Sie im Terminal den folgenden Befehl aus:
sudo plutil -convert xml1 <path>/ldap.google.com.plist
Sie können auf die Datei als<path>/ldap.google.com.plistzugreifen.
- Ändern Sie die Berechtigung der oben genannten Datei, sodass Sie die XML-Datei öffnen können. Sie darf nicht leer sein.
Schritt 3: Python-Script erstellen, um die Konfiguration auf Endnutzergeräten zu automatisieren
Kopieren Sie das folgende Python-Script und speichern Sie es als Python-Datei (PY-Datei).
Hinweis:Dieses Beispielskript ist für die Kompatibilität mit Python 3.10.x konzipiert. Dieses Skript wird ohne Mängelgewähr bereitgestellt. Google bietet jedoch keinen Support für Beispielskripte.
Ldap_python_config.py
#!/usr/bin/python
from OpenDirectory import ODNode, ODSession, kODNodeTypeConfigure
from Foundation import NSMutableData, NSData
import os
import sys
# Reading plist
GOOGLELDAPCONFIGFILE = open(sys.argv[1], "r")
CONFIG = GOOGLELDAPCONFIGFILE.read()
GOOGLELDAPCONFIGFILE.close()
# Write the plist
od_session = ODSession.defaultSession()
od_conf_node, err = ODNode.nodeWithSession_type_error_(od_session, kODNodeTypeConfigure, None)
request = NSMutableData.dataWithBytes_length_(b' '*32, 32)
request.appendData_(NSData.dataWithBytes_length_(str.encode(CONFIG), len(CONFIG)))
response, err = od_conf_node.customCall_sendData_error_(99991, request, None)
# Edit the default search path and append the new node to allow for login
os.system("dscl -q localhost -append /Search CSPSearchPath /LDAPv3/ldap.google.com")
os.system("bash -c 'echo -e \"TLS_IDENTITY\tLDAP Client\" >> /etc/openldap/ldap.conf' ")
Schritt 4: Endnutzergeräte automatisch konfigurieren
Gehen Sie zu anderen macOS-Geräten, die Sie konfigurieren möchten, und führen Sie die folgenden Schritte aus:
- Kopieren Sie die in Schritt 1 generierte Mac-Profildatei, die in Schritt 2 erstellte XML-Konfigurationsdatei und das Python-Script aus Schritt 3 auf das Gerät.
- Führen Sie den folgenden Befehl aus, um die erforderliche Abhängigkeit für das Script zu installieren:
python3 -m pip install pyobjc-framework-opendirectory - Führen Sie dazu diesen Befehl aus:
sudo python </path/to/saved_python_script> </path/to/ldap.google.com.plist generated in step 2> - Um Zertifikate in den macOS-Systemschlüsselbund zu importieren, klicken Sie doppelt auf die Mac-Profildatei, die in Schritt 1 generiert wurde, und geben Sie die Anmeldedaten für den lokalen macOS-Administrator ein, wenn Sie dazu aufgefordert werden. Sie werden dann aufgefordert, das .p12-Passwort einzugeben, das Sie in der Vorbereitungsphase festgelegt haben.
- Starten Sie das macOS-Gerät neu.
- Erstellen Sie mobile Konten wie in Schritt 4 der Vorbereitungsphase beschrieben und legen Sie optional zusätzliche Einstellungen fest, die in Schritt 5 der Vorbereitungsphase beschrieben werden.
Einschränkungen und Richtlinien
- Wenn sich Nutzer mit ihren Google-Anmeldedaten in macOS anmelden, muss sich der Nutzername ihres Workspace-Kontos von der Nutzer-ID ihres macOS-Nutzerprofils unterscheiden. Andernfalls wird die Anmeldung blockiert.
- Sobald ein Nutzer sich mithilfe von Google-Anmeldedaten in macOS anmeldet, muss die Nutzerpasswortverwaltung (Zurücksetzen oder Wiederherstellen) auf der Google-Website erfolgen, z. B. auf myaccount.google.com oder in der Admin-Konsole. Wenn Sie die Passwortverwaltung mit einer Drittanbieterlösung durchführen, muss das aktuelle Passwort mit Google synchronisiert werden.
- Wenn der Administrator einen neuen Nutzer erstellt oder das Passwort eines vorhandenen Nutzers zurücksetzt und dabei die Einstellung Bei der nächsten Anmeldung zur Passwortänderung auffordern aktiviert ist, kann sich der Nutzer mit dem vom Administrator festgelegten temporären Passwort nicht auf einem Mac anmelden.
Problemumgehung: Der Nutzer muss sich mit einem anderen Gerät, z. B. einem Mobilgerät oder einem anderen Computer, bei Google anmelden, ein dauerhaftes Passwort festlegen und sich dann mit dem neuen Passwort in macOS anmelden. - Der Mac muss mit dem Internet verbunden sein, damit ldap.google.com bei der ersten Anmeldung nach der Konfiguration oben aufgerufen werden kann. Wenn Sie ein mobiles Konto eingerichtet haben, ist für nachfolgende Anmeldungen kein Internetzugriff erforderlich.
- Die Integration von Google Secure LDAP in macOS wurde unter macOS Catalina, Big Sur und Monterey getestet.
Wenn Probleme beim Herstellen einer Verbindung zu Secure LDAP auftreten, folgen Sie der Anleitung unten.
Schritt 1: Verbindung prüfen
Prüfen Sie mit odutil die Verbindung.
Führen Sie im Terminal den Befehl odutil show nodenames aus.
Prüfe, ob der Status von /LDAPv3/ldap.google.com online lautet. Ist das nicht der Fall, versuchen Sie es mit der Option „telnet“.
Überprüfen Sie die Verbindung mit „nc“.
Führen Sie den folgenden Befehl im Terminal aus: nc -zv ldap.google.com 636
Wenn Sie auf diese Weise keine Verbindung zu Google herstellen können, versuchen Sie, eine Verbindung über IPv4 herzustellen.
Prüfen Sie die Verbindung mit IPv4.
So können die Einstellungen für Ihr Gerät ändern, dass IPv4 verwendet wird:
- Gehen Sie zu System Preferences > Network > Wi-Fi > Advanced (Systemeinstellungen > Netzwerk > WLAN > Erweitert).
- Wechseln Sie im Menü „Advanced“ (Erweitert) zum Tab „TCP/IP“ (TCP/IP).
- Ändern Sie die Drop-down-Auswahl von IPv6 konfigurieren zu Nur Link-Local.
- Klicken Sie auf OK und dann auf Übernehmen, um die Änderungen zu speichern.
- Überprüfen Sie die Dienstauthentifizierung über eine gültige ldapsearch-Suche.
Schritt 2: Prüfen, ob Sie Verzeichnisobjekte sehen können
- Öffnen Sie Directory Utility und dann den Tab Directory Editor.
- Wählen Sie in der Drop-down-Liste den Knoten /LDAPv3/ldap.google.com aus.
- Prüfen Sie, ob Nutzer und Gruppen aus Ihrer Google-Domain angezeigt werden.
Konfigurationsanleitung für Java-Anwendungen
Die meisten Java-basierten Anwendungen, die LDAP-Funktionen bieten, können so konfiguriert werden, dass die Authentifizierung mit Clientzertifikaten erfolgt. Dazu müssen Sie Ihre Clientzertifikate im Keystore der Anwendung installieren. Die genauen Konfigurationsdateien unterscheiden sich je nach Anwendung, aber der Prozess ist im Allgemeinen ähnlich. Für die Einrichtung müssen OpenSSL und eine Java-Laufzeitumgebung installiert sein.
Konvertieren Sie das Zertifikat und die Schlüssel in das Schlüsselspeicher-Format von Java. Während dieses Vorgangs werden Sie aufgefordert, Passwörter einzugeben. Wählen Sie ein sicheres Passwort aus und verwenden Sie es für alle Aufforderungen. Angenommen, Ihre Clientschlüsseldatei heißt ldap-client.key:
Wenn Sie macOS oder Linux verwenden, führen Sie die folgenden Befehle aus:
$ openssl pkcs12 -export -out java-application-ldap.pkcs12 -in ldap-client.crt -inkey ldap-client.keyIn Windows:
$ certutil -mergepfx ldap-client.crt java-application-ldap.pkcs12Wichtig:Die beiden Dateien (<CERT_FILE>.crt und <CERT_FILE>.key) müssen sich im selben Verzeichnis befinden. Achten Sie außerdem darauf, dass sowohl key als auch crt denselben Namen haben (mit den beiden unterschiedlichen Erweiterungen). In diesem Beispiel verwenden wir die Namen ldap-client.crt und ldap-client.key.
Importieren Sie das Zertifikat in den Schlüsselspeicher:
$ keytool -v -importkeystore -srckeystore java-application-ldap.pkcs12 -srcstoretype PKCS12 -destkeystore java-application-ldap.jks -deststoretype JKSJava-Eigenschaften können je nach Anwendung unterschiedlich konfiguriert werden. Häufig können Sie sie mit der Option -D in der Befehlszeile des Befehls „java“ festlegen, mit dem sie gestartet wird. So legen Sie die Java-Eigenschaften für Ihre Anwendung fest:
javax.net.ssl.keyStore = /<path-to>/java-application-ldap.jks javax.net.ssl.keyStorePassword = <password selected above>Konfigurieren Sie die LDAP-Verbindungseinstellungen der Anwendung anhand der Informationen unter Grundlegende Konfigurationsanleitung.
Optional: stunnel als Proxy verwenden
Verwenden Sie stunnel als Proxy für Clients, die keine Möglichkeit bieten, sich mit einem Clientzertifikat bei LDAP zu authentifizieren.
Konfigurieren Sie stunnel so, dass das Clientzertifikat für den LDAP-Server bereitgestellt wird, und konfigurieren Sie Ihren Client so, dass er eine Verbindung zu stunnel herstellt. Im Idealfall führen Sie stunnel auf demselben Server bzw. denselben Servern wie Ihre Anwendung aus und lauschen nur lokal, damit Ihr LDAP-Verzeichnis nicht über diesen Server hinaus verfügbar ist.
Gehen Sie so vor:
Installieren Sie Stunnel. Auf Ubuntu geht das zum Beispiel so:
$ sudo apt-get install stunnel4Erstellen Sie eine Konfigurationsdatei /etc/stunnel/google-ldap.conf mit folgendem Inhalt (vorausgesetzt, ldap-client.crt ist das Zertifikat und ldap-client.key ist der Schlüssel):
[ldap]
client = yes
accept = 127.0.0.1:1636
connect = ldap.google.com:636
cert = ldap-client.crt
key = ldap-client.keyWenn Sie Stunnel aktivieren möchten, bearbeiten Sie /etc/default/stunnel4 und setzen Sie den Wert auf ENABLED=1.
Starten Sie Stunnel neu.
$ sudo /etc/init.d/stunnel4 restartKonfigurieren Sie die Anwendung so, dass sie auf ldap://127.0.0.1:1636 verweist.
Sie können „1636“ durch einen beliebigen ungenutzten Port ersetzen, wenn Sie auch die Zeile accept in der Konfigurationsdatei oben ändern. Sie müssen Klartext-LDAP ohne aktiviertes StartTLS/SSL/TLS zwischen dem Client und stunnel verwenden, da sie lokal kommunizieren.
Hinweis:Wenn Sie stunnel auf einem separaten Server ausführen, müssen Sie Ihre Firewalls so konfigurieren, dass nur die erforderlichen Anwendungen auf Ihren stunnel-Server zugreifen können. Sie können stunnel auch so konfigurieren, dass TLS-Verbindungen akzeptiert werden, damit die Daten zwischen Ihrer Anwendung und den stunnel-Servern verschlüsselt werden. Die Details dieser beiden Konfigurationen hängen von Ihrer Umgebung ab.
Nächste Schritte
Nachdem Sie den LDAP-Client mit dem Secure LDAP-Dienst verbunden haben, müssen Sie den Dienststatus für den LDAP-Client auf Ein setzen.
Informationen zu den nächsten Schritten finden Sie unter 5. Stellen Sie die LDAP-Clients auf Ein um.
Hinweis:Bei Problemen mit der Verbindung Ihres LDAP-Clients mit dem Dienst können Sie einfache Tools wie ldapsearch, ADSI oder ldp.exe zur Fehlerbehebung verwenden. Eine Anleitung finden Sie unter Konnektivität testen und Fehlerbehebung.