Authentification LDAP depuis le client GNU / Linux
La procédure suivante propose l'intégration d'un client Ubuntu 15.04 vivid à jour :
root@pclinux:/home/eole# apt-get update && apt-get upgrade
L'adresse du poste client est obtenu par DHCP et le nom de machine du module Scribe est résolue.
Configuration de l'authentification LDAP
http://wiki.debian.org/fr/LDAP/NSS
Installation de libnss-ldapd
L'installation de libnss-ldapd se fait à l'aide de la commande apt-get install
:
root@pclinux:/home/eole# apt-get install libnss-ldapd
Des paquets supplémentaires seront installés : ldap-utils
libpam-ldapd
nscd
nslcd
nslcd-utils
Truc & astuce
La configuration de libnss-ldapd
et nslcd
est interactive en fin d'installation.
Pour une configuration manuelle avec édition des fichiers de configuration il faut ajouter l'option -y à la commande apt-get install
:
root@pclinux:/home/eole# apt-get -y install libnss-ldapd
Configuration interactive
Si l'installation 0 question n'a pas été adoptée 3 écrans permettent, à la fin de l'installation , de configurer le service :
configuration de
nslcd
: saisir l'adresse ou le nom de machine du module Scribe, il ne faut pas omettre le / à la fin, le port peut être spécifié ;
configuration de
nslcd
: saisir le nom distinctif de la base de recherche, saisiro=gouv, c=fr
;
configuration
nsswitch
des ressources à chercher dans l'annuaire LDAP : cocherpasswd
,group
etshadow
;
Configuration manuelle
La configuration peut-être réalisée ou adaptée en éditant les fichiers suivants :
/etc/nslcd.conf
# The location at which the LDAP server(s) should be reachable.
uri ldap://scribe/
# The search base that will be used for all queries.
base o=gouv,c=fr
/etc/nsswitch.conf
passwd: compat ldap
group: compat ldap
shadow: compat ldap
Test de liaison avec l'annuaire LDAP :
root@pclinux:/home/eole# ldapsearch -h scribe:389 -b o=gouv,c=fr -x uid=utilisateurScribe
Exemple
root@pclinux:/home/eole# ldapsearch -h scribe:389 -b o=gouv,c=fr -x uid=test.prof
uid: test.prof
uidNumber: 10034
gidNumber: 10001
homeDirectory: /home/t/test.prof
sambaLogonTime: 0
sambaLogoffTime: 2147483647
sambaKickoffTime: 2147483647
sambaPwdCanChange: 0
sambaSID: S-1-5-21-1756604377-3768680913-3336469871-21068
sambaPrimaryGroupSID: S-1-5-21-1756604377-3768680913-3336469871-21003
sambaProfilePath: \\scribe\netlogon\profil
sambaHomePath: \\scribe\test.prof\perso
sambaHomeDrive: U:
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: posixAccount
objectClass: shadowAccount
objectClass: inetOrgPerson
objectClass: sambaSamAccount
objectClass: administrateur
objectClass: ENTPerson
objectClass: ENTAuxEnseignant
objectClass: radiusprofile
cn: test prof
sn: prof
givenName: test
displayName: test prof
gecos: test prof
LastUpdate: 20151107
ENTPersonLogin: test.prof
ENTPersonJointure: ENT
ENTPersonProfils: enseignant
ENTPersonNomPatro: prof
codecivilite: 1
ENTPersonSexe: M
personalTitle: M.
intid: 12
radiusTunnelType: VLAN
radiusFilterId: Enterasys:version=1:policy=Enterprise User
radiusTunnelMediumType: IEEE-802
mail: test.prof@etb1.ac-test.fr
mailHost: localhost
mailDir: /home/mail/test.prof/
typeadmin: 0
loginShell: /bin/bash
sambaAcctFlags: [U]
sambaPwdLastSet: 1447316673
sambaPwdMustChange: 1447316673
shadowLastChange: 16751
# search result
search: 2
result: 0 Success
# numResponses: 2
# numEntries: 1
root@pclinux:/home/eole# getent passwd utilisateurScribe
utilisateurScribe:x:10034:10001:test prof:/home/u/utilisateurScribe:/bin/bash
root@pclinux:/home/eole#
Exemple
root@pclinux:/home/eole# getent passwd test.prof
test.prof:x:10034:10001:test prof:/home/t/test.prof:/bin/bash
root@pclinux:/home/eole#
Tester la prise en compte des utilisateurs
# ssh test.prof@10.1.2.52
test.prof@10.1.2.52's password:
Welcome to Ubuntu 15.04 (GNU/Linux 3.19.0-15-generic x86_64)