Eu sou muito novo no openldap, mas extremamente versado no ambiente linux / unix. Estou tentando configurar meu primeiro ambiente openldap de teste usando o guia aqui . Eu também li a maior parte do guia de administração aqui e tenho que admitir, é muito para absorver.
Então, seguindo o guia de configuração básica do ubuntu, criei um arquivo ldif parecido com este:
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
Sempre que eu tentava adicioná-lo usando:
$ ldapadd -x -D cn=admin,dc=example,dc=com -W -f add_content.ldif
Estou tendo o erro a seguir:
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
Os resultados no google para esse erro não trazem sugestões úteis. O que eu poderia estar fazendo de errado aqui?
posixGroup
. Como faço para consultar osobjectClass
es disponíveis ?/etc/ldap/slapd.d/
diretório. Eu instalei o openldap da fonte.Respostas:
Seu problema é, sem dúvida, que você precisa carregar o
nis
esquema no servidor LDAP. Como fazer isso depende se você está usando oslapd.conf
arquivo de configuração herdado ou a configuração dinâmica mais recente hospedadacn=config
e apoiada por umslapd.d
diretório.Usando
slapd.conf
Você precisará
include
da definição do esquema no seuslapd.conf
adicionando uma linha ao longo das linhas de:Isso pressupõe que o
nis.schema
arquivo esteja localizado nesse caminho; caso contrário, modifique o caminho adequadamente.Você precisará reiniciar
slapd
para ativar o novo esquema.Usando
slapd.d
(Estou incluindo isso para garantir a integridade, embora não seja diretamente relevante para sua configuração atual).
Para carregar um esquema,
slapd
se você estiver usando acn=config
configuração dinâmica , você usarialdapadd
. Dependendo de como suas ACLs estão configuradas, o comando pode ser assim:Isso pressupõe que sua execução
slapd
tenha uma ACL permitindo autenticação de "credenciais de mesmo nível"root
. Se isso não funcionar, você precisará fornecer um DN e senha de ligação adequados usando-D
e-W
.Não é necessário reiniciar neste caso.
fonte
openldap
por que não estaria configurado para usarslapd.d
?slapd.conf
paraslapd.d
.Recentemente, encontrei esse problema ao seguir o tutorial do Ubuntu OpenLDAP Server . Resolvi removendo todo o espaço em branco das minhas linhas.
fonte
Eu o corrigi excluindo o
file.ldif
que eu quero cobrar no openldap (por exemplo:)data.ldif
porque o editor de textovi
às vezes insere caracteres invisíveis por erro ou bug e isso afeta o seu arquivo ldif. Então exclua-o e crie outro e tente carregar cada instrução uma por uma e verifique com o comandoldapsearch -x -h nameofyourserver -b “dc=whateveris,dc=com”
adeus e espero ajudá-lo com isso.fonte