Khi cố gắng tạo các kết nối ldaps đến máy chủ Novel eDirectory 8.8 của tôi, đôi khi tôi phải đặt TLS_REQCERT never
vào tệp ldap.conf của máy chủ máy khách. Rõ ràng, đây là một ý tưởng tồi.
Lệnh tôi chạy là một cái gì đó như thế này với thông tin thực sự hoạt động ...
ldapsearch -x -H ldaps://ldapserver -b 'ou=active,ou=people,dc=example,dc=org' -D 'cn=admin,dc=example,dc=org' -W "cn=username"
Trên Ubuntu 13.10, nó hoạt động tốt.
Trên SLES nó hoạt động tốt.
Trên CentOS 6.5, nó trả về:
ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)
Bây giờ, chứng chỉ tôi đã nhập là chứng chỉ ký tự đại diện được mua từ DigiCert. Đồng nghiệp của tôi đã tìm thấy một số báo cáo chỉ ra rằng một số hệ thống có vấn đề với ký tự đại diện.
Vì vậy, là chứng chỉ ký tự đại diện để đổ lỗi? Nếu vậy, làm thế nào để tôi sửa chữa nó?
Nếu nó không phải là chứng chỉ ký tự đại diện thì nó là gì?
Theo đề nghị của Andrew Schulman, tôi đã thêm vào -d1
lệnh ldapsearch của mình. Đây là những gì tôi đã kết thúc với:
ldap_url_parse_ext(ldaps://ldap.example.org)
ldap_create
ldap_url_parse_ext(ldaps://ldap.example.org:636/??base)
Enter LDAP Password:
ldap_sasl_bind
ldap_send_initial_request
ldap_new_connection 1 1 0
ldap_int_open_connection
ldap_connect_to_host: TCP ldap.example.org:636
ldap_new_socket: 3
ldap_prepare_socket: 3
ldap_connect_to_host: Trying 10.225.0.24:636
ldap_pvt_connect: fd: 3 tm: -1 async: 0
TLS: certdb config: configDir='/etc/openldap' tokenDescription='ldap(0)' certPrefix='cacerts' keyPrefix='cacerts' flags=readOnly
TLS: cannot open certdb '/etc/openldap', error -8018:Unknown PKCS #11 error.
TLS: could not get info about the CA certificate directory /etc/openldap/cacerts - error -5950:File not found.
TLS: certificate [CN=DigiCert High Assurance EV Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US] is not valid - error -8172:Peer's certificate issuer has been marked as not trusted by the user..
TLS: error: connect - force handshake failure: errno 2 - moznss error -8172
TLS: can't connect: TLS error -8172:Peer's certificate issuer has been marked as not trusted by the user..
ldap_err2string
ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)
Từ những gì nói, CentOS không tin tưởng DigiCert? Hoặc CentOS không có danh sách các nhà phát hành đáng tin cậy?
telnet ldapserver ldaps
hayopenssl s_client -connect ldapserver:636
.