PHP LDAP Soru

0 Cevap php

Ben umutsuzca PHP çalışan bir ldaps müşteri almak için çalışıyorum. Benim kod yerinde olduğunu ve standart LDAP protokolünü kullanarak çalışır.

Ben LDAPS :/ / sunucu için ldap :/ / sunucusu değiştirmek Ancak, bu çalışmıyor. 7 hata ayıklama moduna ayarlanması bu hatayı yeilds. Ben eklemek gerektiğini OpenSSL kullanarak bu bir linux sunucu.

TLS: can't connect: The Diffie Hellman prime sent by the server is not acceptable (not long enough)..

Bu geçmiş olsun için herhangi bir yolu var mı? LDAP sunucusunda değişen bir şey ben sadece bu istemci privlidges gibi bir seçenek değildir.

EDIT: Sadece benim ldap.conf olarak, bu ayar

TLS_REQCERT asla

EDIT2: İşte benim kod

if(isset($_POST['pass'])){
    $username = $_POST['user'];
    $password = $_POST['pass'];

    ldap_set_option(NULL, LDAP_OPT_DEBUG_LEVEL, 7);



    $ds=ldap_connect("ldaps://ldap.ryerson.ca");  
    //$ds=ldap_connect("141.117.101.14");  
    ldap_set_option($ds, LDAP_OPT_REFERRALS, 0);
    ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3) ;
    //Check LDAP server for user
        if(!@ldap_bind($ds, "uid={$username},ou=people,o=ryerson.ca,o=ryerson", "{$password}") || strlen($password)==0){
    //      LDAP login was not successful
            printf("Sorry, wrong username/password\n\n\n");
            return;
        }

    $ldapSearch=@ldap_search($ds, "ou=people,o=ryerson.ca,o=ryerson", "uid={$_POST['user']}");
    $result = @ldap_get_entries($ds, $ldapSearch);


}

0 Cevap