segunda-feira, 21 de dezembro de 2009

Chave de confiança entre dois Ubuntu (ssh sem senha)

Situação: Fazer com que um Ubuntu acesse outro na rede por ssh sem pedir senha.

No pc que será acessado via ssh, descomente as seguintes linhas do arquivo /etc/ssh/sshd_config
PubkeyAuthentication yes
AuthorizedKeysFile     %h/.ssh/authorized_keys

No pc que acessará, as seguintes linhas devem estar descomentadas no arquivo /etc/ssh/ssh_config (note a diferença, no servidor era o sshd_config)
IdentityFile ~/.ssh/identity
IdentityFile ~/.ssh/id_rsa
IdentityFile ~/.ssh/id_dsa

Falta agora gerar a chave no pc que acessará e enviar para o outro pc que será acessado. Note que a chave deve ser gerada pelo usuário que acessará sem senha o outro computador, que por sua vez, também terá que ter o mesmo usuário no sistema. No comando abaixo, a chave é gerada logado como usuário bkp no micro 1 e exportada para o micro 2 também como usuário bkp. Ao executar o comando da primeira linha, teclar enter no momento que o sistema pedir a Passphrase para que seja possível conectar sem senha.
$ ssh-keygen -t dsa -f /home/bkp/.ssh/id_dsa
$ cat /home/bkp/.ssh/id_dsa.pub | ssh bkp@ip_maquina_remota 'cat - >> /home/bkp/.ssh/authorized_keys'
$ cat /home/bkp/.ssh/id_dsa.pub >> /home/bkp/.ssh/authorized_keys

Agora, logado como bkp, você pode fazer o seguinte teste e ver que não pedirá mais senha:
$ ssh bkp@ip_maquina_remota

0 comentários:

Postar um comentário