web-dev-qa-db-fra.com

SLAPd - TLS ne fonctionne pas / Erreurs apparmor

J'essaie de faire fonctionner LDAP et de le configurer depuis quelques jours maintenant. Le vrai scratcher de la tête est que tout s'est bien passé jusqu'à ce que j'arrive à configurer TLS. J'utilisais ce guide sur le site officiel de documentation d'Ubuntu.

Cela a produit un nombre d'erreurs très élevé qui a empêché slapd de redémarrer.

La plupart des erreurs étaient dues au fait que l'apparmeur n'autorisait pas les autorisations sur certaines parties de l'ordinateur, mais une erreur en particulier revenait constamment.

TLS init def ctx a échoué: -1

Complètement perplexe!

1
TitanShadow

Je viens de rencontrer la même erreur, mais j'ai fini par la réparer en m'assurant que slapd avait l'autorisation de lecture sur le fichier de clé privée utilisé pour TLS

Sudo usermod -a -G ssl-cert openldap

Je me suis amusé avec les trucs d'apparmeur mentionnés par l'OP dans sa réponse pendant un certain temps, mais même après avoir éliminé toutes les erreurs d'apparmeur, slapd ne commençait pas.

1
arcticmac

La réponse s'est avérée être que les instructions données dans le guide que je suivais ne produisaient pas de certificat TLS utilisable. J'ai testé cela en essayant d'utiliser le certificat généré sur d'autres services (pigeonnier et postfix), ce qui les a également fait échouer.

J'ai fini par utiliser ce guide , également à partir de la documentation officielle d'Ubuntu pour configurer une autorité de certification auto-signée (comme suggéré dans la documentation OpenLDAP). Les clés/certificats que cela crée fonctionnent parfaitement et je peux même utiliser le même certificat/clé pour tous mes services compatibles TLS/SSL. Puisque c'est pour un usage interne, ils sont tous auto-signés mais me donne la possibilité de faire plus facilement.

Le problème de l'apparmeur était également très étrange. J'obtenais beaucoup d'erreurs à faire avec p11-kit et pkcs11. En faisant des recherches, j'ai constaté que ces outils semblent être transformés en certificats. J'ai ajouté les lignes suivantes à mon fichier /etc/apparmor.d/local/usr.sbin.slapd.

/usr/share/p11-kit/modules/ r,
/usr/share/p11-kit/modules/* r,
/usr/lib/x86_64-linux-gnu/pkcs11/ m,
/usr/lib/x86_64-linux-gnu/pkcs11/* m,

Maintenant, le serveur sldap démarre sans problème avec TLS prêt à l'emploi.

J'espère que ça aidera quelqu'un.

1
TitanShadow