Si vous centralisez la gestion de vos utilisateurs dans un LDAP comme Oracle Unified Directory pour vos bases de données Oracle, il est naturel que vous en fassiez de même de vos utilisateurs Linux/Unix. En fait, cette configuration vient même probablement bien avant parmi les étapes qui améliorent la gestion de vos utilisateurs/administrateurs.
La bonne nouvelle c’est que, ici encore, la configuration n’est qu’une question de minutes. C’est le sujet de ce premier article consacré à l’utilisation de l’authentification LDAP via le « PAM LDAP » de RHEL6 et Oracle Linux 6 avec Oracle Unified Directory. Vous n’aurez aucun mal à l’adapter à d’autres versions et à d’autres annuaires.
Un prochain article présentera comment déléguer l’accès à des comptes et des commandes tels que root
via la configuration de sudo
dans l’annuaire. Mais c’est déjà une autre histoire…
Installer et configurer le PAM LDAP
Pour installer le module d’authentification LDAP sur Oracle Linux 6 ou Redhat Enterprise Linux 6, vous installerez le rpm nss-pam-ldapd
. Si vous avez un référentiel YUM
, lancez simplement la commande ci-dessous:
yum install nss-pam-ldapd
Note:
Sinon, installez un référentielYUM
! Tout ce dont vous avez besoin, à peu de chose prêt c’est un serveur Apache…
La configuration de votre serveur Linux n’est guère plus complexe. Il suffit d’utiliser la commande authconfig
comme ci-dessous, ou, si vous préférez la configuration à l’aide d’un assistant, authconfig-tui
:
authconfig
--enablemkhomedir --enableldap
--enableldapauth --ldapserver=blue:1389
--ldapbasedn="dc=arkzoyd,dc=com" --updateall
Les éléments que vous utiliserez sont :
--enableldap
pour indiquer que vous acceptez que la gestion des utilisateurs s’appuie sur un LDAP--enableldapauth
pour indiquer que vous acceptez que l’authentification des utilisateurs s’appuie sur un LDAP--ldapserver
pour indiquer l’adresse de votre LDAP--enableldaptls
et--enableldapstarttls
pour indiquer que vous voulez utiliserTLS
pour sécuriser le lien avec le LDAP. Notez que vous devrez, pour une utilisation en production, non seulement activer cette sécurité; mais également enregistrer le certificat du serveur LDAP en éditant/etc/pam_ldap.conf
et en activant les paramètrestls_checkpeer yes
ettls_cacertfile
--ldapbasedn
définit le DN de base de votre configuration--updateall
indique que vous voulez que la configuration soit mise à jour--enablecache
et--enablecachecreds
pour assurer l’accès à vos serveurs, même si le LDAP est indisponible. On préfèrera ne pas utiliser ces deux dernières options. Si vous n’avez plus de LDAP, vous aurez des sérieux problèmes plus sérieux que vos applications ou vos serveurs Oracle.
Mettre à jour les entrées dans le LDAP
Vous pourrez alors définir des groupes et des utilisateurs Linux/Unix dans votre annuaires. Par exemple, un groupe qui possède la classe auxiliaire posixGroup
et a un attribut gidNumber
est un groupe Posix. Voici un exemple de fichier LDIF qui fonctionne dans la configuration décrite précédemment et définit un groupe « SA » :
dn: cn=SA,ou=Groups,dc=arkzoyd,dc=com
objectClass: top
objectClass: groupOfUniqueNames
objectClass: posixGroup
cn: SA
gidNumber: 3000
Voici un autre exemple de groupe secondaire dans lequel vous listez les utilisateurs avec l’attribut uniqueMember
:
dn: cn=MailUsers,ou=Groups,dc=arkzoyd,dc=com
objectClass: groupOfUniqueNames
objectClass: posixGroup
objectClass: top
cn: MailUsers
gidNumber: 3001
uniqueMember: cn=Gregory,ou=People,dc=arkzoyd,dc=com
Par ailleurs, vous modifierez les classes auxiliaires et les attributs des utilisateurs existant pour leur permettre de se connecter. Voici un exemple avec l’utilisateur Gregory auquel vous ajouterez les classes shadowAccount
et posixAccount
et les attributs gidNumber
, uidNumber
et homeDirectory
:
dn: cn=Gregory,ou=People,dc=arkzoyd,dc=com
changetype: modify
add: objectClass
objectClass: shadowAccount
dn: cn=Gregory,ou=People,dc=arkzoyd,dc=com
changetype: modify
add: objectClass
objectClass: posixAccount
-
add: gidNumber
gidNumber: 3000
-
add: uidNumber
uidNumber: 3001
-
add: homeDirectory
homeDirectory: /home/Gregory
Tester la configuration
Il ne reste plus qu’à tester la configuration :
ssh Gregory@yellow
Gregory@yellow's password:
$ id
uid=3001(Gregory) gid=3000(SA) groups=3000(SA),3001(MailUsers)
Et l’enrichir en fonction de vos besoins. Pour avoir une description des éléments de configuration de votre LDAP, reportez-vous à la RFC 2307. C’est expérimental mais ça fait un moment que ça dure…
2 réflexions sur “RHEL6/OL6 et Oracle Unified Directory (1/2) : Authentification LDAP”
Je vais la laisser ! Elle n’est pas vonlontaire mais très jolie…
« vous aurez des sérieux problèmes plus sérieux » 😉
Les commentaires sont fermés.