2017-08-23 3 views
1

Ich versuche, eine einfache LDAP-Bindung zu machen, die aus irgendeinem Grund auf MAMP-Stack funktioniert, aber nicht, wenn ich den Code auf CentOS7 kopieren. Ich habe das LDAP-Modul für PHP installiert.ldap_bind funktioniert nicht auf CentOS7, funktioniert aber auf Mac MAMP, Was fehlt mir?

<?php 
error_reporting(E_ALL); 
ini_set('display_errors', 1); 

    if(extension_loaded('ldap')){ 
    print "LDAP Module enabled<br>"; 
    } 

    $ldaphost = "ldap://ldap.myschool.edu"; 
    $ldapconn = ldap_connect($ldaphost) 
      or die("Could not connect to {$ldaphost}"); 

    if($ldapconn){ 
    echo "LDAP Connections Success...<br>"; 
    } 
    $ldaprdn = '[email protected]'; 
    $ldappass = 'password'; 

    if($ldapconn){ 
    $ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass); 
    var_dump($ldapbind); 
    if ($ldapbind) { 
     echo "LDAP bind successful...<br>"; 
    } else { 
     echo "LDAP bind failed...<br>"; 
    } 
    } 



?> 

Ich bin mir nicht sicher, warum es auf MAMP und nicht CentOS7 funktioniert. Ich habe versucht, die Firewall zu deaktivieren, und geben Apache Full Read Write ausführen, aber das scheint nicht der Fall zu sein. Gibt es ein anderes Paket, das ich installieren muss? Der LDAP-Server unterscheidet sich von dem Server, der dieses Skript ausführt, wenn das hilft.

Antwort

1

Anmeldung an den Server (der einen der Code auf ausgeführt wird) und führen Sie diesen Befehl:

getsebool -a | grep http | grep ldap

Es sollte wie folgt zurück:

httpd_can_connect_ldap --> on 

Wenn es wieder aus, anstatt weg auf dann diese laufen:

setsebool -P httpd_can_connect_ldap auf

Dadurch kann der Server eine Verbindung zu LDAP über http

herstellen
Verwandte Themen