OpenLDAP com StartTLS quebrado no Debian Lenny

1

Estou tentando fazer com que o OpenLDAP no Lenny trabalhe com o StartTLS. Eu tenho uma máquina do Fedora 13 que estou usando como cliente para teste. Até agora, o cliente Fedora está ignorando a diretiva 'host' em /etc/ldap.conf quando tento conectar usando o ldapsearch. O cliente deseja se conectar a 127.0.0.1:389 mesmo se eu especificar -H ldaps: //server.name ao usar ldapsearch. /etc/ldap.conf na máquina cliente está no modo 444.

Mas mesmo quando tento conectar localmente a partir de uma sessão ssh, vejo erros como este: ldap_sasl_interactive_bind_s: Can't contact LDAP server (-1)

Alguém me bateu com um cluebat, plz.

Atualização: você deve usar ~ / .ldaprc para configurações como 'host'. Além disso, eu apenas usei o nmap contra o servidor ldap e ele mostrou 636 e 389 em um estado aberto.

Veja o que imprime na tela quando tento me conectar, ldapsearch -ZZ –x '(objectclass=*)'+ -d -1

ldap_create
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 192.168.10.41:636
ldap_new_socket: 3
ldap_prepare_socket: 3
ldap_connect_to_host: Trying 192.168.10.41:636
ldap_pvt_connect: fd: 3 tm: -1 async: 0
ldap_open_defconn: successful
ldap_send_server_request
ber_scanf fmt ({it) ber:
ber_dump: buf=0x9bdbdb8 ptr=0x9bdbdb8 end=0x9bdbdd7 len=31
  0000:  30 1d 02 01 01 77 18 80  16 31 2e 33 2e 36 2e 31   0....w...1.3.6.1  
  0010:  2e 34 2e 31 2e 31 34 36  36 2e 32 30 30 33 37      .4.1.1466.20037   
ber_scanf fmt ({) ber:
ber_dump: buf=0x9bdbdb8 ptr=0x9bdbdbd end=0x9bdbdd7 len=26
  0000:  77 18 80 16 31 2e 33 2e  36 2e 31 2e 34 2e 31 2e   w...1.3.6.1.4.1.  
  0010:  31 34 36 36 2e 32 30 30  33 37                     1466.20037        
ber_flush2: 31 bytes to sd 3
  0000:  30 1d 02 01 01 77 18 80  16 31 2e 33 2e 36 2e 31   0....w...1.3.6.1  
  0010:  2e 34 2e 31 2e 31 34 36  36 2e 32 30 30 33 37      .4.1.1466.20037   
ldap_write: want=31, written=31
  0000:  30 1d 02 01 01 77 18 80  16 31 2e 33 2e 36 2e 31   0....w...1.3.6.1  
  0010:  2e 34 2e 31 2e 31 34 36  36 2e 32 30 30 33 37      .4.1.1466.20037   
ldap_result ld 0x9bd3050 msgid 1
wait4msg ld 0x9bd3050 msgid 1 (infinite timeout)
wait4msg continue ld 0x9bd3050 msgid 1 all 1
** ld 0x9bd3050 Connections:
* host: 192.168.10.41  port: 636  (default)
  refcnt: 2  status: Connected
  last used: Sun Jun  6 12:54:05 2010


** ld 0x9bd3050 Outstanding Requests:
 * msgid 1,  origid 1, status InProgress
   outstanding referrals 0, parent count 0
  ld 0x9bd3050 request count 1 (abandoned 0)
** ld 0x9bd3050 Response Queue:
   Empty
  ld 0x9bd3050 response count 0
ldap_chkResponseList ld 0x9bd3050 msgid 1 all 1
ldap_chkResponseList returns ld 0x9bd3050 NULL
ldap_int_select
read1msg: ld 0x9bd3050 msgid 1 all 1
ber_get_next
ldap_read: want=8, got=0

ber_get_next failed.
ldap_err2string
ldap_start_tls: Can't contact LDAP server (-1)
    
por mr.zog 06.06.2010 / 18:31

5 respostas

1

por padrão, o cliente verifica o certificado do servidor. Basta adicionar "TLS_REQCERT nunca" ao /etc/openldap/ldap.conf

    
por 08.06.2010 / 21:25
0

Eu consegui fazer o SSL trabalhar com o SLAPD em Lenny recentemente. Embora eu não me lembre exatamente do que fiz, lembro-me de ter algo a ver com a diferença de cifras entre o GNUTLS e o OPENSSL. Os pacotes do SLAPD para Lenny foram compilados contra o GNUTLS. Pode ter algo a ver com este .

    
por 07.06.2010 / 03:40
0

Parece que não é possível ler o arquivo-chave. Você deve ter uma chave sem senha. Adicione openldap ao grupo ssl-cert. Faça o grupo na chave ssl-cert e as permissões 440. O comando openssl s_client pode ser usado para depurar problemas de tls.

    
por 08.06.2010 / 22:19
0

Tente fazer um openldap chown: openldap nos arquivos de certificado.

    
por 18.08.2010 / 19:02
0

Se você tiver um certificado SSL assinado por um certificado intermediário (o que não é incomum atualmente), você terá problemas com o TLS em slapd sob Lenny. Como mencionado pelo sybreon, o Lenny slapd faz o link com o GNUTLS, que não suporta todas as opções que você precisa.

A solução é usar o backport de Lenny slapd. No entanto, descobrimos que o backport 2.4.17-2.1 ~ bpo50 + 1 compila contra o libdb4.6, que tem um bug nele que nos afeta depois de correr por cerca de uma semana.

Então, neste ponto, eu não recomendo usar o Lenny para executar slapd se você precisar de TLS. Atualize para espremer.

    
por 23.02.2011 / 06:22