ateliers:serveurmail:ldap-acl
Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédenteDernière révisionLes deux révisions suivantes | ||
ateliers:serveurmail:ldap:acl [2018/06/27 22:39] – créée okhin | ateliers:serveurmail:ldap-acl [2018/07/01 20:07] – Ajout du fichier ACL okhin | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | Ble | + | ===== ACL pour LDAP ===== |
+ | |||
+ | Voici le fichier commenté et à jour utilisé pour les ACL de l' | ||
+ | Ce fichier peut être utilisé tel quel avec la commande ldapmodify : | ||
+ | |||
+ | $ sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f acl.ldif | ||
+ | |||
+ | Chaque bloc olcAccess est terminé par un ``to * deny`` implicite, il faut donc être exhaustif dans vos ACL. | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | Attention à ne pas vous bloquer dehors et à ne plus pouvoir utiliser votre répertoire. | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | # La base frontend contiens toutes les bases. Donc les ACL s' | ||
+ | # à celle-ci, s' | ||
+ | dn: olcDatabase={-1}frontend, | ||
+ | changetype: modify | ||
+ | replace: olcAccess | ||
+ | # Ici nous validons l' | ||
+ | # et que l' | ||
+ | # changer avec `sudo ldapmodify -Y EXTERNAL -H ldapi:///` par exemple. | ||
+ | # On ajoute ici le droit de modifier la configuration aux personnes | ||
+ | # faisant partie du groupe cn=sudo, | ||
+ | olcAccess: to * | ||
+ | by dn.exact=gidNumber=0+uidNumber=0, | ||
+ | by group.exact=cn=sudo, | ||
+ | by * break | ||
+ | # L' | ||
+ | olcAccess: to dn.exact="" | ||
+ | by * read | ||
+ | # Tout le monde peut lire le contenu de Subschema qui décrit la syntaxe | ||
+ | # utilisée par LDAP | ||
+ | olcAccess: {3}to dn.base=" | ||
+ | by * read | ||
+ | |||
+ | # Les droits d' | ||
+ | dn: olcDatabase={0}config, | ||
+ | changetype: modify | ||
+ | replace: olcAccess | ||
+ | # Seul root - en utilisant -Y EXTERNAL -H ldapi:/// - ainsi que les personnes | ||
+ | # dans le groupe cn=sudo, | ||
+ | # la configuration. | ||
+ | olcAccess: to * | ||
+ | by dn.exact=gidNumber=0+uidNumber=0, | ||
+ | by group.exact=cn=sudo, | ||
+ | by * break | ||
+ | |||
+ | # Ceci est la première base de donnée, et correspond donc au cn: dc=anarcha, | ||
+ | dn: olcDatabase={1}mdb, | ||
+ | changetype: modify | ||
+ | replace: olcAccess | ||
+ | # Les sudo peuvent modifier et gérer l' | ||
+ | # System. | ||
+ | olcAccess: to attrs=userPassword | ||
+ | dn.children=" | ||
+ | by dn.exact=gidNumber=0+uidNumber=0, | ||
+ | by group.exact=cn=sudo, | ||
+ | # Seul l' | ||
+ | # Tout le monde peut essayer de s'en servir dans un but d' | ||
+ | # pas un accès en lecture, mais un accès par les mécanismes d' | ||
+ | # et le reste du monde ne peut rien faire. | ||
+ | olcAccess: to attrs=userPassword | ||
+ | by self write | ||
+ | by anonymous auth | ||
+ | by * none | ||
+ | # Même chose, mais pour un attribut nęcessaire au fonctionnement de Shadow | ||
+ | olcAccess: to attrs=shadowLastChange | ||
+ | by self write | ||
+ | by * read | ||
+ | # La clef SSH e peut être écrite que par l' | ||
+ | olcAccess: to attrs=sshPublicKey | ||
+ | by self write | ||
+ | by * read | ||
+ | # Tout le monde peut lire notre arbre. C'est pour ça que ldapsearch fonctionne. | ||
+ | # Nobody ne peut rien faire | ||
+ | # Et le groupe sudo a tous les pouvoirs | ||
+ | olcAccess: to * | ||
+ | by dn.exact=uid=nobody, | ||
+ | by dn.exact=gidNumber=0+uidNumber=0, | ||
+ | by group.exact=cn=sudo, | ||
+ | by * read | ||
+ | |||
+ | </ | ||
+ | |||
+ | La dernière ligne du fichier DOIT être une ligne vide. A noter qu'au lieu d' |
ateliers/serveurmail/ldap-acl.txt · Dernière modification : 2019/01/24 16:23 de okhin