Autenticação LDAP no OpenBSD

4

Estou tentando fazer com que um servidor OpenBSD autentique usuários usando o mesmo servidor LDAP que o resto da minha rede doméstica usa. Enquanto 'getent password' lista os usuários do servidor LDAP como esperado, não consigo fazer login como nenhum deles.

Eu tenho seguindo n meu /etc/login.conf:

#
# ldap
#
ldap:\
        :auth=-ldap:\
        :x-ldap-server=kaitain.cory.albrecht.name,389,plain:\
        :x-ldap-basedn=ou=People,dc=cory,dc=albrecht,dc=name:\
        :x-ldap-filter=(&(objectclass=posixAccount)(uid=%u)):\
        :tc=default:

Mas quando tento testar um usuário, recebo o seguinte:

root@opensecrets:/etc# /usr/libexec/auth/login_-ldap -d -s login cory ldap
Password: 
load_ssl_certs says:
        cacert none
        cacertdir none
        usercert none
        userkey none
parse_server_line buf = host
parse_server_line port == NULL, will use default
parse_server_line mode == NULL, will use default
host host, port 389, version 3
setting cert info
clearing ssl set
ldap_open(host, 389) failed
host failed, trying alternates
ldap_open failed
reject

Isso mais essas linhas do log

Dec 17 15:30:19 <auth.warn> opensecrets.cory.albrecht.name opensecrets login_ldap: ldap_open(host, 389) failed
Dec 17 15:30:19 <auth.warn> opensecrets.cory.albrecht.name opensecrets login_ldap: ldap_open failed

me faz pensar em como a seção ldap do /etc/login.conf não está sendo lida. Mudar o 389 da porta para 38389 no login.conf não altera a saída do login do teste / falsificação.

Estou completamente perplexo sobre o que fazer para determinar o que está fazendo com que o login.conf não seja totalmente analisado e espero que seja algo fácil, e ficarei terrivelmente embaraçado por esquecê-lo.

    
por Bytor 17.12.2014 / 22:01

1 resposta

1

Acontece que virtualmente todas as páginas da web que estão por aí, através da instalação de login_ldap, ypldap e ypind para fazer isso, deixam de fora uma coisa. Como /etc/login.conf é um arquivo formatado por termcap, você precisa fazer o 'cap_mkdb login.conf' para que as rotinas login_ldap vejam realmente sua configuração no arquivo /etc/login.conf.db resultante. Isso é diferente de outros programas que usam o formato termcap mas não precisam ser compilados em um arquivo de banco de dados, como o rtadvd.

A única página da Web que inclui essa etapa é esta de Talmasca , enquanto quase todas as outras a passagem parece ser derivada de esta em Helion Prime que não menciona que você precisa usar o cap_mkdb.

    
por 18.12.2014 / 04:08