Estou tentando configurar um Network Load Balancer que direciona o tráfego para servidores íntegros com base em dados da Camada 3/Camada 4 (protocolo IP).
Question: Isso funciona para LDAP sobre SSL (LDAPS)? (Estou ciente de que a camada 7 executa a descriptografia TLS/SSL conforme necessário)
Eu tenho um Network Load Balancer e meus dois servidores back-end estão executando o serviço LDAP.
É possível executar ldapsearch
com o seguinte resultado:
Alvo | Consulta | Status |
---|---|---|
Servidor back-end1 | ldapsearch -x -H ldap://<Backend1> |
Bem-sucedido |
Servidor back-end1 | ldapsearch -x -H ldaps://<Backend1> |
Bem-sucedido |
Servidor back-end2 | ldapsearch -x -H ldap://<Backend2> |
Bem-sucedido |
Servidor back-end2 | ldapsearch -x -H ldaps://<Backend2> |
Bem-sucedido |
Balanceador de carga de rede | ldapsearch -x -H ldap://<NLB> |
Bem-sucedido |
Balanceador de carga de rede | ldapsearch -x -H ldaps://<NLB> |
NÃO foi bem-sucedido |
Alguma sugestão de como resolver isso?
EDIT:
Ao executar ldapsearch -x -H ldaps://<NLB>
recebo o seguinte erro:
ldap_sasl_interactive_bind: Can't contact LDAP server (-1)
additional info: (unknown error code)
Adicionando a -d1
opção:
ldap_url_parse_ext(ldaps://ipa.example.com)
ldap_create
ldap_url_parse_ext(ldaps://ipa.example.com:636/??base)
ldap_sasl_bind
ldap_send_initial_request
ldap_new_connection 1 1 0
ldap_int_open_connection
ldap_connect_to_host: TCP ipa.example.com:636
ldap_new_socket: 3
ldap_prepare_socket: 3
ldap_connect_to_host: Trying 10.141.4.23:636
ldap_pvt_connect: fd: 3 tm: -1 async: 0
attempting to connect:
connect success
TLS: hostname (ipa.example.com) does not match common name in certificate (ipa2.exmaple.com).
TLS: can't connect: (unknown error code).
ldap_err2string
ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)
Então... Parece que preciso anexar um certificado ao NLB contendo ipa1 e ipa2 no certificado? Não tenho certeza se isso é compatível com o provedor de nuvem.
Observação: não consigo fazer SSH no NLB porque é um serviço gerenciado.
It seems like I need to attach a certificate to the NLB containing both ipa1 and ipa2 in the certificate?
Não, você precisa de um certificado com
ipa.example.com
, que é o nome que você parece estar usando para o balanceador de carga.Se você também quiser entrar em contato diretamente com os servidores LDAP (ignorando o balanceador de carga), precisará de um certificado com vários SANs.
De qualquer forma, você deve instalar o certificado diretamente em seus servidores LDAP, pois seu balanceador de carga está atuando na camada 4 e, portanto, não encerra a conexão SSL, mas simplesmente encaminha o tráfego para um dos servidores.
TLS: hostname (ipa.example.com) does not match common name in certificate
O certificado que você está usando não possui na SAN o nome ao qual o cliente está se conectando.