Servidor de arquivos Samba + PAM + Berkeley DB ou Samba + PAM

1

Eu configurei o VSFTPD com o PAM e o Berkeley DB antes de usar este artigo . É um ótimo artigo e foi muito fácil de configurar.

Agora que estou configurando o Samba, gostaria de fazer o mesmo. Eu vi informações sobre o uso do PAM com o Samba, mas nada sobre o Berkeley DB. Se isso não for possível, até mesmo a implementação do PAM seria interessante, mas os artigos fora não são tão fáceis de seguir ... para mim de qualquer maneira.

Alguém pode criar um tutorial rápido aqui que eu seria capaz de usar para configurar o Samba + PAM + Berkeley DB ou Samba + PAM?

Link para um tutorial bom também funcionaria.

ATUALIZAÇÃO:

Eu configurei o smb.conf do Samba usando o seguinte para as variáveis de configuração do PAM.

#security = user (Commented out, not sure if it should or shouldn't be with PAM)

pam password change = no 

obey pam restrictions = yes

encrypted passwords = no

criou um arquivo samba-virtual-users.db seguindo o artigo do VSFTPD usando vusers.txt e db4.8_load -T -t hash -f vusers.txt samba-virtual-user.db

e configure /etc/pam.d/samba da seguinte forma:

#%PAM-1.0
auth       required     pam_userdb.so db=/etc/samba/samba-virtual-user
account    required     pam_userdb.so db=/etc/samba/samba-virtual-user
session    required     pam_loginuid.so

Esta configuração parece refletir bastante de perto para o VSFTPD e eu percebi que deveria funcionar. Enquanto o samba estiver usando o PAM e o arquivo /etc/pam.d/samba, o que ele faz por padrão, então tudo que o arquivo /etc/pam.d/samba precisa fazer é declarar o método de autorização como usando o .db de arquivo criado.

Isso faz sentido para alguém? Alguém pode ver alguma razão pela qual isso não está funcionando? Dicas para coisas para tentar talvez?

ATUALIZAÇÃO:

A máquina está sendo exibida na rede agora, mas não consigo fazer logon. Existe alguma maneira de verificar o método de autenticação que o samba está usando? Qualquer coisa relacionada à verificação da configuração ou das configurações que está usando atualmente seria útil ...

    
por user29600 28.04.2011 / 19:56

3 respostas

2

O Samba não pode usar o PAM porque o protocolo SMB especifica um (conjunto de) hashes incompatíveis que não podem ser usados com o PAM (que requer a senha de texto não criptografado ou certas versões da senha com hash).

Isto foi o que me foi explicado há algum tempo quando tentei realizar a mesma coisa.

    
por 10.05.2011 / 01:40
2

O Samba precisa ser construído usando "--with-pam" e ter o pacote pam-devel instalado. Então, conforme descrito na pergunta, inclua as opções do samba em pam.d e desabilitar senhas criptografadas.

Além disso, os clientes devem ter senhas criptografadas desabilitadas após esta informação: link

A nota do XP também se aplica ao Win7. E entradas de registro precisam ser reaplicadas ao Win7 após a instalação do SP1.

Além disso, devido ao patch MS11-043 da Microsoft, você deve usar um nome de grupo de trabalho de mais de 7 caracteres e usar uma versão muito recente do Samba (3.5.11 ou superior) que inclua uma correção para MS11-043

    
por 26.08.2011 / 17:05
0

Isso é do howto do Samba: "Existe uma opção no smb.conf chamada obey pam restrictions. A seguir está a ajuda online para esta opção no SWAT: Quando o Samba é configurado para ativar o suporte a PAM (ou seja, --with-pam), esse parâmetro controlará se ou O Samba não deve obedecer às diretivas de gerenciamento de contas e sessões do PAM. O comportamento padrão é usar o PAM somente para autenticação com texto não criptografado e para ignorar qualquer gerenciamento de conta ou sessão. O samba sempre ignora o PAM para autenticação no caso de criptografar senhas = yes. A razão é que os módulos PAM não podem suportar o mecanismo de autenticação de desafio / resposta necessário na presença de criptografia de senhas SMB. Padrão: obedeça as restrições pam = no "

    
por 26.08.2011 / 14:54