Usar SSH para conectar a um computador remoto é conveniente, mas há algumas desvantagens. Uma delas é que você precisa digitar a senha a cada vez que você conecta, o que é incômodo num terminal interativo mas inaceitável em um script, pois você precisa que a senha esteja no script. O outro é que uma senha pode ser quebrada. Uma senha longa, aleatório e complexa ajuda, mas torna as autenticações interativas ainda mais incovenientes. É mais seguro ativar o SSH para funcionar sem senhas de uma vez. Primeiro, você precisa ativar um par de chaves para o SSH usando ssh-keygen
como este para gerar chaves RSA (mude o argumento para dsa
em chaves DSA).
ssh-keygen -t rsa
Serão criados dois arquivos em ~/.ssh
, id_rsa
(ou id_dsa
) com sua chave privada e id_rsa.pub
com a sua chave pública. Copie a chave pública para o computador remoto e adicione-a na lista de chaves autorizadas com
cat id_rsa.pub >>~/.ssh/authorized_keys
Agora você pode sair da sessão SSH e iniciá-la novamente. Você não será solicitado a entrar com senha, embora se relacionar uma frase-senha para a chave você será solicitado a digitá-la. Repita isso para cada usuário e cada computador remoto. Você pode fazer isto de maneira ainda mais segura ao adicionar
PasswordAuthentication no
a /etc/ssh/sshd_config
. O SSH passará a recusar todas as conexões sem uma chave, tornando a quebra de senhas impossível.
Uma resposta em “SSH sem senha”
[…] SSH sem senha […]