Nous devons connecter notre script php à LDAP via tls à l'aide d'un certificat. La connexion LDAP fonctionne bien sans tls. Plus de détails ici /programming/15260252/how-to-use-multiple-tls-certificates-for-ldap-from-php-zend
Nous avons réussi à nous connecter via tls à partir de Windows à l'aide du navigateur Softerra LDAP. Il nous a demandé d'installer un certificat et de lui faire confiance.
Mon résultat final est de pouvoir m'authentifier avec LDAP en utilisant TLS de php. J'ai reçu un certificat de type .cer. Il provient d'une machine Windows Exchange. D'après ce que je peux voir, SLES prend en charge les certificats .pem. Donc ma question est ...
Q1: Dois-je d'abord convertir de .cer en .pem avant de pouvoir installer le certificat sur le client (qui est le serveur SLES) et enfin Q2: quelle est la meilleure façon d'installer ce certificat sur le serveur pour que mon application php puisse y accéder et faire son travail . Notez que sur le serveur SLES, nous devons nous connecter à différents serveurs LDAP.
À l'heure actuelle, si nous courons
ldapsearch -H ldaps://localhost:9215 -W
on a
Enter LDAP Password:
ldap_sasl_interactive_bind_s: Can't contact LDAP server (-1)
additional info: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed (unable to get local issuer certificate)
J'ai trouvé plein de bonnes infos ici http://www.php.net/manual/de/function.ldap-connect.php#36156 et surtout cette phrase est importante à mes yeuxOnce you've gotten the ldapsearch tool working correctly PHP should work also.
- SUSE Linux Enterprise Server 11 (x86_64)
- ldapsearch: @ (#) $ OpenLDAP: ldapsearch 2.4.26 (26 septembre 2012 13:14:42) $ abuild @ baur: /usr/src/packages/BUILD/openldap-2.4.26/clients/tools (bibliothèque LDAP: OpenLDAP 20426)
la source
Réponses:
Cela signifie que le certificat sur le serveur a expiré ou qu'il n'est pas valide.
Quant à la solution de contournement, utilisez la
LDAPTLS_REQCERT
variable pour ignorer le certificat, par exemple:Sinon, vous pouvez importer le certificat et le marquer comme approuvé.
la source
ldap.conf
fichier existant pour définir leTLS_REQCERT
paramètre.Je ne suis pas sûr de la conversion de pem en cer, mais pour que ldapsearch utilise des certificats sans avoir un ldap.conf ou sans les autorisations pour modifier les certificats globaux, vous devriez pouvoir faire ceci:
la source
En utilisant
supprime la validation de certificat du serveur LDAP. Cela annule la sécurité fournie par TLS en premier lieu. Ne fais pas ça. Vous devez corriger les certificats en cas de problème, puis fournir au client LDAP l'autorité de certification décrite par tink.
la source