Com este módulo é possível criar diversas senhas para um mesmo usuário, permitindo que ele se autentique com senhas específicas por serviço.
Você pode configurar uma senha para que o usuário acesse o serviço IMAP e leia seus emails, e outra para ele usar ao acessar o servidor via ssh.
Neste artigo mostro a instalação do módulo e uma configuração de exemplo para o serviço sshd.
Após baixar o tarball do pam-dotfile siga os passos abaixo para instalar:
- Descompactação:
- Configuração do source tree:
- Compilação:
- Instalação (use sudo ou logue como root):
$ tar xzvf pam_dotfile-0.7.tar.gz
$ cd pam_dotfile-0.7
$ ./configure
$ make
$ sudo make install
Se durante a configuração do source tree você receber o erro:
configure: error: *** Sorry, you have to install the PAM development files ***
Instale o pacote pam-devel-X.XX da sua distribuição.
Mostro abaixo um exemplo de configuração de senha diferente para o usuário jedi acessar o serviço ssh:
- Crie a senha do usuário para o serviço ssh:
- Como root, altere o arquivo /etc/pam.d/sshd:
- Inclua as seguintes linhas no início do arquivo:
auth sufficient pam_unix_auth.so
auth sufficient pam_dotfile.so use_first_pass no_warn
auth required pam_deny.so - Deste modo, o usuário poderá conectar via ssh através da senha exclusiva. Entretanto, ele ainda pode se conectar com a senha do sistema. Se você deseja bloquear o acesso a este serviço com a senha do sistema, substitua as linhas anteriores pelas seguintes, no arquivo /etc/pam.d/sshd:
auth [success=done new_authtok_reqd=done authinfo_unavail=ignore default=die] pam_dotfile.so no_warn
auth [success=done new_authtok_reqd=done default=die] pam_unix.so use_first_pass
# su – jedi
[jedi@localhost jedi]$ pam-dotfile-gen -a sshd
Password:
Please repeat; password:
Password added.
[jedi@localhost jedi]$ exit
# vi /etc/pam.d/sshd
Assim configurado, o usuário jedi só conseguirá acesso via ssh através da senha alternativa.
Da mesma forma que configurado para o ssh, qualquer serviço embaixo de /etc/pam.d pode ser alterado para provêr esta funcionalidade.
– hlbog