Utilisation des services de noms et d'annuaire Oracle® Solaris 11.2 : LDAP

Quitter la vue de l'impression

Mis à jour : Juillet 2014
 
 

Configuration PAM

Le module pam_ldap est une option du module PAM qui permet à LDAP d'authentifier les clients et d'effectuer la gestion des comptes. Si vous avez configuré le mode d'authentification du profil client sur simple et le niveau d'identification sur self, vous devez également activer le module pam_krb.

Configuration PAM pour une utilisation de UNIX policy

Le fichier /etc/pam.conf est utilisé comme fichier de configuration par défaut pour l'utilisation de la policy UNIX par PAM. En règle générale, il est inutile d'apporter des modifications à ce fichier.

Toutefois, si la durée de vie des mots de passe et la stratégie correspondante contrôlées par les données shadow sont requises, le client doit être configuré et exécuté à l'aide d'un commutateur enableShadowUpdate. Reportez-vous à la section Initialisation d'un client LDAP pour obtenir un exemple d'initialisation d'un client LDAP afin d'activer la mise à jour des données shadow.

Pour plus d'informations sur le fichier de configuration, reportez-vous à la page de manuel pam.conf(4).

Configuration PAM pour une utilisation de LDAP server_policy

Pour configurer PAM en vue de l'utilisation de server_policy LDAP, suivez les exemples de la section Exemple de fichier pam_conf utilisant le module pam_ldap pour la gestion des comptes. A l'aide de ce fichier d'échantillon, suivez les étapes supplémentaires suivantes :

  • Ajoutez les lignes qui contiennent pam_ldap.so.1 au fichier /etc/pam.conf du client.

  • Si un module PAM dans le fichier échantillon spécifie l'indicateur binding et l'option server_policy, utilisez le même indicateur et la même option pour le module correspondant dans le fichier /etc/pam.conf du client.

    L'indicateur de contrôle binding permet à un mot de passe local de remplacer un mot de passe (LDAP) distant. Par exemple, si un compte utilisateur est détecté à la fois sur les fichiers locaux et l'espace de noms LDAP, le mot de passe associé au compte local est prioritaire sur le mot de passe distant. Par conséquent, si le mot de passe local arrive à expiration, l'authentification échoue même si le mot de passe LDAP distant est toujours valide.

    L'option server_policy ordonne à pam_unix_auth, pam_unix_account et pam_passwd_auth d'ignorer un utilisateur trouvé dans l'espace de noms LDAP et d'autoriser pam_ldap à réaliser des opérations d'authentification ou de validation de compte. Dans le cas de pam_authtok_store , un nouveau mot de passe est transmis au serveur LDAP sans chiffrement. Le mot de passe est donc stocké dans le répertoire en fonction du schéma de chiffrement de mot de passe configuré sur le serveur. Pour plus d'informations, reportez vous aux pages de manuel pam.conf(4) et pam_ldap(5).

  • Ajoutez l'option server_policy à la ligne qui contient le module de service pam_authtok_store.so.1.


Remarque -  Auparavant, avec la gestion des comptes pam_ldap, tous les utilisateurs devaient fournir un mot de passe de connexion pour l'authentification à chaque fois qu'ils se connectaient au système. Par conséquent, les types de connexion ne nécessitant pas la saisie du mot de passe, tels que ssh, échouent.

Vous pouvez maintenant effectuer la gestion des comptes et récupérer le statut du compte des utilisateurs sans authentification au serveur d'annuaire au moment de la connexion.

Le nouveau contrôle sur le serveur d'annuaire est 1.3.6.1.4.1.42.2.27.9.5.8 . Ce contrôle est activé par défaut. Pour modifier la configuration du contrôle par défaut, ajoutez les instructions de contrôles d'accès (ACI) sur le serveur d'annuaire. Par exemple :

dn: oid=1.3.6.1.4.1.42.2.27.9.5.8,cn=features,cn=config
objectClass: top
objectClass: directoryServerFeature
oid:1.3.6.1.4.1.42.2.27.9.5.8
cn:Password Policy Account Usable Request Control
aci: (targetattr != "aci")(version 3.0; acl "Account Usable";
allow (read, search, compare, proxy)
(groupdn = "ldap:///cn=Administrators,cn=config");)
creatorsName: cn=server,cn=plugins,cn=config
modifiersName: cn=server,cn=plugins,cn=config