Serveur ssh avec authentification ldap

Il faut tout d’abord installer libnss-ldap qui va nous fournir tous les paquets nécessaires:

debian:~# apt-get install libnss-ldap

/etc/libnss-ldap.conf:

base dc=frite,dc=be
uri ldaps://ldap.frite.be
ldap_version 3
port 636
tls_cacertfile /etc/ssl/cacert.pem

Modifier le fichier /etc/nsswitch.conf pour que la recherche d’utilisateurs et de groupes se fasse également sur le ldap:

/etc/nsswitch.conf:

passwd: compat ldap
group: compat ldap
shadow: compat ldap

Modifier le fichier /etc/ldap/ldap.conf en lui indiquant l’emplacement du certificat nécessaire pour le ldaps:

/etc/ldap/ldap.conf

BASE dc=frite,dc=be
URI ldaps://ldap.frite.be
TLS_CACERT /etc/ssl/cacert.pem

Pour l’authentification il faut indiquer à pam de tenir compte des utilisateurs présents sur le ldap.

/etc/pam.d/common-auth:

auth sufficient /lib/security/pam_ldap.so
auth required /lib/security/pam_unix_auth.so try_first_pass

/etc/pam_ldap.conf:

base dc=frite,dc=be
uri ldaps://ldap.frite.be
ldap_version 3
port 636

Si on teste cette configuration l’utilisateur ldap qui va se connecter n’aura pas de répertoire personnel, il faut donc ajouter la ligne suivante au fichier /etc/pam.d/common_session pour que son répertoire personnel soit créé automatiquement lors de sa première connexion:

/etc/pam.d/common_session

session required pam_mkhomedir.so skel=/etc/skel umask=0077
session required pam_unix.so

En cas de problème désactiver nscd:

/etc/init.d/nscd stop



Leave a Reply

You must be logged in to post a comment.