web-dev-qa-db-fra.com

Erreur OpenLDAP lors de la configuration de StartTLS: ldap_modify: Autre erreur (par exemple, spécifique à l'implémentation) (80)

Configuration de StartTLS pour OpenLDAP.

  • Serveur Ubuntu 16.04
  • Slapd 2.4.42 + dfsg-2ubuntu3.2

J'ai ma propre autorité de certification interne qui fournit des certificats.

J'ai configuré les certificats et la clé: dans/etc/ssl/certs:

-rw-r----- 1 root ssl-cert   3268 Jul 14 23:02 ldaptest.roenix.net.cert.pem

lrwxrwxrwx 1 root root         51 Jul  2 13:22 roenix.ca.cert.pem -> /usr/local/share/ca-certificates/roenix.ca.cert.crt

dans/etc/ssl/private:

-rw-r----- 1 root ssl-cert 3243 Jul 14 23:01 ldaptest.roenix.net.key.pem

J'ai correctement défini le nom d'hôte:

@ldaptest:/etc/ssl/certs$ hostname -f
ldaptest.roenix.net

J'essaie d'ajouter la configuration à slapd avec ce LDIF:

dn: cn=config
changetype: modify
add: olcTLSCACertificateFile
olcTLSCACertificateFile: /etc/ssl/certs/roenix.ca.cert.pem
-
add: olcTLSCertificateFile
olcTLSCertificateFile: /etc/ssl/certs/ldaptest.roenix.net.cert.pem
-
add: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/ssl/private/ldaptest.roenix.net.key.pem

Avec la commande:

Sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f certinfo.ldif

Je reçois cette erreur:

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry "cn=config"
ldap_modify: Other (e.g., implementation specific) error (80)

Toute aide grandement appréciée!

3
Ph4edrus

J'ai résolu ce problème en modifiant l'ordre dans le fichier file.ldif comme ceci:

dn: cn = config
changetype: modifier
remplace: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile:/etc/openldap/certs/your_key

dn: cn = config
changetype: modifier
remplace: olcTLSCertificateFile
olcTLSCertificateFile:/etc/openldap/certs/your_certificate

et j'ai lancé la commande ldapmodify -Y EXTERNAL -H ldapi: /// -f votre_fichier.ldif assurez-vous qu'il existe un acl qui permet à la racine de faire des modifications avec l'authentification avec SASL bind.

Pour vous assurer que les modifications ont été effectuées, lancez cette commande ldapsearch -Y EXTERNAL -H ldapi: /// -b cn = config | grep olcTLS

1
Oussama Mechlaoui

j'ai eu le même problème. Les certificats étaient stockés dans le /opt/local/cert.

Vous devez ajouter ce répertoire à la liste des fichiers résolus dans /etc/apparmor.d/usr.sbin.slapd:

/opt/local/cert/ r,`
/opt/local/cert/* r,
0
user798428