SSH sem senha (Chave RSA)

Nessa postagem, iremos criar uma chave rsa para que o server01 consiga acessar o server02 sem precisar informar a senha.

Necessidade real: Copiar arquivos do servidor para o server02, via shell script, de forma automatizada no crontab do linux.

1) Começaremos gerando as chaves rsa no server01 no usuário raphael.

Ao executar o comando “ssh-keygen -t rsa” será solicitada algumas informações, podemos deixar tudo como default pressionando apenas o enter em cada ponto.

2) Copiar chave rsa pública para o server02.

Conforme visto anteriormente, a chave pública foi criada em “/home/raphael/.ssh/id_rsa.pub“.
Existem mais de uma forma para copiar a chave para o outro servidor, vou mostrar a forma mais simples:

Utilizando o ssh-copy-id, ele realiza a cópia da chave pública para o servidor remoto e adiciona no arquivo de chaves autorizadas.

Executar o ssh-copy-id no server01 passando como parâmetro o arquivo de chave pública gerada e o ip do server02:

Basta digitar a senha quando solicitado para enviar a chave para o server02.

Essa cópia também pode ser realizada de forma manual, copiando o conteúdo do da chave pública /home/raphael/.ssh/id_rsa.pub no server01 e enviando para o arquivo /home/raphaelsousa/.ssh/authorized_keys do server02.

Pronto, na próxima conexão ssh do usuário raphael no server01 para o usuário raphaelsousa no server02, não será solicitado senha.

OBS: Lembrando que a chave pública precisa ser gerada no usuário que vai realizar a conexão no server01 e enviada para o arquivo de authorized_keys do usuário no qual será conectado no server02.

Referências:
 
RSA (sistema criptográfico)
Criando a chave RSA local

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *