yum install openldap-servers migrationtools
mv /etc/openldap/slapd.conf.bak /etc/openldap/slapd.conf
mv /etc/openldap/slapd.d /root/
Création du mot de passe admin :
slappasswd -v -s motdepasse -h {CRYPT}
{CRYPT}IFSj23BQfK0Y6
Copier la sortie de cette commande
vi /etc/openldap/slapd.conf
modifier les lignes suivantes :
suffix "dc=zone-test-centos,dc=localdomain"
rootdn "cn=admin,dc=zone-test-centos,dc=localdomain"
rootpw {CRYPT}IFSj23BQfK0Y6
access to *
by dn.exact="cn=admin,dc=zone-test-centos,dc=localdomain" read
by * none
vi /var/lib/ldap/DB_CONFIG
# Note: most DB_CONFIG settings will take effect only upon rebuilding
# the DB environment.
# one 0.25 GB cache
set_cachesize 0 268435456 1
# Data Directory
#set_data_dir db
# Transaction Log settings
set_lg_regionmax 262144
set_lg_bsize 2097152
#set_lg_dir logs
# Note: special DB_CONFIG flags are no longer needed for "quick"
# slapadd(8) or slapindex(8) access (see their -q option).
slapindex
chown ldap:ldap -R /var/lib/ldap
mkdir -p /etc/openldap/slapd.d
slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d
chown ldap:ldap -R /etc/openldap/slapd.d
/etc/init.d/slapd restart
vi /etc/openldap/ldap.conf
BASE dc=zone-test-centos,dc=localdomain
URI ldap://localhost
cd /usr/share/migrationtools
vi migrate_common.ph
modifier les lignes suivantes :
$DEFAULT_MAIL_DOMAIN = "zone-test-centos.localdomain";
$DEFAULT_BASE = "dc=zone-test-centos,dc=localdomain";
$EXTENDED_SCHEMA = 1
Puis executer le script pour une migration automatique :
./migrate_all_online.sh
Migration manuel :
./migrate_base.pl
copier la sortie dans un fichier base.ldif
Ajouter la base dans votre annuaire ldap :
ldapadd -x -D "cn=admin,dc=zone-test-centos,dc=localdomain" -w motdepasse -f /root/base.ldif
Création du fichier group.ldif à partir du fichier /etc/group
./migrate_group.pl /etc/group /root/group.ldif
Ajouter les groupes dans votre annuaire ldap :
ldapadd -x -D "cn=admin,dc=zone-test-centos,dc=localdomain" -w motdepasse -f /root/group.ldif
vi ./migrate_passwd.pl
commenter les lignes suivantes :
if ($DEFAULT_REALM) {
print $HANDLE "objectClass: kerberosSecurityObject\n";
}
if ($DEFAULT_REALM) {
print $HANDLE "krbName: $user\@$DEFAULT_REALM\n";
}
Création du fichier passwd.ldif pour les utilisateurs :
ETC_SHADOW=/etc/shadow ./migrate_passwd.pl /etc/passwd /root/passwd.ldif
Ajouter des utilisateurs :
ldapadd -x -D "cn=admin,dc=zone-test-centos,dc=localdomain" -w motdepasse -f /root/passwd.ldif
Rechercher des infos sur un compte utilisateur dans votre annuaire ldap :
ldapsearch -x -b "dc=zone-test-centos,dc=localdomain" -H ldap://127.0.0.1:389 -D "cn=admin,dc=zone-test-centos,dc=localdomain" -w motdepasse -LLL "(cn=sam)"
Erreur :
bdb_db_open: warning - no DB_CONFIG file found in directory /var/lib/ldap: (2).
Expect poor performance for suffix "dc=zone-test-centos,dc=localdomain".
Il faut créer le fichier DB_CONFIG dans /var/lib/ldap. N'oubliez pas de lui donner les droits de l'utilisateur ldap.
Futur de l'article :
Comment sécuriser LDAP avec TLS
Installation de freeradius pour une authentification avec LDAP
Réplication de l'annuaire
