Cet article explique comment migrer des utilisateurs locaux vers des comptes LDAP ; vous pouvez également consulter la configuration de LDAP sur CentOS 7 / RHEL 7.
Cela devrait également fonctionner sur d'autres types de systèmes d'exploitation Linux.
Vous trouverez ci-dessous les détails du domaine LDAP.
Domaine :itzgeek.local
Administrateur :ldapadm
UO :personnes, groupe
Nom du serveur :server.itzgeek.local
Adresse IP :192.168.12.15
Créer des utilisateurs locaux :
Pour tester la migration, nous aurions besoin de quelques comptes locaux disponibles sur la machine. Créons des utilisateurs locaux à l'aide de la commande suivante.
useradd ldpuser1 useradd ldpuser2 useradd ldpuser3
définir le mot de passe pour les utilisateurs créés.
echo "pass" | passwd --stdin ldpuser1 echo "pass" | passwd --stdin ldpuser2 echo "pass" | passwd --stdin ldpuser3
Forfaits :
Installez le package ci-dessous pour prendre en charge la migration des utilisateurs locaux vers LDAP.
yum -y install migrationtools
Exporter des utilisateurs :
Exportez les utilisateurs et groupes créés vers le fichier.
grep "ldpuser" /etc/passwd > /root/users grep "ldpuser" /etc/group > /root/groups
Veuillez répéter les mêmes étapes pour les autres utilisateurs.
Configurer les outils de migration :
Modifiez "/usr/share/migrationtools/migrate_common.ph ” et mettez-le à jour avec les détails du domaine.
$DEFAULT_MAIL_DOMAIN = "itzgeek.local"; $DEFAULT_BASE = "dc=itzgeek,dc=local";
Remplacez-le par 1 pour prendre en charge des classes d'objets plus générales telles que person.
$EXTENDED_SCHEMA = 1;
Convertir les utilisateurs et les groupes :
Convertissez maintenant le fichier des utilisateurs et des groupes au format LDAP Data Interchange Format (LDIF).
/usr/share/migrationtools/migrate_passwd.pl /root/users /root/users.ldif /usr/share/migrationtools/migrate_group.pl /root/groups /root/groups.ldif
Importez les utilisateurs et les groupes dans la base de données LDAP :
Importez maintenant les utilisateurs locaux dans la base de données LDAP à l'aide de la commande suivante.
ldapadd -x -W -D "cn=ldapadm,dc=itzgeek,dc=local" -f /root/users.ldifLa commande suivante vous demandera d'entrer un mot de passe racine LDAP (ldapadm ) Compte.
Sortie :
Enter LDAP Password: adding new entry "uid=ldpuser1,ou=People,dc=itzgeek,dc=local" adding new entry "uid=ldpuser2,ou=People,dc=itzgeek,dc=local" adding new entry "uid=ldpuser3,ou=People,dc=itzgeek,dc=local"
Importez maintenant les groupes locaux dans la base de données LDAP à l'aide de la commande suivante.
ldapadd -x -W -D "cn=ldapadm,dc=itzgeek,dc=local" -f /root/groups.ldifLa commande suivante vous demandera d'entrer un mot de passe racine LDAP (ldapadm ) Compte.
Sortie :
Enter LDAP Password: adding new entry "cn=ldpuser1,ou=Group,dc=itzgeek,dc=local" adding new entry "cn=ldpuser2,ou=Group,dc=itzgeek,dc=local" adding new entry "cn=ldpuser3,ou=Group,dc=itzgeek,dc=local"
Tester le serveur LDAP :
Exécutez la commande suivante pour rechercher un utilisateur "ldpuser1 ” dans LDAP.
ldapsearch -x cn=ldpuser1 -b dc=itzgeek,dc=local
Sortie :
# extended LDIF # # LDAPv3 # base <dc=itzgeek,dc=local> with scope subtree # filter: cn=ldpuser1 # requesting: ALL # # ldpuser1, People, itzgeek.local dn: uid=ldpuser1,ou=People,dc=itzgeek,dc=local uid: ldpuser1 cn: ldpuser1 sn: ldpuser1 mail: [email protected] objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson objectClass: posixAccount objectClass: top objectClass: shadowAccount userPassword:: e2NyeXB0fSQ2JEdXTDV6UnlqJFpzU1RiYzBjUTVsUjZmTS9TMVRZd2pNY2pTWUw vLmZVbnZKSUxhSWdEb2MxMkJYVTVVd0V2SWVKNXN4bHZlR0x3SGRidjc2cjh2SzZQOERmSmUzT08w shadowLastChange: 17114 shadowMin: 0 shadowMax: 99999 shadowWarning: 7 loginShell: /bin/bash uidNumber: 1000 gidNumber: 1000 homeDirectory: /home/ldpuser1 # ldpuser1, Group, itzgeek.local dn: cn=ldpuser1,ou=Group,dc=itzgeek,dc=local objectClass: posixGroup objectClass: top cn: ldpuser1 userPassword:: e2NyeXB0fXg= gidNumber: 1000 # search result search: 2 result: 0 Success # numResponses: 3 # numEntries: 2
Imprimer toutes les informations de l'utilisateur.
ldapsearch -x -b dc=itzgeek,dc=local '(objectclass=*)'
C'est tout.