Je suis très nouveau sur openldap mais extrêmement bien versé dans l'environnement linux / unix. J'essaie de configurer mon tout premier environnement openldap de test en utilisant le guide ici . J'ai également lu la plupart du guide d'administration ici et je dois admettre que c'est beaucoup à prendre.
Donc, en suivant le guide de configuration de base ubuntu, j'ai créé un fichier ldif qui ressemble à ceci:
dn: ou=People,dc=example,dc=com
objectClass: organizationalUnit
ou: People
dn: ou=Groups,dc=example,dc=com
objectClass: organizationalUnit
ou: Groups
dn: cn=engineers,ou=Groups,dc=example,dc=com
objectClass: posixGroup
cn: engineers
gidNumber: 5000
dn: uid=john,ou=People,dc=example,dc=com
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
uid: john
sn: Doe
givenName: John
cn: John Doe
displayName: John Doe
uidNumber: 10000
gidNumber: 5000
userPassword: johnldap
gecos: John Doe
loginShell: /bin/bash
homeDirectory: /home/john
Chaque fois que j'essayais de l'ajouter en utilisant:
$ ldapadd -x -D cn=admin,dc=example,dc=com -W -f add_content.ldif
J'obtiens l'erreur suivante:
adding new entry "cn=engineers,ou=Groups,dc=my-domain,dc=com"
ldap_add: Invalid syntax (21)
additional info: objectClass: value #0 invalid per syntax
adding new entry "uid=john,ou=People,dc=my-domain,dc=com"
ldap_add: Invalid syntax (21)
additional info: objectClass: value #0 invalid per syntax
Les résultats dans google pour cette erreur ne contiennent aucune suggestion utile. Que pourrais-je faire de mal ici?
posixGroup
. Comment rechercher lesobjectClass
es disponibles ?/etc/ldap/slapd.d/
répertoire. J'ai installé openldap à partir des sources.Réponses:
Votre problème est sans aucun doute que vous devez charger le
nis
schéma dans votre serveur LDAP. La procédure à suivre varie selon que vous utilisez leslapd.conf
fichier de configuration hérité ou la nouvelle configuration dynamique hébergée danscn=config
et sauvegardée par unslapd.d
répertoire.En utilisant
slapd.conf
Vous aurez besoin de
include
la définition de schéma dans votreslapd.conf
en ajoutant une ligne le long des lignes de:Cela suppose que le
nis.schema
fichier se trouve sur ce chemin; sinon, modifiez le chemin d'accès de manière appropriée.Vous devrez redémarrer
slapd
pour activer le nouveau schéma.En utilisant
slapd.d
(J'inclus ceci pour être complet, bien que ce ne soit pas directement pertinent pour votre configuration actuelle).
Pour charger un schéma dans
slapd
si vous utilisez lacn=config
configuration dynamique , vous devez utiliserldapadd
. Selon la configuration de vos ACL, la commande peut ressembler à ceci:Cela suppose que votre exécution
slapd
dispose d'une liste de contrôle d'accès permettant l'authentification des «informations d'identification de l'homologue»root
. Si cela ne fonctionne pas, vous devrez fournir un DN de liaison et un mot de passe appropriés à l'aide de-D
et-W
.Aucun redémarrage n'est requis dans ce cas.
la source
openldap
pourquoi ne serais-je pas configuré pour l'utiliserslapd.d
?slapd.conf
versslapd.d
.J'ai récemment rencontré ce problème en suivant le didacticiel Ubuntu OpenLDAP Server . Résolu en supprimant tous les espaces de fin de mes lignes.
la source
Je le corrige en supprimant le
file.ldif
que je veux charger dans openldap (par exemple:)data.ldif
car l'éditeur de textevi
insère parfois un caractère invisible par erreur ou bogue et cela affecte votre fichier ldif. Alors supprimez-le et vous en créez un autre et essayez de télécharger chaque déclaration une par une et vérifiez avec la commandeldapsearch -x -h nameofyourserver -b “dc=whateveris,dc=com”
, au revoir et j'espère vous aider avec cela.la source