O HOWTO do NIS(YP)/NYS/NIS+

Anterior

Próximo


13. Alterando senhas com rpasswd

A forma padrão de modificar uma senha NIS é chamar yppasswd, mas em alguns sistemas isto é apenas um atalho para passwd. Este comando utiliza o protocolo yppasswd e requer um processo rpc.yppasswdd rodando no servidor NIS mestre. O protocolo possui a clara desvantagem de enviar a senha antiga como texto limpo pela rede. Na verdade isso não é tão problemático se a troca de senha for bem-sucecida. Neste caso, a senha antiga é substituída pela nova. Mas caso a mudança de senha falhe, um atacante pode utilizar a senha limpa para logar-se como tal usuário. Ainda pior: caso um administrador de sistema modifique a senha NIS para outro usuário, a senha root do servidor NIS mestre trafega como texto limpo pela rede. E esta não será modificada.

Uma solução é não utilizar o yppasswd para alterar a senha. Ao invés, uma boa alternativa é o comando rpasswd do pacote pwdutils.

  Site            Diretório                          Nome do arquivo

  ftp.kernel.org  /pub/linux/utils/net/NIS           pwdutils-2.3.tar.gz
  ftp.suse.com    /pub/people/kukuk/pam/pam_pwcheck  pam_pwcheck-2.2.tar.bz2
  ftp.suse.com    /pub/people/kukuk/pam/pam_unix2    pam_unix2-1.16.tar.bz2

rpasswd modifica a senha para contas de usuários em um servidor remoto sobre uma conexão SSL segura. Um usuário comum pode apenas modificar a senha para sua própria conta, caso o usuário saiba a senha da conta do administrador (o que significa a senha do root no servidor NIS mestre) ele pode mudar a senha de qualquer conta caso chame-se rpasswd com a opção -a.

13.1. Configuração do servidor

Para o servidor é necessário primeiro o certificado, o nome de arquivo padrão para este é /etc/rpasswdd.pem. O arquivo pode ser criado com o seguinte comando:

openssl req -new -x509 -nodes -days 730 -out /etc/rpasswdd.pem -keyout /etc/rpasswdd.pem

Um arquivo de configuração PAM para rpasswdd também é necessário. Caso as contas NIS sejam armazenadas em /etc/passwd, o seguinte é um bom ponto de partida para uma configuração funcional:

#%PAM-1.0
auth     required       pam_unix2.so
account  required       pam_unix2.so
password required       pam_pwcheck.so
password required       pam_unix2.so    use_first_pass use_authtok
password required       pam_make.so     /var/yp
session  required       pam_unix2.so

Caso os fontes para os mapas de senhas NIS sejam armazenados em outros lugares (por examplo em /etc/yp), a opção nisdir do pam_unix2 pode ser usada para encontrar os arquivos fontes em outro lugar:

#%PAM-1.0
auth     required       pam_unix2.so
account  required       pam_unix2.so
password required       pam_pwcheck.so  nisdir=/etc/yp
password required       pam_unix2.so    nisdir=/etc/yp use_first_pass use_authtok
password required       pam_make.so     /var/yp
session  required       pam_unix2.so

Após isso, deve-se iniciar o daemon rpasswdd no servidor NIS mestre.

Uma vez que a mudança de senha é feita com módulos PAM, rpasswdd também pode mudar a senha para NIS+, LDAP ou outros serviços suportados por módulos PAM.

13.2. Configuração do cliente

Em cada cliente o o único arquivo de configuração necessário é /etc/rpasswd.conf, o qual contém o nome do servidor a qual irá conectar-se. Caso o servidor não execute na porta padrão, a porta correta pode ser mencionada neste:

# rpasswdd roda em master.example.com
server master.example.com
# Porta 774 é a porta padrão
port 774

Anterior

Home

Próximo

Sobrevivendo ao reboot

 

Problemas comuns e soluções