informatique:reseau:ldap:ppolicy

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
informatique:reseau:ldap:ppolicy [2020/11/23 11:31] – [Installation] bn8informatique:reseau:ldap:ppolicy [2024/04/23 10:48] (Version actuelle) bn8
Ligne 3: Ligne 3:
 ===== Installation ===== ===== Installation =====
  
-Il faut d'abord charger le module //ppolicy// : +Il faut d'abord charger le module //ppolicy// : <code bash>ldapmodify -Y EXTERNAL -H ldapi:/// << EOF
-  * Créer le fichier ///tmp/load-module.ldif// : <code bash>cat << EOF > /tmp/load-module.ldif+
 dn: cn=module{0},cn=config dn: cn=module{0},cn=config
 changetype: modify changetype: modify
Ligne 10: Ligne 9:
 olcModuleLoad: ppolicy olcModuleLoad: ppolicy
 EOF</code> EOF</code>
-  * Jouer ce LDIF via //ldapmodify// : <code bash>ldapmodify -x -D cn=admin,cn=config -W -f /tmp/load-module.ldif 
-# Ou : 
-ldapmodify -Y EXTERNAL -H ldapi:/// -f /tmp/load-module.ldif</code> 
  
-Il faut ensuite ajouter le schéma //ppolicy// : <code bash>ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/ppolicy.ldif</code>+Il faut ensuite ajouter le schéma //ppolicy// **(uniquement avant OpenLDAP 2.5, Debian Bookworm ou Bullseye backports)** : <code bash>ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/ppolicy.ldif</code>
  
-Il faut ensuite activer ce module pour votre //database// : +Il faut ensuite activer ce module pour votre //database// : <code bash>ldapadd -Y EXTERNAL -H ldapi:/// << EOF 
-  * Créer le fichier ///tmp/config-module.ldif// : <code bash>cat << EOF > /tmp/config-module.ldif +dn: olcOverlay=ppolicy,olcDatabase={1}mdb,cn=config
-dn: olcOverlay={0}ppolicy,olcDatabase={1}mdb,cn=config+
 objectclass: olcOverlayConfig objectclass: olcOverlayConfig
 objectclass: olcPPolicyConfig objectclass: olcPPolicyConfig
-olcoverlay: {0}ppolicy+olcoverlay: ppolicy
 olcppolicydefault: cn=default,ou=ppolicies,dc=example,dc=com olcppolicydefault: cn=default,ou=ppolicies,dc=example,dc=com
 olcppolicyforwardupdates: FALSE olcppolicyforwardupdates: FALSE
Ligne 27: Ligne 22:
 olcppolicyuselockout: FALSE olcppolicyuselockout: FALSE
 EOF</code> EOF</code>
-  * Jouer ce LDIF avec //ldapadd// : <code bash>ldapadd -x -D cn=admin,cn=config -W -f /tmp/config-module.ldif 
-# Ou : 
-ldapadd -Y EXTERNAL -H ldapi:/// -f /tmp/config-module.ldif</code> 
  
-Il faut ensuite ajouter l'objet LDAP dans votre base LDAP implémentant la politique par défaut des mots de passes : +**Paramètres de configuration au niveau de la database :** 
-  * Créer le fichier ///tmp/add-default-ppolicy.ldif// : <code bash>cat << EOF > /tmp/add-default-ppolicy.ldif+  * **olcPPolicyHashCleartext :** si ''TRUE'', les mots de passes soumis en clair lors d'une opération d'ajout ou de modification seront hâché (avec le type par défaut du serveur). 
 +  * **olcPPolicyUseLockout :** Bien que le serveur refusera toujours la connexion avec un compte bloqué (erreur //AccountLocked//), si ce paramètre vaut ''TRUE'', le serveur retournera le code d'erreur spécifique ''AccountLocked''
 +  * **olcPPolicyForwardUpdates (serveur esclave uniquement) :** si ''TRUE'', les échecs de connexions (et autres modifications d'attributs opérationnels) sur le serveur seront transmis au serveur maître. **Note:** pour fonctionner, cette fonctionnalité nécessite que le paramètre ''olcUpdateRef'' et le [[chain|chaining]] soient configurés sur la database. Par ailleurs, les modifications des attributs opérationnels seront faites avec l'utilisateur LDAP configuré dans le [[chain|chaining]] et il est important que les ACLs lui autorisent la modification de ces attributs (droit ''manage''). 
 + 
 +Il faut ensuite ajouter l'objet LDAP dans votre base LDAP implémentant la politique par défaut des mots de passes : <code bash>ldapadd -Y EXTERNAL -H ldapi:/// << EOF
 dn: ou=ppolicies,dc=example,dc=com dn: ou=ppolicies,dc=example,dc=com
 objectclass: organizationalUnit objectclass: organizationalUnit
Ligne 60: Ligne 56:
 pwdSafeModify: FALSE pwdSafeModify: FALSE
 EOF</code> EOF</code>
- 
-  * Jouer ce LDIF avec //ldapadd// : <code bash>ldapadd -x -D cn=admin,dc=example,dc=com -W -f /tmp/add-default-ppolicy.ldif</code> 
  
 <note important>La configuration de la politique par défaut proposée ci-dessus n'active pour ainsi dire aucune protection fourni par cette overlay. Il est conseillé d'ajuster les différents paramètres de la politique en fonction du besoin (voir ci-dessous).</note> <note important>La configuration de la politique par défaut proposée ci-dessus n'active pour ainsi dire aucune protection fourni par cette overlay. Il est conseillé d'ajuster les différents paramètres de la politique en fonction du besoin (voir ci-dessous).</note>
  
-Pour plus d'informations, [[https://www.zytrax.com/books/ldap/ch6/ppolicy.html||consulter cette documentation du module]].+Pour plus d'informations, [[https://www.zytrax.com/books/ldap/ch6/ppolicy.html|consulter cette documentation du module]].
 ===== Configuration de la politique de mot de passe ===== ===== Configuration de la politique de mot de passe =====
  
Ligne 105: Ligne 99:
     * **pwdMinAge** : durée minimale en secondes entre deux changements de mot de passe. Par défaut : ''0'', c'est à dire qu'il n'y a pas de durée minimale.     * **pwdMinAge** : durée minimale en secondes entre deux changements de mot de passe. Par défaut : ''0'', c'est à dire qu'il n'y a pas de durée minimale.
     * **pwdMinLength** : longeur minimale d'un mot de passe. Par défaut : ''0'', c'est à dire qu'il n'y a pas de longeur minimale. **Note :** Si le mot de passe est fourni hashé lors du changement, ce test ne peut être réalisé et la politique définie par **pwdCheckQuality** s'applique alors.     * **pwdMinLength** : longeur minimale d'un mot de passe. Par défaut : ''0'', c'est à dire qu'il n'y a pas de longeur minimale. **Note :** Si le mot de passe est fourni hashé lors du changement, ce test ne peut être réalisé et la politique définie par **pwdCheckQuality** s'applique alors.
-    * **pwdMustChange :** booléen définissant si l'utilisateur doit changer son mot de passe après qu'un administrateur est débloqué son compte (utile uniquement si ''pwdLockout==TRUE''). **Note :** si l'attribut **pwdReset** est défini sur le compte, sa valeur outrepasse ce paramètre.+    * **pwdMustChange :** booléen définissant si l'utilisateur doit changer son mot de passe après qu'un administrateur ait débloqué son compte (utile uniquement si ''pwdLockout==TRUE''). **Note :** si l'attribut **pwdReset** est défini sur le compte, sa valeur outrepasse ce paramètre.
       * ''FALSE'' (par défaut) : l'utilisateur n'a pas à changer son mot de passe       * ''FALSE'' (par défaut) : l'utilisateur n'a pas à changer son mot de passe
       * ''TRUE'' : l'utilisateur doit changer son mot de passe       * ''TRUE'' : l'utilisateur doit changer son mot de passe
  • informatique/reseau/ldap/ppolicy.1606131079.txt.gz
  • Dernière modification : 2020/11/23 11:31
  • de bn8