ldap-authentication sem sambaSamAccount no servidor linux smb / cifs (por exemplo, samba)

3

Atualmente estou executando o samba-3.5.6 em um host debian / wheezy para atuar como o servidor de arquivos para os w32-clients do nosso departamento. a autenticação é feita via OpenLDAP, onde cada usuário-dn possui uma classe de objeto: sambaSamAccount que contém as credenciais smb e uma classe de objeto: shadowAccount / posixAccount para autenticação "comum" (por exemplo, pam, apache, ...)

agora gostaríamos de despejar o user-db de nosso departamento e, em vez disso, usar autenticar em relação ao user-db de nossa organização upstream. essas contas de usuário são gerenciadas em um novo diretório, que eu já posso usar para autenticar usando pam (por exemplo, para ssh-logins; em outro host). nossa organização upstream fornece acesso baseado em smb / cifs (através de algum serviço novell) para alguns diretórios, que eu posso acessar do meu cliente linux via smbclient .

o que eu atualmente não consigo fazer é usar o upstream-ldap (o eDirectory) para autenticar o samba de nossa instituição:

eu configurei meu servidor samba para auth no servidor ldap do upstream:

passdb backend = ldapsam:ldaps://ldap.example.com

mas quando tento autenticar um usuário, recebo:

$ smbclient -U USER \\SMBSERVER\test
Enter USER's password: 
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.6]
tree connect failed: NT_STATUS_ACCESS_DENIED

os arquivos de log mostram:

[2012/10/02 09:53:47.692987,  0] passdb/secrets.c:350(fetch_ldap_pw)
  fetch_ldap_pw: neither ldap secret retrieved!
[2012/10/02 09:53:47.693131,  0] lib/smbldap.c:1180(smbldap_connect_system)
  ldap_connect_system: Failed to retrieve password from secrets.tdb

vejo dois problemas que estou tendo:

  • Eu não tenho nenhuma senha de administrador para o ldap do upstream (e muito provavelmente, eles não me darão um). Eu só quero autenticar meus usuários, acesso de gravação não é necessário a todos. posso ir embora com isso?

  • o ldap upstream não possui nenhum atributo relacionado ao samba no banco de dados. Fiquei com a impressão de que, para o samba autenticar, esses atributos são necessários, já que o smb / cifs usa algum hashing trivial que não é compatível com os hashes usuais de posixAccount.

existe uma maneira de o servidor samba do meu departamento se autenticar em um servidor ldap?

    
por umläute 02.10.2012 / 10:04

1 resposta

1

Você precisa definir uma senha ldap no samba. (E.G. se seu admindn for para o usuário admin)

smbpasswd -w admin
    
por 15.08.2013 / 01:09