Cefaléia de configuração do cliente OpenLDAP no FreeBSD

3

Estou usando o FreeBSD 7.2 como um servidor NFS e como um cliente para um servidor OpenLDAP (que executa o Debian etch). Quando os usuários acessam seus arquivos no servidor NFS, os UIDs dos usuários são procurados no servidor ldap e mapeados para seus nomes de usuários (via nsswitch). Meu problema é que mesmo depois de configurar o FreeBSD como um cliente para o servidor ldap, ele não consegue autenticar.

Sei que a configuração está correta, porque a inserção de "ldapsearch" me fornece uma lista de todos os usuários no servidor ldap. Eu usei o documento no link para fazer a configuração. Está faltando alguma coisa nesses documentos?

Aqui está o ldap.conf usado pelo PAM / NSS:

[root@csastorage /csastore]# cat /usr/local/etc/ldap.conf
#
# LDAP Defaults
#

# See ldap.conf(5) for details
# This file should be world readable but not world writable.

#BASE   dc=example,dc=com
#URI    ldap://ldap.example.com ldap://ldap-master.example.com:666

BASE    dc=cl,dc=csa,dc=iisc,dc=ernet,dc=in
URI     ldaps://<server address>/

TLS_REQCERT     allow
TLS_CACERT      /usr/local/etc/openldap/server.pem


#SIZELIMIT      12
#TIMELIMIT      15
#DEREF          never

pam_login_attribute uid
    
por donatello 17.10.2009 / 13:06

1 resposta

2

Para um suporte realmente bom ao OpenLDAP no FreeBSD você precisa:

  • nss_ldap
  • pam_ldap - módulo ldap do PAM
  • pam_mkhomedir - para criar automaticamente homedir dos usuários de skel após o primeiro login
  • sudo - com suporte a LDAP
  • openssh-portable - com patch de LPK (para usuários ssh chaves no LDAP)

adicione o seguinte a /etc/pam.d/sshd

auth    sufficient /usr/local/lib/pam_ldap.so no_warn try_first_pass
account required   /usr/local/lib/pam_ldap.so ignore_authinfo_unavail ignore_unknown_user
session required   /usr/local/lib/pam_mkhomedir.so debug mode=0755 skel=/usr/local/share/skel

para /etc/pam.d/system add

auth            sufficient      /usr/local/lib/pam_ldap.so      no_warn try_first_pass
account         required        /usr/local/lib/pam_ldap.so      ignore_authinfo_unavail ignore_unknown_user
session         required        /usr/local/lib/pam_mkhomedir.so  debug umask=0077 skel=/usr/local/share/skel
password        sufficient      /usr/local/lib/pam_ldap.so      use_authok

substitua group passwd e sudoers em /etc/nsswitch.conf seguindo:

group: files cache ldap
passwd: files cache ldap
sudoers: files cache ldap

Você também precisa modificar

  • /usr/local/etc/nss_ldap.conf
  • /usr/local/etc/ldap.conf
  • / usr / local / etc / ssh / sshd_config (para Suporte a chaves LDAP)
  • /etc/nscd.conf (para armazenamento em cache)
por 19.10.2009 / 22:39