ฉันกำลังเรียกใช้ ldapsearch กับเซิร์ฟเวอร์ไดเรกทอรีที่ใช้งานอยู่
ด้วยโปรโตคอล ldap มันใช้งานได้:
ldapsearch -h IP -p 389 -b 'DC=testnet,DC=com' -D 'CN=admin,CN=Users,DC=testnet,DC=com' -w 'XX'
ด้วยโปรโตคอล ldaps มันล้มเหลว:
ldapsearch -H ldaps://10.10.10.20:636 -b 'DC=testnet,DC=com' -D 'CN=admin,CN=Users,DC=testnet,DC=com' -w 'XXX'
เอาท์พุท strace:
เชื่อมต่อ (3, {sa_family=AF_INET, sin_port=htons(636), sin_addr=inet_addr("10.10.10.20")}, 16) = 0
ldap_sasl_bind(SIMPLE): ไม่สามารถติดต่อเซิร์ฟเวอร์ LDAP (-1)
จาก nmap ทั้งพอร์ต 389 และ 636 เปิดอยู่ เกิดอะไรขึ้น?
แก้ไข
ใบรับรองมีอยู่ในพอร์ต 636:
# openssl s_client -เชื่อมต่อ 10.10.10.20:636 -showcerts
เชื่อมต่อแล้ว(00000003)
ไม่สามารถใช้ SSL_get_servername
ความลึก=0 CN = DC-01.testnet.com
ตรวจสอบข้อผิดพลาด: num=20: ไม่สามารถรับใบรับรองผู้ออกในท้องถิ่น
ตรวจสอบผลตอบแทน:1
ความลึก=0 CN = DC-01.testnet.com
ตรวจสอบข้อผิดพลาด:num=21:ไม่สามารถตรวจสอบใบรับรองแรก
ตรวจสอบผลตอบแทน:1
---
ห่วงโซ่ใบรับรอง
0 วินาที:CN = DC-01.testnet.com
ผม:DC = com, DC = testnet, CN = testnet-SRV1-CA
...