LDAP-TLS 바인딩: TLS 요청 시작이 허용되었지만 작동하지 않음

LDAP-TLS 바인딩: TLS 요청 시작이 허용되었지만 작동하지 않음

TLS를 사용하여 Linux 기반 장치의 LDAP를 LDAP 서버에 바인딩하려고 하는데 헛수고입니다. 서버는 단순 인증과 TLS 인증을 지원합니다. 먼저 다음 ldapsearch 명령을 사용하여 TLS 없이 성공적으로 바인딩했습니다.

ldapsearch -x -b "dc=lab,dc=local"  \
-H ldap://[SERVER.IP.ADDRESS] \
-D "uid=myuser,cn=users,cn=accounts,dc=lab,dc=local" \
-W "uid=myuser"

사용자의 비밀번호를 묻는 메시지를 표시하고 사용자를 성공적으로 인증합니다. 다음과 같이 TLS를 사용하여 바인딩하려고 하면:

LDAPTLS_REQCERT=never ldapsearch \
-x -ZZ -b "dc=lab,dc=local" \
-H ldap://[SERVER.IP.ADDRESS] \
-D "uid=myuser,cn=users,cn=accounts,dc=lab,dc=local" \
-W "uid=myuser" cn uid

비밀번호를 묻는 메시지가 표시되지 않으므로 -d 1더 많은 디버그 메시지를 표시하는 옵션을 추가했습니다. 이 경우 다음과 같은 결과가 나타납니다.

ldap_url_parse_ext(ldap://nodo-1.labsecurity.local)
ldap_create
ldap_url_parse_ext(ldap://nodo-1.labsecurity.local:389/??base)
ldap_extended_operation_s
ldap_extended_operation
ldap_send_initial_request
ldap_new_connection 1 1 0
ldap_int_open_connection
ldap_connect_to_host: TCP nodo-1.labsecurity.local:389
ldap_new_socket: 3
ldap_prepare_socket: 3
ldap_connect_to_host: Trying 192.168.5.214:389
ldap_pvt_connect: fd: 3 tm: -1 async: 0
attempting to connect: 
connect success
ldap_open_defconn: successful
ldap_send_server_request
ber_scanf fmt ({it) ber:
ber_scanf fmt ({) ber:
ber_flush2: 31 bytes to sd 3
ldap_result ld 0x1005c038 msgid 1
wait4msg ld 0x1005c038 msgid 1 (infinite timeout)
wait4msg continue ld 0x1005c038 msgid 1 all 1
** ld 0x1005c038 Connections:
* host: nodo-1.labsecurity.local  port: 389  (default)
  refcnt: 2  status: Connected
  last used: Thu Jan  1 00:49:07 1970


** ld 0x1005c038 Outstanding Requests:
 * msgid 1,  origid 1, status InProgress
   outstanding referrals 0, parent count 0
  ld 0x1005c038 request count 1 (abandoned 0)
** ld 0x1005c038 Response Queue:
   Empty
  ld 0x1005c038 response count 0
ldap_chkResponseList ld 0x1005c038 msgid 1 all 1
ldap_chkResponseList returns ld 0x1005c038 NULL
ldap_int_select
read1msg: ld 0x1005c038 msgid 1 all 1
ber_get_next
ber_get_next: tag 0x30 len 95 contents:
read1msg: ld 0x1005c038 msgid 1 message type extended-result
ber_scanf fmt ({eAA) ber:
read1msg: ld 0x1005c038 0 new referrals
read1msg:  mark request completed, ld 0x1005c038 msgid 1
request done: ld 0x1005c038 msgid 1
res_errno: 0, res_error: <Start TLS request accepted.Server willing to negotiate SSL.>, res_matched: <>
ldap_free_request (origid 1, msgid 1)
ldap_parse_extended_result
ber_scanf fmt ({eAA) ber:
ber_scanf fmt (a) ber:
ldap_parse_result
ber_scanf fmt ({iAA) ber:
ber_scanf fmt (x) ber:
ber_scanf fmt (}) ber:
ldap_msgfree

연결이 설정된 것 같지만 어느 시점에서 중단되고 계속되지 않습니다. LDAPTLS_REQCERT=never를 사용했는데 이는 CA 인증서가 필요하지 않음을 의미합니다. LDAP-TLS 바인딩이 작동하지 않는 이유를 더 잘 이해하도록 도와줄 수 있는 사람이 있습니까? 감사해요.

관련 정보