Suivez les instructions de cet article pour connecter votre client LDAP au service LDAP sécurisé.
Important :
- Documentation de votre fournisseur à lire
Les informations de cet article, qui permettent de connecter votre client LDAP au service LDAP sécurisé, sont fournies à titre de référence uniquement et sont susceptibles d'être modifiées. En plus de ces instructions d'aide, veillez à lire la documentation la plus récente de votre fournisseur concernant la procédure de connexion au service LDAP sécurisé. - Avant de commencer
Avant de suivre ces instructions, assurez-vous d'avoir déjà ajouté le client au service LDAP sécurisé, configuré les autorisations d'accès, téléchargé un certificat et une clé client et, éventuellement, créé des identifiants d'accès. - Test de connectivité
Avant de suivre cette procédure, nous vous conseillons d'effectuer un rapide test de connectivité à l'aide d'outils simples tels que ldapsearch, ADSI ou ldp.exe. Vous pouvez également utiliser ces outils pour résoudre d'éventuelles erreurs rencontrées lors de la tentative de connexion de votre client LDAP au service. Pour en savoir plus, consultez Tests de connectivité au service LDAP sécurisé. - Finalisation de la configuration
Après avoir connecté votre client LDAP en suivant la procédure décrite sur cette page, vous devrez en terminer la configuration en définissant l'état du service sur Activé dans la console d'administration Google. Pour savoir comment procéder, consultez 5. Activer les clients LDAP.
Contenu de cet article
Cet article est composé des sections suivantes :
- Instructions de configuration de base : instructions d'ordre général pour connecter les clients LDAP non spécifiés dans cet article
- Instructions de configuration pour des clients LDAP spécifiques : pour connecter des clients LDAP spécifiques tels qu'Atlassian Jira ou OpenVPN au service LDAP sécurisé La procédure varie en fonction du type de client.
- Instructions de configuration pour les applications Java : instructions d'ordre général pour les applications Java proposant la fonctionnalité LDAP
- (Facultatif) Utiliser stunnel en tant que proxy : instructions sur d'autres éléments à prendre en compte pour connecter les clients LDAP non compatibles avec les certificats numériques
Ces instructions supposent que vous téléchargiez les fichiers de la clé et du certificat client (ldap-client.key et ldap-client.crt).
Instructions de configuration de base
Cette section contient des instructions d'ordre général pour la connexion de votre client LDAP au service LDAP sécurisé. Si votre client LDAP ne figure pas dans les instructions ci-dessous, consultez la documentation portant sur cette application.
Remarque : Certains clients LDAP tels qu'Atlassian Jira et SSSD effectuent une recherche pour obtenir plus d'informations sur un utilisateur lors de son authentification. Pour vous assurer que l'authentification utilisateur fonctionne correctement pour ces clients LDAP, vous devez activer Lire les informations relatives à l'utilisateur pour toutes les unités organisationnelles dont l'option Vérifier des identifiants utilisateur est activée. Pour en savoir plus, consultez Configurer les autorisations d'accès.
Pour connecter le client LDAP au service LDAP sécurisé :
- Configurez votre client LDAP en définissant l'annuaire cloud comme serveur LDAP.
Importez le certificat sur votre client LDAP.
Le service LDAP sécurisé utilise les certificats clients TLS comme mécanisme d'authentification principal. Pour lancer le processus d'importation du certificat sur le client LDAP, ouvrez les paramètres d'authentification ou d'annuaire du client LDAP et saisissez les informations qui figurent dans le tableau ci-dessous.
Remarque : Pour savoir comment et où importer les certificats TLS, consultez la documentation de votre fournisseur.
Le tableau suivant vous indique les informations de connexion de base :
|
Hostname (Nom d'hôte) |
ldap.google.com |
|---|---|
|
Ports |
389 pour LDAP avec StartTLS activé |
|
DN de base |
Votre domaine au format DN. Exemple : dc=example,dc=com pour example.com |
|
Nom d'utilisateur et mot de passe |
En plus de l'authentification par certificat, certains clients LDAP exigent que vous saisissiez un nom d'utilisateur et un mot de passe. Si les champs "Nom d'utilisateur" et "Mot de passe" ne sont pas obligatoires, vous pouvez ignorer cette étape. Générez un nom d'utilisateur et un mot de passe dans la console d'administration Google. Pour obtenir des instructions, consultez Générer des identifiants d'accès. |
|
Fichiers de certificat et de clé client |
Utilisez le fichier de certificat et de clé téléchargé depuis la console d'administration Google. Si le client LDAP ne permet pas de s'authentifier avec un certificat client, consultez la section Utiliser stunnel en tant que proxy. IMPORTANT : Certains clients LDAP, tels qu'Apache Directory Studio, n'acceptent pas le chargement de certificats numériques. Pour résoudre ce problème, consultez la section Utiliser stunnel en tant que proxy. |
Instructions de configuration pour des clients LDAP spécifiques
ADSI Edit (Windows)
Procédez comme suit :
- Suivez les étapes 1 à 11 de la section ldp.exe (Windows) pour installer les certificats client.
- Accédez à Action > Connect to (Action > Se connecter à).
- Saisissez les paramètres de connexion suivants :
Name (Nom) : saisissez un nom pour votre connexion, par exemple Google LDAP.
Connection Point (Point de connexion) : sélectionnez ou saisissez un nom distinctif ou un contexte d'attribution de noms.
Saisissez votre nom de domaine au format DN, par exemple dc=example,dc=com pour example.com.
Computer (Ordinateur) : sélectionnez ou saisissez un nom de domaine ou un serveur.
ldap.google.com
Use SSL-based Encryption (Utiliser le chiffrement SSL) : cochez cette option
- Cliquez sur Advanced... (Avancé…), puis saisissez les informations suivantes :
Specify credentials (Spécifier les identifiants) : coché
Username (Nom d'utilisateur) : nom d'utilisateur des identifiants d'accès dans la console d'administration
Password (Mot de passe) : mot de passe des identifiants d'accès dans la console d'administration
Port Number (Numéro de port) : 636
Protocol (Protocole) : LDAP
Simple bind authentication (Authentification par liaison simple) : coché
- Cliquez sur OK, puis de nouveau sur OK.
- Si la connexion aboutit, le contenu Active Directory s'affiche dans le volet de droite dans le format DN de base.
Apache Directory Studio
Pour utiliser Apache Directory Studio, connectez-vous via stunnel et utilisez les identifiants d'accès (nom d'utilisateur et mot de passe) générés dans la console d'administration Google. Si les identifiants sont configurés et que l'écoute stunnel se fait sur le port localhost 1389, suivez cette procédure :
- Cliquez sur File > New (Fichier > Nouveau).
- Sélectionnez LDAP Browser > LDAP Connection (Navigateur LDAP > Connexion LDAP).
- Cliquez sur Suivant.
- Saisissez les paramètres de connexion :
Connection name (Nom de connexion) : choisissez un nom, tel que Google LDAP.
Hostname (Nom d'hôte) : localhost
Port (Port) : 1389 (ou le port d'écoute/d'acceptation de Stunnel)
Encryption method (Méthode de chiffrement) : pas de chiffrement. Si Stunnel opère à distance, le chiffrement entre Stunnel et le client est recommandé.
- Cliquez sur Suivant.
- Saisissez les paramètres d'authentification suivants :
Authentication Method (Méthode d'authentification) : authentification simple
Bind DN or user (Lier nom de domaine ou utilisateur) : nom d'utilisateur des identifiants d'accès dans la console d'administration
Bind password (Lier mot de passe) : mot de passe des identifiants d'accès dans la console d'administration
- Cliquez sur Suivant.
- Saisissez le nom distinctif de base.
Il s'agit de votre nom de domaine au format DN (dc=example,dc=com pour example.com). - Cliquez sur Terminer.
Atlassian Jira
Atlassian Jira effectue une recherche utilisateur afin d'obtenir plus d'informations sur celui-ci lors de son authentification. Pour vous assurer que l'authentification utilisateur fonctionne correctement pour ce client LDAP, vous devez activer Lire les informations utilisateur et Lire les informations sur les groupes pour toutes les unités organisationnelles dont l'option Vérifier les identifiants utilisateur est activée. Pour en savoir plus, consultez Configurer les autorisations d'accès.
Important : Les instructions ci-dessous peuvent entraîner la divulgation de keystorePassword aux utilisateurs et aux fichiers journaux. Prenez les précautions nécessaires pour éviter tout accès non autorisé à l'interface système locale, au fichier journal et à la console d'administration Google. Au lieu des instructions suivantes, vous pouvez suivre la méthode stunnel4. Pour ce faire, consultez (Facultatif) Utiliser stunnel en tant que proxy.
Remarque : Les instructions qui suivent supposent que Jira est bien installé dans /opt/atlassian/jira.
Pour connecter un client Atlassian Jira au service LDAP sécurisé :
- Copiez le certificat et la clé sur le ou les serveurs Jira. Il s'agit du certificat généré dans la console d'administration Google lors de l'ajout du client LDAP au service LDAP sécurisé.
Par exemple :
$ scp ldap-client.key user@jira-server:
- Convertissez le certificat et les clés au format Java KeyStore. Vous serez invité à saisir des mots de passe au cours de cette procédure. Pour plus de simplicité, sélectionnez un mot de passe sécurisé et utilisez-le à chaque invite.
$ 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
- Configurez Jira de façon à utiliser le keystore nouvellement créé. Suivez la procédure décrite ici pour ajouter des options :
"-Djavax.net.ssl.keyStore=/opt/atlassian/jira/jira-ldap.jks -Djavax.net.ssl.keyStorePassword=password"
Sur Linux :- Saisissez /opt/atlassian/jira/bin/setenv.sh.
- Recherchez le paramètre JVM_SUPPORT_RECOMMENDED_ARGS.
- Ajoutez "-Djavax.net.ssl.keyStore=/opt/atlassian/jira/jira-ldap.jks -Djavax.net.ssl.keyStorePassword=password", en remplaçant "password" par le mot de passe que vous avez sélectionné plus haut.
- Redémarrez Jira.
$ /opt/atlassian/jira/bin/stop-jira.sh
$ /opt/atlassian/jira/bin/start-jira.sh
- Connectez-vous à l'interface Web de Jira en tant qu'administrateur.
- Accédez à Settings > User management (Paramètres > Gestion des utilisateurs). (Pour accéder aux paramètres, cliquez sur l'icône en forme de roue dentée en haut à droite.)
- Cliquez sur Annuaires utilisateur.
- Cliquez sur Add Directory (Ajouter un annuaire).
- Comme type, sélectionnez LDAP.
- Cliquez sur Suivant.
- Saisissez ce qui suit :
Nom
LDAP sécurisé Google
Type d'annuaire
OpenLDAP
Hostname (Nom d'hôte)
ldap.google.com
Port
636
Utiliser SSL
Cochée
Nom d'utilisateur
Générez un nom d'utilisateur et un mot de passe dans la console d'administration Google. Pour obtenir des instructions, consultez Générer des identifiants d'accès.
Mot de passe
Générez un nom d'utilisateur et un mot de passe dans la console d'administration Google. Pour obtenir des instructions, consultez Générer des identifiants d'accès.
DN de base
Votre nom de domaine au format DN. (par exemple, dc=example,dc=com pour example.com)
Additional User DN (Nom distinctif d'utilisateur supplémentaire)
Facultatif. "ou=Users"
Additional Group DN (Nom distinctif de groupe supplémentaire)
Facultatif. "ou=Groups"
Autorisations LDAP
Lecture seule
Paramètres avancés
Non modifiée
User Schema Settings >
User Name Attribute (Paramètres de schéma utilisateur > Attribut de nom d'utilisateur)googleUid
User Schema Settings >
User Name RDN Attribute (Paramètres de schéma utilisateur > Attribut RDN de nom d'utilisateur)uid
Group Schema Settings >
Group Object Class (Paramètres de schéma de groupe > Classe d'objet de groupe)groupOfNames
Group Schema Settings >
Group Object Filter (Paramètres de schéma de groupe > Filtre d'objet de groupe)(objectClass=groupOfNames)
Membership Schema Settings >
Group Members Attribute (Paramètres de schéma d'appartenance > Attribut "Membres du groupe")membre
Membership Schema Settings >
Use the User Membership Attribute (Paramètres de schéma d'appartenance > Utiliser l'attribut "Adhésion utilisateur")Cochée - Attribuez un rôle à un groupe.
Pour qu'Atlassian Jira puisse autoriser un utilisateur à se connecter, celui-ci doit être membre d'un groupe ayant accès à Jira.
Pour attribuer un rôle à un groupe :- Accédez à Paramètres > Applications > Accès aux applications.
- Dans la zone de texte Sélectionner un groupe, saisissez le nom du groupe Google auquel vous souhaitez accorder l'accès à Jira.
CloudBees Core / Jenkins
Pour savoir comment connecter CloudBees Core au service LDAP sécurisé, consultez Configure CloudBees Core with Google's Cloud Identity Secure LDAP.
FreeRadius
Procédez comme suit :
- Installez et configurez FreeRADIUS dans /etc/freeradius/3.0/.
Une fois FreeRADIUS installé, vous pouvez ajouter la configuration LDAP en installant le plug-in freeradius-ldap.
$ sudo apt-get install freeradius freeradius-ldap
- Copiez les fichiers de la clé et du certificat client LDAP respectivement dans /etc/freeradius/3.0/certs/ldap-client.key et /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.*
- Activez le module LDAP.
$ cd /etc/freeradius/3.0/mods-enabled/
$ ln -s ../mods-available/ldap ldap
- Modifiez /etc/freeradius/3.0/mods-available/ldap.
- ldap->server = 'ldaps://ldap.google.com:636'
- identity = nom d'utilisateur issu des identifiants de l'application
- password = mot de passe issu des identifiants de l'application
- base_dn = 'dc=domain,dc=com'
- tls->start_tls = no
- tls->certificate_file = /etc/freeradius/3.0/certs/ldap-client.crt
- tls->private_key_file = /etc/freeradius/3.0/certs/ldap-client.key
- tls->require_cert = 'allow'
- Commentez tous les champs du fil d'Ariane représentant la section "ldap -> post-auth -> update"
- Modifiez /etc/freeradius/3.0/sites-available/default.
Cette action entraîne la modification de la connexion du client FreeRadius. Si vous n'utilisez pas le client par défaut, veillez à mettre à jour celui que vous avez configuré, par exemple inner-tunnel ou un client personnalisé.
- Modifiez la section authorize (autoriser) en ajoutant le bloc suivant dans la partie inférieure, après l'instruction PAP :
if (User-Password) {
update control {
Auth-Type := ldap
}
}
- Dans la section authorize (autoriser), activez LDAP en supprimant le signe "-" situé juste avant.
#
# Le module ldap lit les mots de passe de la base de données LDAP.
ldap
- Modifiez la section authenticate (authentifier) en modifiant le bloc Auth-Type LDAP comme suit :
# Auth-Type LDAP {
ldap
# }
- Modifiez la section authenticate (authentifier) en modifiant le bloc Auth-Type PAP comme suit :
Auth-Type PAP {
# pap
ldap
}
- Modifiez la section authorize (autoriser) en ajoutant le bloc suivant dans la partie inférieure, après l'instruction PAP :
GitLab
Pour savoir comment connecter GitLab au service LDAP sécurisé, consultez Google Secure LDAP portant sur la configuration pour GitLab.
Itopia/Ubuntu
Pour savoir comment connecter Itopia/Ubuntu au service LDAP sécurisé, consultez Configuring Google Cloud Identity LDAP on Ubuntu 16.04 for user logins.
Ivanti / LanDesk
Procédez comme suit :
- Sur votre serveur Web Ivanti, ouvrez OpenLDAPAuthenticationConfiguration.xml ou OpenLDAPSSLAuthenticationConfiguration.xml dans un éditeur de texte à partir des deux dossiers suivants :
C:\ProgramData\LANDesk\ServiceDesk\servicedesk.Framework et C:\ProgramData\LANDesk\ServiceDesk\servicedesk.WebAccess (où servicedesk est le nom de l'instance) - Remplacez la valeur <Server> par ldap.google.com.
- Remplacez la valeur <Port> par le port 3268 pour le texte clair avec StartTLS activé, et par 3269 pour le port SSL/TLS. La valeur par défaut est 389 pour le port en texte clair, et 636 pour le port SSL/TLS.
- Définissez la valeur <TestDN> sur votre nom de domaine au format DN. (par exemple, dc=example,dc=com pour example.com).
- Ajoutez la ligne suivante à ..ProgramData\LANDesk\ServiceDesk\ServiceDesk.Framework\tps.config et à ..ProgramData\LANDesk\ServiceDesk\WebAccess\tps.config :
<add key="AuthenticationProvider" value="Touchpaper.Integrations.OpenLDAPLogon.OpenLDAPAuthenticationProvider" />
ou la ligne suivante :
<add key="AuthenticationProvider" value="Touchpaper.Integrations.OpenLDAPSSLLogon.OpenLDAPSSLAuthenticationProvider" />
- Dans le centre de configuration Ivanti, ouvrez l'instance requise.
- À côté de l'application Service Desk Framework, cliquez sur Edit (Modifier).
La boîte de dialogue Edit Application (Modifier l'application) pour Service Desk Framework s'ouvre alors. - Dans le groupe Configuration parameters (Paramètres de configuration), sélectionnez Explicit only (Explicite uniquement) dans la liste Logon policy (Règles de connexion), puis cliquez sur OK.
- À côté de l'application Web Access, cliquez sur Edit (Modifier).
La boîte de dialogue Edit Application (Modifier l'application) pour Web Access s'ouvre alors. - Dans le groupe Configuration parameters (Paramètres de configuration), sélectionnez Explicit only (Explicite uniquement) dans la liste Logon policy (Règles de connexion), puis cliquez sur OK.
Connectez-vous à l'aide du mot de passe réseau de l'utilisateur du domaine associé.
Journalisation des exceptions pour l'authentification du serveur LDAP
Si vous rencontrez des problèmes pour configurer l'authentification du serveur LDAP, vous pouvez activer la journalisation des exceptions pour vous aider à identifier ces problèmes. Cette option est désactivée par défaut, et nous vous recommandons de la désactiver à nouveau lorsque vous avez terminé vos investigations.
Pour activer la journalisation des exceptions pour l'authentification du serveur LDAP :
- Ouvrez le fichier XML de configuration d'authentification approprié dans un éditeur de texte :
DirectoryServiceAuthenticationConfiguration.xml, OpenLDAPAuthenticationConfiguration.xml ou OpenLDAPSSLAuthenticationConfiguration.xml - Remplacez la ligne :
<ShowExceptions>false</ShowExceptions>
par
<ShowExceptions>true</ShowExceptions>
- Enregistrez les modifications.
Ldp.exe (Windows)
Procédez comme suit :
- Convertissez les fichiers de clé et de certificat en un fichier au format PKCS12. Lorsque l'invite de commande apparaît, saisissez les commandes suivantes :
Si vous utilisez macOS ou Linux, saisissez les commandes suivantes :
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
Saisissez un mot de passe pour chiffrer le fichier de sortie.
Si vous utilisez Windows, saisissez les commandes suivantes :
$ certutil -mergepfx ldap-client.crt ldap-client.p12
Important : Les deux fichiers (<CERT_FILE>.crt et <CERT_FILE>.key) doivent être situés dans le même répertoire. Assurez-vous également que key et crt portent un nom identique, avec une extension différente. Dans cet exemple, nous utilisons les noms ldap-client.crt et ldap-client.key. - Accédez au panneau de configuration.
- Dans le champ de recherche, saisissez "certificate", puis cliquez sur Manage user certificates (Gérer les certificats utilisateur).
- Accédez à Action > All Tasks > Import… (Action > Toutes les tâches > Importer).
- Sélectionnez Current User (Utilisateur actuel), puis cliquez sur Next (Suivant).
- Cliquez sur Parcourir….
- Dans la liste déroulante File type (Type de fichier) en bas à droite de la boîte de dialogue, sélectionnez Personal Information Exchange (*.pfx;*.p12) (Échange d'informations personnelles [*.pfx;*.p12]).
- Sélectionnez le fichier ldap-client.p12 créé à l'étape 2, cliquez sur Ouvrir, puis sur Suivant.
- Saisissez le mot de passe de l'étape 2, puis cliquez sur Suivant.
- Sélectionnez le magasin de certificats Personal (Personnel), cliquez sur Next (Suivant), puis sur Finish (Terminer).
- Exécutez Ldp.exe.
- Accédez à Connection > Connect (Connexion > Se connecter).
- Saisissez les informations de connexion suivantes :
Server (Serveur) : ldap.google.com
Port : 636
Connectionless (Sans connexion) : décochez cette option
SSL : cochez cette option
- Cliquez sur OK.
- Accédez à View > Tree (Affichage > Arborescence).
- Saisissez le nom distinctif de base. Il s'agit de votre nom de domaine au format DN. (par exemple, dc=example,dc=com pour example.com).
- Cliquez sur OK.
- Si la connexion aboutit, LDP.exe affiche dans le volet de droite les contenus Active Directory, par exemple tous les attributs présents dans le nom de domaine de base.
Netgate / pfSense
Pour savoir comment connecter Netgate/pfSense au service LDAP sécurisé, consultez Configuring Google Cloud Identity as an Authentication Source.
OpenLDAP / ldapsearch (Linux)
Pour accéder à votre annuaire LDAP à partir de la ligne de commande, vous pouvez utiliser la commande OpenLDAP ldapsearch.
En supposant que vous utilisiez bien les fichiers de clé et de certificat client (ldap-client.crt et ldap-client.key), ainsi que le domaine example.com et le nom d'utilisateur edurand :
$ LDAPTLS_CERT=ldap-client.crt LDAPTLS_KEY=ldap-client.key ldapsearch -H ldaps://ldap.google.com -b dc=example,dc=com '(uid=jsmith)'
Les variables d'environnement pertinentes à faire pointer vers les clés du client sont ainsi définies. Vous pouvez remplacer les autres options ldapsearch par les filtres souhaités, les attributs demandés, etc. Pour en savoir plus, consultez les pages concernant "man ldapsearch".
ldapsearch (macOS)
Procédez comme suit :
- Convertissez les fichiers de clé et de certificat en un fichier au format PKCS12. Lorsque l'invite de commande apparaît, saisissez les commandes suivantes :
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
Saisissez votre mot de passe pour chiffrer le fichier de sortie.
- Cliquez sur
en haut à droite de la barre de menu et saisissez Keychain Access (Trousseau d'accès).
- Ouvrez l'application Keychain Access (Trousseau d'accès), puis cliquez sur System (Système) dans la liste de gauche.
- Cliquez sur l'option File (Fichier) dans la barre de menus située en haut à gauche, puis sélectionnez Import items (Importer des éléments).
- Accédez à l'emplacement à l'aide du ldap-client.p12 généré, sélectionnez ldap-client.p12, puis cliquez sur Open (Ouvrir).
Si vous y êtes invité, saisissez votre mot de passe.
Un certificat portant le nom de LDAP Client (Client LDAP) doit à présent apparaître dans la liste des certificats Keychain du système. - Cliquez sur la flèche à côté du certificat client LDAP. Une clé privée apparaît en dessous.
- Double-cliquez sur la clé privée.
- Dans la boîte de dialogue, sélectionnez l'onglet Access Control (Contrôle d'accès), puis cliquez sur + en bas à gauche.
-
Dans la fenêtre qui s'ouvre, saisissez Cmd+Maj+G pour ouvrir une nouvelle fenêtre, puis remplacez le texte existant par /usr/bin/ldapsearch.
-
Cliquez sur Go (Accéder).
Une fenêtre affichant "ldapsearch" en surbrillance s'ouvre. -
Cliquez sur Ajouter.
-
Cliquez sur Enregistrer les modifications, puis saisissez votre mot de passe si vous y êtes invité.
Vous pouvez désormais accéder à votre annuaire LDAP depuis la ligne de commande, à l'aide de la commande OpenLDAP ldapsearch.
-
En supposant que le fichier ldap-client.p12 que vous avez précédemment importé dans Keychain porte le nom LDAP Client (Client LDAP), que le nom de votre domaine soit example.com et que le nom d'utilisateur soit jsmith, saisissez la commande suivante :
$ LDAPTLS_IDENTITY="LDAP Client" ldapsearch -H ldaps://ldap.google.com:636 -b dc=example,dc=com '(uid=jsmith)'
Les variables d'environnement pertinentes à faire pointer vers le certificat client importé sont ainsi définies. Vous pouvez remplacer les autres options ldapsearch par les filtres souhaités, les attributs demandés, etc. Pour en savoir plus, consultez les pages de manuel ldapsearch (man ldapsearch).
OpenVPN (version de la communauté)
Procédez comme suit :
- Si nécessaire, installez et configurez OpenVPN. Si vous l'avez déjà fait, ouvrez la page des paramètres dans OpenVPN.
La configuration générale d'un VPN dépasse le cadre de cet article d'aide. Une fois que vous en avez configuré un, vous pouvez ajouter une authentification et une autorisation utilisateur via LDAP. Vous devrez notamment installer le plug-in openvpn-auth-ldap.
$ sudo apt-get install openvpn openvpn-auth-ldap
- Copiez les fichiers de la clé et du certificat client LDAP dans /etc/openvpn/ldap-client.key et /etc/openvpn/ldap-client.crt.
- Créez un fichier /etc/openvpn/auth-ldap.conf contenant les éléments suivants (en supposant qu'example.com soit le nom de domaine) :
<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>
- Modifiez le fichier de configuration OpenVPN, qui porte un nom du type /etc/openvpn/server.conf ou similaire. En bas du fichier, ajoutez ce qui suit :
plugin /usr/lib/openvpn/openvpn-auth-ldap.so /etc/openvpn/auth-ldap.conf
verify-client-cert optional
- Redémarrez le serveur OpenVPN.
$ sudo systemctl restart openvpn@server
- Configurez les clients VPN afin qu'ils utilisent les noms et les mots de passe des utilisateurs. Par exemple, dans une configuration de client OpenVPN, ajoutez auth-user-pass à la fin du fichier de configuration du client OpenVPN et démarrez le client OpenVPN :
$ openvpn --config /path/to/client.conf
- Suivez les instructions sur l'utilisation de stunnel en tant que proxy.
OpenVPN Access Server (version commerciale)
Pour savoir comment connecter OpenVPN Access Server au service LDAP sécurisé, consultez Configurer Google Secure LDAP avec OpenVPN Access Server.
PaperCut MF et NG
Pour savoir comment connecter PaperCut au service LDAP sécurisé, consultez How to sync and authenticate Google Workspace and Google Cloud Identity users in PaperCut.
Puppet Enterprise
Pour savoir comment connecter Puppet Enterprise au service LDAP sécurisé, consultez Google Cloud Directory for PE.
Softerra LDAP Browser
Important : Avant de commencer, assurez-vous d'avoir installé la version 4.5 (4.5.19808.0) de Softerra LDAP Browser, ou une version ultérieure. Consultez LDAP Browser 4.5.
Procédez comme suit :
- Convertissez les fichiers de clé et de certificat en un fichier au format PKCS12. Lorsque l'invite de commande apparaît, saisissez les commandes suivantes :
Si vous utilisez macOS ou Linux, saisissez les commandes suivantes :
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
Saisissez un mot de passe pour chiffrer le fichier de sortie.
Si vous utilisez Windows, saisissez les commandes suivantes :
$ certutil -mergepfx ldap-client.crt ldap-client.p12
Important : Les deux fichiers (<CERT_FILE>.crt et <CERT_FILE>.key) doivent être situés dans le même répertoire. Assurez-vous également que key et crt portent un nom identique, avec une extension différente. Dans cet exemple, nous utilisons les noms ldap-client.crt et ldap-client.key. - Dans Softerra LDAP Browser, installez la paire de clés.
- Accédez à Outils > Gestionnaire de certificats.
- Cliquez sur Import… (Importer).
- Cliquez sur Suivant.
- Cliquez sur Parcourir….
- Dans la liste déroulante File type (Type de fichier) en bas à droite de la boîte de dialogue, sélectionnez Personal Information Exchange (*.pfx;*.p12) (Échange d'informations personnelles [*.pfx;*.p12]).
- Sélectionnez le fichier ldap-client.p12 créé à l'étape 2 ci-dessus.
- Cliquez sur Open (Ouvrir), puis sur Next (Suivant).
- Saisissez le mot de passe de l'étape 2, puis cliquez sur Suivant.
- Sélectionnez le magasin de certificats Personal (Personnel).
- Cliquez sur Suivant.
- Cliquez sur Terminer.
- Ajoutez un profil de serveur.
- Accédez à File > New > New Profile (Fichier > Nouveau > Nouveau profil).
- Saisissez un nom pour le profil, par exemple Google LDAP.
- Cliquez sur Suivant.
Saisissez les informations suivantes :
Host (Hôte) : ldap.google.com
Port : 636
Base DN (Nom de domaine de base) : votre nom de domaine au format DN (par exemple dc=example,dc=com pour example.com)
Use secure connection (SSL) (Utiliser une connexion sécurisée [SSL]) : cochez cette option
- Cliquez sur Suivant.
- Sélectionnez External (SSL Certificate) (Externe [certificat SSL]).
- Cliquez sur Suivant.
- Cliquez sur Terminer.
Sophos Mobile
Pour savoir comment connecter Sophos Mobile au service LDAP sécurisé, consultez Connecting Sophos Mobile to Google Cloud Identity / Google Cloud Directory using Secure LDAP.
Splunk
Lors de la connexion de Splunk au service LDAP sécurisé, veillez à utiliser la version 8.1.4 ou une version plus récente de Splunk. Si vous utilisez une version plus ancienne, comme la version 8.1.3, un nombre excessif de requêtes LDAP peut être envoyé au serveur LDAP, ce qui risque d'épuiser rapidement votre quota LDAP. Pour en savoir plus sur les problèmes de la version 8.1.3 de Splunk, consultez Known issues.
Procédez comme suit :
- Copiez les fichiers de la clé et du certificat client LDAP dans /home/splunk/splunkadmin/etc/openldap/certs/ldap-client.key et /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.*
- Modifiez le fichier ldap.conf en ajoutant les configurations suivantes :
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 - Ajoutez les configurations suivantes dans le fichier /home/splunkadmin/.ldaprc de l'utilisateur :
TLS_CERT /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
TLS_KEY /home/splunkadmin/splunk/etc/openldap/certs/ldap-client.pem
- Ajoutez la stratégie LDAP à l'aide de l'interface utilisateur Web de Splunk. Saisissez les informations suivantes, puis cliquez sur Enregistrer :
|
Nom |
LDAP sécurisé Google |
|---|---|
|
Hôte |
ldap.google.com |
|
Port |
636 |
|
SSL activé |
Cochée |
|
Ordre de connexion |
1 |
|
Bind DN |
Saisissez les identifiants d'accès que vous avez générés dans la console d'administration Google. |
|
Bind DN password (Lier mot de passe du nom de domaine) |
Saisissez les identifiants d'accès que vous avez générés dans la console d'administration Google. |
|
DN de base |
Votre nom de domaine au format DN, par exemple dc=example,dc=com pour le domaine example.com |
|
Filtre de base d'utilisateurs |
Saisissez le filtre de base d'utilisateurs pour la classe d'objet sur laquelle vous souhaitez filtrer les utilisateurs. |
|
Attribut de nom d'utilisateur |
uid |
|
Attribut de nom réel |
displayname |
|
Attribut "Adresse e-mail" |
|
|
Attribut de mappage de groupe |
dn |
|
Nom distinctif de base du groupe |
Votre nom de domaine au format DN (par exemple, ou=Groups,dc=example,dc=com pour le domaine example.com) |
|
Filtre de recherche de groupe statique |
Saisissez le filtre de recherche de groupe statique pour la classe d'objet sur laquelle vous souhaitez filtrer vos groupes statiques. |
|
Attribut de nom de groupe |
cn |
|
Attribut de membre statique |
membre |
SSSD (Red Hat Enterprise et CentOS)
SSSD effectue une recherche utilisateur pour obtenir plus d'informations sur celui-ci lors de son authentification. Pour vous assurer que l'authentification utilisateur fonctionne correctement pour ce client LDAP, vous devez activer Lire les informations utilisateur et Lire les informations sur les groupes pour toutes les unités organisationnelles dont l'option Vérifier les identifiants utilisateur est activée. Pour en savoir plus, consultez Configurer les autorisations d'accès.
Pour connecter un client SSSD sous Red Hat 8 ou CentOS 8 au service LDAP sécurisé :
- Ajoutez le client SSSD au service LDAP sécurisé :
- Dans la console d'administration Google, accédez à Applications > LDAP > AJOUTER UN CLIENT.
Veillez à vous connecter avec votre compte professionnel, et non avec votre compte Gmail personnel. - Saisissez les informations sur le client, puis cliquez sur CONTINUER.
- Configurez les autorisations d'accès :
Vérifier des identifiants utilisateur : Tout le domaine
Lire les informations relatives à l'utilisateur : Tout le domaine
Lire les informations relatives au groupe : Activé - Cliquez sur AJOUTER UN CLIENT LDAP.
- Téléchargez le certificat généré.
- Cliquez sur ACCÉDER AUX INFORMATIONS DU CLIENT.
- Définissez l'état du service sur ACTIVÉ.
- Dans la console d'administration Google, accédez à Applications > LDAP > AJOUTER UN CLIENT.
- Installez les dépendances :
dnf install openldap-clients sssd-ldap
install -d --mode=700 --owner=sssd --group=root /etc/sssd/ldap
Décompressez le fichier de certificat .zip et copiez les fichiers .crt et .key sur /etc/sssd/ldap
- (Facultatif) Testez avec 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
Lorsque vous y êtes invité, saisissez le mot de passe Google de l'utilisateur.
Remarque : Une licence Google Workspace Enterprise ou Cloud Identity Premium doit être attribuée à l'utilisateur. - Créez le fichier
/etc/sssd/sssd.confavec le contenu suivant :
[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 - Mettez à jour les autorisations et les libellés SELinux :
chown 0:0 /etc/sssd/sssd.conf /etc/sssd/ldap/*
chmod 600 /etc/sssd/sssd.conf /etc/sssd/ldap/*
restorecon -FRv /etc/sssd
- Redémarrez SSSD :
systemctl restart sssd
- Testez :
ssh au serveur :ssh -l user@example.com {HOSTNAME}
Dépannage
- Vérifiez la version de SSSD, qui doit être supérieure ou égale à 1.15.2 :
# sssd --version
2.2.3
-
Sous RHEL/CentOS (ou toute autre distribution utilisant l'application forcée de SELinux), les fichiers de configuration et le fichier de certificat SSSD doivent se trouver dans un répertoire accessible par le rôle sssd_conf_t :
# egrep "object_r:sssd_conf_t" /etc/selinux/targeted/contexts/files/file_contextsVérifiez si le fichier /var/log/audit/audit.log contient des messages de refus AVC.
- Vérifiez que le fichier /etc/nsswitch.conf affiche bien "sss" pour les entités "passwd", "shadow", "group" et "netgroup" :
passwd: files sss
shadow: files sss
group: files sss
netgroup: files sss
Dans cet exemple, les fichiers locaux remplaceront les comptes utilisateur LDAP.
- Recherchez des erreurs de configuration dans le fichier /var/log/sssd.conf :
Exemple :
[sssd] [sss_ini_add_snippets] (0x0020): Config merge error: File /etc/sssd/sssd.conf did not pass access check. Ignorer.Action: You need to chmod 600 the .conf file.
Exemple :
[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}'. Vérifiez qu'il ne contient pas de fautes de frappe.[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}'. Vérifiez qu'il ne contient pas de fautes de frappe.
Action: Remove the unsupported group match LDAP extensions from sssd.conf.
-
Recherchez des erreurs LDAP /network/auth dans le fichier/var/log/sssd_{DOMAINE}.log.
Exemple :[sssd[be[example.com]]] [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)]
Action: You need to add "ldap_tls_reqcert = never" to sssd.conf.
To increase verbosity of errors, add "debug_level = 9" in sssd.conf under the domain section and restart sssd.
SSSD (autres distributions Linux)
SSSD effectue une recherche utilisateur pour obtenir plus d'informations sur celui-ci lors de son authentification. Pour vous assurer que l'authentification utilisateur fonctionne correctement pour ce client LDAP, vous devez activer Lire les informations utilisateur et Lire les informations sur les groupes pour toutes les unités organisationnelles dont l'option Vérifier les identifiants utilisateur est activée. Pour en savoir plus, consultez Configurer les autorisations d'accès.
Pour connecter un client SSSD au service LDAP sécurisé :
- Installez au minimum la version 1.15.2 de SSSD.
$ sudo apt-get install sssd
- En supposant que vous utilisiez bien les fichiers de clé et de certificat client (/var/ldap-client.crt et /var/ldap-client.key), ainsi que le domaine example.com, modifiez /etc/sssd/sssd.conf selon la configuration suivante :
[sssd]
services = nss, pam
domains = example.com[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
-
Modifiez la propriété et l'autorisation du fichier de configuration :
$ sudo chown root:root /etc/sssd/sssd.conf
$ sudo chmod 600 /etc/sssd/sssd.conf -
Redémarrez SSSD :
$ sudo service sssd restart
Conseil : Si vous utilisez le module SSSD sur des ordinateurs Linux sans adresses IP externes dans Google Compute Engine, vous pouvez quand même vous connecter au service LDAP sécurisé, à condition de disposer d'un accès interne aux services Google. Pour en savoir plus, consultez Configurer l'accès privé à Google.
macOS
Pour connecter le client macOS à des fins d'authentification du compte utilisateur à l'aide du service LDAP sécurisé, procédez comme suit :
Configuration requise
- macOS doit correspondre à la version Catalina 10.15.4 ou ultérieure.
- Un identifiant utilisateur super-administrateur Google est requis pour terminer l'étape 1 de la phase de préparation.
- Vous devez disposer des autorisations d'administrateur local pour effectuer cette configuration.
Sommaire :
Les instructions de cette section expliquent comment configurer et tester manuellement l'authentification macOS à l'aide du service LDAP sécurisé.
Étape 1 : Intégrez macOS en tant que client LDAP dans la console d'administration Google
Pour en savoir plus, consultez Ajouter des clients LDAP ou regardez cette vidéo de démonstration du service LDAP sécurisé. Au cours de ce processus, vous allez également télécharger un certificat client TLS généré automatiquement.
Étape 2 : Importez le certificat dans le trousseau système
- Copiez le certificat (le fichier ZIP téléchargé à l'étape 1) et la clé sur l'ordinateur macOS.
Conseil : Décompressez le fichier pour rechercher les fichiers de certificat et de clé. - Importez la paire de clés dans le trousseau système :
-
Convertissez la clé et le certificat en un fichier PKCS 12 (p12). Exécutez la commande suivante dans le terminal :
openssl pkcs12 -export -out ldap-client.p12 -in ldap-client.crt -inkey ldap-client.key
Conseil : Notez le nom du fichier .p12.
Vous êtes invité par le système à saisir un mot de passe. Saisissez un mot de passe pour chiffrer le fichier p12. -
Ouvrez l'application Trousseaux d'accès.
-
Cliquez sur le trousseau Système.
-
Cliquez sur File > Import Items (Fichier > Importer des éléments).
-
Sélectionnez le fichier ldap-client.p12 créé ci-dessus.
-
Si vous y êtes invité, saisissez le mot de passe administrateur pour autoriser la modification du trousseau système.
-
Saisissez le mot de passe que vous avez créé ci-dessus pour déchiffrer le fichier .p12.
Remarque : Un nouveau certificat et une clé privée associée s'affichent dans la liste des clés. Le nom du certificat peut être LDAP Client (Client LDAP). Notez le nom du certificat pour l'étape suivante ci-dessous.
- Suivez l'étape 6 de la section ldapsearch (macOS) de cet article pour configurer le contrôle des accès pour la clé privée afin d'ajouter les applications spécifiées ci-dessous. Si la clé privée ne s'affiche pas dans la catégorie Tous les éléments, accédez à la catégorie Mes certificats, puis recherchez l'entrée de la clé privée appropriée en développant le certificat correspondant.
Comme indiqué dans les instructions, l'application ldapsearch n'est pertinente que si le dépannage est nécessaire et non à d'autres fins. Elle est généralement supprimée avant d'offrir aux utilisateurs l'accès à macOS.
Les trois applications suivantes doivent être ajoutées à la liste de contrôle des accès :
/System/Library/CoreServices/Applications/Directory Utility
/usr/libexec/opendirectoryd
/usr/bin/dscl
-
-
Ajoutez une ligne au fichier /etc/openldap/ldap.conf en vous assurant que "LDAP Client" (Client LDAP) correspond exactement au nom du certificat affiché dans l'application Trousseau d'accès de macOS après l'importation du fichier .p12 (le nom provient du nom commun du sujet X.509 du certificat généré) :
sudo bash -c 'echo -e "TLS_IDENTITY\tLDAP Client" >> /etc/openldap/ldap.conf'
Étape 3 : Faites pointer l'appareil vers l'annuaire Google pour l'authentification
Ouvrez l'application Directory Utility (Utilitaire d'annuaire) pour créer un nœud d'annuaire LDAP :
- Cliquez sur le cadenas pour apporter des modifications, puis saisissez votre mot de passe.
- Sélectionnez LDAPv3, puis cliquez sur l'icône en forme de crayon pour modifier les paramètres.
- Cliquez sur Nouveau….
- Pour le nom du serveur, saisissez ldap.google.com,sélectionnez Encrypt using SSL (Chiffrer avec SSL), puis cliquez sur Manual (Manuel).
- Sélectionnez le nouveau nom du serveur et cliquez sur Edit… (Modifier).
- Saisissez un nom descriptif tel que LDAP sécurisé Google pour le nom de la configuration.
- Sélectionnez Encrypt using SSL (Chiffrer avec SSL) et assurez-vous que le port est défini sur 636.
- Accédez à l'onglet Search & Mappings (Recherche et mises en correspondance).
- Choisissez RFC2307 dans la liste déroulante Access this LDAPv3 server using (Accéder à ce serveur LDAPv3 à l'aide de).
- Lorsque vous y êtes invité, saisissez les informations du domaine dans Search Base suffix (Suffixe de base de recherche). Saisissez par exemple
dc=zomato,dc=compour le nom de domaine zomato.com. - Cliquez sur OK.
- Configurez les attributs sous le type d'enregistrement Users (Utilisateurs) :
- Dans la section Record Types and Attributes (Types d'enregistrements et attributs), sélectionnez Users (Utilisateurs), puis cliquez sur le bouton +.
- Dans la fenêtre pop-up, sélectionnez Attribute types (Types d'attributs) et GeneratedUID, puis cliquez sur OK pour fermer la fenêtre pop-up.
GeneratedUID doit s'afficher sous "Users" (Utilisateurs) une fois développé.
- Cliquez sur l'ID GeneratedUID, puis sur l'icône + dans la zone à droite.
- Saisissez apple-generateduid dans la zone de texte, puis cliquez sur Enter (Entrée).
- Sous le nœud Users (Utilisateurs), cliquez sur l'attribut NFSHomeDirectory.
- Sur l'écran de droite, remplacez la valeur de cet attribut par
#/Users/$uid$. - Cliquez sur OK, puis saisissez votre mot de passe pour enregistrer les modifications.
- Dans la fenêtre Directory Utility (Utilitaire d'annuaire), configurez la nouvelle configuration LDAP :
- Accédez à l'onglet Search Policy (Règles de recherche).
- Cliquez sur l'icône en forme de cadenas pour apporter des modifications, puis saisissez le mot de passe de l'utilisateur actuel lorsque vous y êtes invité.
- Dans la liste déroulante, faites passer l'option sélectionnée de Search Path (Chemin d'accès de recherche) à Custom path (Chemin d'accès personnalisé).
- Ouvrez l'onglet Authentication (Authentification) et cliquez sur l'icône +.
- Choisissez
/LDAPv3/ldap.google.comdans la liste "Directory Domains" (Domaines de l'annuaire), puis cliquez sur Add (Ajouter). - Cliquez sur le bouton Appliquer, puis saisissez votre mot de passe administrateur si vous y êtes invité.
- Exécutez les quatre commandes suivantes pour désactiver les mécanismes d'authentification DIGEST-MD5, CRAM-MD5, NTLM et GSSAPI SASL. macOS utilisera Simple Bind pour s'authentifier à l'aide du service LDAP sécurisé de Google :
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
- Redémarrez pour recharger la configuration OpenDirectory.
Étape 4 : Créez un compte mobile (permet la connexion hors connexion)
Tout utilisateur Google Workspace ou Cloud Identity peut se connecter à l'aide d'un compte réseau (compte Google) à l'aide de son nom d'utilisateur et de son mot de passe. Ce processus de connexion nécessite une connexion réseau. Si un utilisateur doit se connecter avec ou sans connexion réseau, un compte mobile peut être créé. Un compte mobile vous permet d'utiliser le nom d'utilisateur et le mot de passe de votre compte réseau (compte Google) pour vous connecter, que vous soyez ou non connecté au réseau. Pour en savoir plus, consultez Créer et configurer des comptes mobiles sur Mac.
Pour créer un compte mobile pour les utilisateurs du service LDAP sécurisé :
-
Exécutez la commande suivante pour vous connecter au serveur LDAP sécurisé et configurer un chemin d'accès au répertoire personnel et un ou plusieurs comptes mobiles :
sudo /System/Library/CoreServices/ManagedClient.app/Contents/Resources/createmobileaccount -n $uid -v
Conseil : Remplacez $uid par la partie nom d'utilisateur de l'adresse e-mail associée au compte Google de l'utilisateur. Par exemple, jdupont est la partie nom d'utilisateur de l'adresse jdupont@solarmora.com. -
Lorsque vous êtes invité à saisir le nom d'utilisateur d'administrateur SecureToken, saisissez votre nom d'utilisateur d'administrateur, puis saisissez votre mot de passe dans l'invite suivante. Cette action ajoute $uid à FileVault. et est nécessaire si le disque macOS est chiffré.
Étape 5 : (Facultatif) Définissez les préférences de l'écran de connexion
- En bas à gauche, accédez à System preferences > Users & Groups > Login Options (Préférences système > Utilisateurs et groupes > Options de connexion).
- Déverrouillez le cadenas en fournissant les identifiants de l'administrateur.
- Dans le champ Display login window as (Afficher la fenêtre de connexion en tant que), sélectionnez Name and password (Nom et mot de passe).
Étape 6 : Redémarrez votre appareil et connectez-vous
- Vérifiez que l'appareil est bien connecté à Internet. Si vous n'avez pas de connexion Internet, la connexion de l'utilisateur du service LDAP sécurisé ne pourra pas fonctionner.
Remarque : Une connexion Internet est nécessaire uniquement pour la première connexion. Toute connexion suivante peut se faire sans accès à Internet. - Connectez-vous à l'appareil avec le compte utilisateur configuré pour utiliser le service LDAP sécurisé pour l'authentification.
Les instructions de cette section décrivent comment automatiser la configuration de l'appareil pour vos utilisateurs. Suivez les étapes 1 et 2 ci-dessous sur l'appareil macOS sur lequel vous avez effectué la configuration manuelle au cours de la phase de préparation.
Étape 1 : Créez un profil Mac avec un certificat à l'aide d'Apple Configurator 2
- Installez Apple Configurator 2 sur la machine sur laquelle vous avez configuré manuellement l'authentification macOS avec le service LDAP sécurisé.
- Ouvrez Apple Configurator 2, créez un profil, puis, dans la section "Certificate" (Certificat), cliquez sur "Configure" (Configurer) et importez le fichier .p12 généré précédemment.
Remarque : Assurez-vous que ce fichier .p12 est protégé par un mot de passe. Saisissez ce mot de passe dans la section "Password" (Mot de passe) du certificat.
- Enregistrez ce profil.
- (Pour les appareils équipés de processeurs M1 ou M2, ignorez cette étape et passez à l'étape 5. ) Ouvrez ce profil dans un éditeur de texte, puis ajoutez les lignes suivantes dans le premier tag <dict> :
<key>PayloadScope</key>
<string>System</string>
Ces lignes ont été ajoutées, car Apple Configurator n'est pas encore compatible avec les profils macOS.
- Dans le deuxième tag <dict> et parallèlement aux données de certificat, ajoutez les lignes suivantes :
<key>AllowAllAppsAccess</key>
<true/>
Vous aurez ainsi la garantie que ce certificat sera accessible à toutes les applications.
Étape 2 : Convertissez le fichier de configuration du répertoire (plist) au format XML
Au cours de cette étape, vous allez extraire toutes les configurations manuelles effectuées lors de l'étape 3 de la phase de préparation dans un fichier XML. Avec ce fichier et le profil Mac créé à l'étape 1 ci-dessus, vous pouvez configurer automatiquement d'autres appareils macOS.
- Copiez le fichier /Library/Preferences/OpenDirectory/Configurations/LDAPv3/ldap.google.com.plist sur votre bureau ou ailleurs.
- Convertissez-le au format XML pour pouvoir l'inspecter dans n'importe quel éditeur de texte. Exécutez la commande suivante dans le terminal :
sudo plutil -convert xml1 <path>/ldap.google.com.plist
Vous pouvez accéder au fichier sous la forme<path>/ldap.google.com.plist.
- Modifiez les autorisations du fichier ci-dessus afin de pouvoir ouvrir le fichier XML. Vérifiez qu'il n'est pas vide.
Étape 3 : Créez un script Python pour automatiser la configuration sur les appareils des utilisateurs finaux
Copiez le script Python ci-dessous et enregistrez-le en tant que fichier Python (fichier .py).
Remarque : Cet exemple de script est conçu pour être compatible avec la version 3.10.x de Python. Ce script est fourni en l'état. L'assistance Google ne peut pas vous aider pour les exemples de scripts.
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' ")
Étape 4 : Configurez automatiquement les appareils des utilisateurs finaux
Accédez aux autres appareils macOS que vous souhaitez configurer, puis suivez cette procédure :
- Copiez le fichier de profil Mac généré à l'étape 1, le fichier de configuration XML généré à l'étape 2 et le script Python de l'étape 3 sur l'appareil.
- Pour installer la dépendance nécessaire au script, exécutez la commande suivante :
python3 -m pip install pyobjc-framework-opendirectory - Exécutez la commande suivante :
sudo python </path/to/saved_python_script> </path/to/ldap.google.com.plist generated in step 2> - Pour importer des certificats dans le trousseau système de macOS, double-cliquez sur le fichier de profil Mac généré à l'étape 1, puis saisissez vos identifiants d'administrateur local macOS lorsque vous y êtes invité. Vous êtes ensuite invité à saisir le mot de passe du fichier .p12 que vous avez défini lors de la phase de préparation.
- Redémarrez l'ordinateur macOS.
- Créez des comptes mobiles comme indiqué à l'étape 4 de la phase de préparation, puis définissez éventuellement des préférences supplémentaires décrites à l'étape 5 de la phase de préparation.
- Pour les utilisateurs qui se connectent à macOS à l'aide de leurs identifiants Google, le nom d'utilisateur de leur compte Workspace doit être différent de l'ID utilisateur de leur profil utilisateur macOS, sans quoi la connexion est bloquée.
- Lorsqu'un utilisateur commence à se connecter à macOS à l'aide des identifiants Google, la gestion des mots de passe utilisateur (réinitialisation ou récupération) doit se faire depuis le site Web Google (par exemple, à l'adresse myaccount.google.com ou dans la console d'administration Google). Si vous décidez de gérer les mots de passe à l'aide d'une solution tierce, assurez-vous que le dernier mot de passe est synchronisé avec Google.
- Si l'administrateur crée un utilisateur ou réinitialise le mot de passe d'un utilisateur en ayant activé le paramètre Exiger la modification du mot de passe à la prochaine connexion, l'utilisateur ne peut pas se connecter à Mac à l'aide du mot de passe temporaire défini par l'administrateur.
Solution : l'utilisateur doit se connecter à Google sur un autre appareil (par exemple, son appareil mobile ou un autre ordinateur de bureau), définir un mot de passe permanent, puis se connecter à macOS avec ce nouveau mot de passe. - La connexion Internet de l'appareil Mac doit être opérationnelle, de sorte que l'adresse ldap.google.com soit accessible lors de la première connexion après la configuration ci-dessus. Les connexions ultérieures ne nécessitent pas d'accès à Internet si vous avez configuré un compte mobile.
- L'intégration du service LDAP sécurisé Google avec macOS est testée sur macOS Catalina, Big Sur et Monterey.
Si vous rencontrez des problèmes pour vous connecter au service LDAP sécurisé, suivez les instructions ci-dessous.
Étape 1 : Vérifiez la connexion.
Vérifiez la connexion à l'aide de "odutil".
Exécutez la commande odutil show nodenames dans le terminal.
Vérifiez que l'état de /LDAPv3/ldap.google.com est en ligne. S'il n'est pas en ligne, essayez l'option "telnet".
Vérifiez la connexion à l'aide de "nc".
Exécutez la commande suivante dans le terminal : nc -zv ldap.google.com 636
Si vous ne parvenez pas à vous connecter à Google avec cette méthode, essayez de vous connecter via IPv4.
Vérifiez la connexion avec IPv4.
Vous pouvez modifier la configuration de votre appareil pour qu'il utilise le protocole IPv4 en procédant comme suit :
- Accédez à Préférences Système > Réseau > Wi-Fi > Avancé.
- Dans le menu "Advanced" (Avancé), accédez à l'onglet TCP/IP.
- Dans la liste déroulante, sélectionnez Link-local only (Lien local uniquement) au lieu de Configure IPv6 (Configurer IPv6).
- Cliquez sur OK, puis sur Appliquer pour enregistrer les modifications.
- Vérifiez l'authentification du service via une connectivité ldapsearch et une recherche valide.
Étape 2 : Vérifiez si vous pouvez afficher les objets d'annuaire.
- Ouvrez Directory Utility (Utilitaire d'annuaire), puis l'onglet Directory Editor (Outil de modification d'annuaire).
- Sélectionnez le nœud /LDAPv3/ldap.google.com dans la liste déroulante.
- Vérifiez si vous pouvez voir les utilisateurs et les groupes de votre domaine Google.
Instructions de configuration pour les applications Java
La plupart des applications Java proposant la fonctionnalité LDAP peuvent être configurées afin de s'authentifier à l'aide de certificats client, en installant vos certificats client dans le keystore de l'application. Les fichiers de configuration diffèrent légèrement selon les applications, mais le processus est globalement identique. Cette configuration requiert l'installation d'OpenSSL et d'un environnement d'exécution Java.
Convertissez le certificat et les clés au format Java KeyStore. Vous serez invité à saisir des mots de passe au cours de cette procédure. Sélectionnez un mot de passe sécurisé et utilisez-le à chaque invite. En supposant que vous utilisiez bien le fichier de clés client ldap-client.key :
Si vous utilisez macOS ou Linux, saisissez les commandes suivantes :
$ openssl pkcs12 -export -out java-application-ldap.pkcs12 -in ldap-client.crt -inkey ldap-client.keySi vous utilisez Windows, saisissez les commandes suivantes :
$ certutil -mergepfx ldap-client.crt java-application-ldap.pkcs12Important : Les deux fichiers (<CERT_FILE>.crt et <CERT_FILE>.key) doivent être situés dans le même répertoire. Assurez-vous également que key et crt portent un nom identique, avec une extension différente. Dans cet exemple, nous utilisons les noms ldap-client.crt et ldap-client.key.
Importez le certificat dans le keystore :
$ keytool -v -importkeystore -srckeystore java-application-ldap.pkcs12 -srcstoretype PKCS12 -destkeystore java-application-ldap.jks -deststoretype JKSLes propriétés Java peuvent être configurées de différentes manières en fonction de l'application. Vous pouvez en général les définir grâce à l'option -D sur la ligne de commande "java" utilisée pour démarrer le service. Définissez les propriétés Java pour votre application :
javax.net.ssl.keyStore = /<path-to>/java-application-ldap.jks javax.net.ssl.keyStorePassword = <password selected above>Configurez les paramètres de connexion LDAP de l'application à l'aide des informations contenues dans la section Instructions de configuration de base.
(Facultatif) Utiliser stunnel en tant que proxy
Pour les clients qui ne proposent pas de moyen d'authentification LDAP à l'aide d'un certificat client, vous pouvez utiliser stunnel en tant que proxy.
Configurez stunnel afin qu'il fournisse le certificat client au serveur LDAP et configurez votre client pour qu'il se connecte à stunnel. Dans l'idéal, stunnel doit s'exécuter sur le même serveur que votre application et l'écoute doit être réalisée localement afin de ne pas exposer votre annuaire LDAP au-delà de ce serveur.
Procédez comme suit :
Installez stunnel. Par exemple, sur Ubuntu :
$ sudo apt-get install stunnel4Créez un fichier de configuration /etc/stunnel/google-ldap.conf comprenant les éléments suivants (en supposant que le certificat soit ldap-client.crt et la clé ldap-client.key) :
[ldap]
client = yes
accept = 127.0.0.1:1636
connect = ldap.google.com:636
cert = ldap-client.crt
key = ldap-client.keyPour activer stunnel, modifiez /etc/default/stunnel4 et définissez ENABLED=1.
Redémarrez stunnel.
$ sudo /etc/init.d/stunnel4 restartConfigurez votre application pour qu'elle pointe vers ldap://127.0.0.1:1636.
Vous pouvez remplacer "1636" par un autre port non utilisé si vous modifiez également la ligne accept (accepter) dans le fichier de configuration ci-dessus. Vous devez utiliser LDAP en texte brut sans activer StartTLS/SSL/TLS entre le client et Stunnel, car ceux-ci communiquent localement.
Remarque : Si vous choisissez d'exécuter stunnel sur un serveur distinct, vous devez configurer vos pare-feu afin que seules les applications nécessaires puissent accéder à votre serveur stunnel. Vous pouvez également configurer stunnel de sorte qu'il réalise les écoutes avec TLS, afin que les données échangées entre votre application et les serveurs stunnel soient chiffrées. Les détails de ces deux configurations dépendent de votre environnement.
Étapes suivantes
Après avoir connecté le client LDAP au service LDAP sécurisé, vous devez définir l'état du service sur Activé pour le client LDAP.
Pour connaître la suite de la procédure, consultez 5. Activer les clients LDAP.
Remarque : Si nécessaire, vous pouvez utiliser des outils simples tels que ldapsearch, ADSI ou ldp.exe pour le dépannage si vous rencontrez des erreurs lors de la tentative de connexion de votre client LDAP au service. Pour en savoir plus, consultez Test de connectivité et dépannage.