Conexão SSH sem senha
Ai vai uma dica de como logar num servidor ssh sem uso de senha com segurança. Vamos gerar duas chaves: pública e uma privada.
Para que vou querer uma conexão sem senha? Talvez você tenha vários servidores e um deles é sue backup, e irá enviar arquivos desses servidores para o de backup.
Você poderá criar essas chaves como root ou usuário “comum”.
Cenário:
- 200.200.0.14 Servidor Backup - 200.200.0.2 Servidor Web
Por segurança para cada servidor que irá enviar o backup eu irei criar um usuário especifico.
Logue no meu servidor de backup e crie um usuário que irá receber a conexão. Ex.: bkpweb
$ ssh seu_usuario@200.200.0.14 $ su - # adduser bkpweb # su - bkpweb $ mkdir .ssh
Acesse seu servido “web”.
# ssh-keygen -t rsa
Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: SHA256:FgexLxcaDa6IVxcx8/lmA/BuE1RID5Rae6V55Qr5oLg root@cobaia The key's randomart image is: +---[RSA 2048]----+ | X==+. | | . &++ . .| | . *oX..= o | | . o o.B.=B . .| | . o . S.*o== . | | . ..+.+ .o | | . | | E | | | +----[SHA256]-----+
Com isso temos nossas duas chaves. Dois arquivos foram criados em /home/remontti/.ssh/. Sendo eles o id_rsa e id_rsa.pub.
– id_rsa é o arquivo no qual estará guardada sua chave privada. Pois ele será o responsável por toda a segurança de nossa comunicação.
– id_rsa.pub é o arquivo da chave pública, que iremos enviar a todos os servidores para que nosso acesso seja autorizado.
Envie sua chave publica para o servidor de backup para /home/”USUARIO”/.ssh/ com o nome de authorized_keys.
# scp -P 22 id_rsa.pub bkpweb@200.200.0.14:/home/bkpweb/.ssh/authorized_keys
Pronto, o servidor 200.200.0.14 aceitara todas vindo do usuário q você criou a chave sem solicitar uma senha usuário “bkpweb”.
Faça um teste do seu servidor “web” com destino ao de backup:
# ssh bkpweb@200.200.0.14 -p 22
Se tudo ocorreu como deveria não lhe foi mais solicitado senha! Agora você pode usar o comando scp.
Ex.:
# scp -P 22 meu_bkp.tar.gz bkpweb@200.200.0.14:/home/bkpweb/
Faça seu script e agende no cron e poderá ter um backup diário, semanal…. Utilize como achar melhor.
Ou simplesmente você está criando essa chave para poder acessar seus servidores, roteadores, etc…
Espero que tenha gostado!
Se quiser fazer uma doação para o café ficarei muito feliz pelo seu reconhecimento!
Boa dica amigo…
Gostei dessa Rudi.. interessante.. eu Conheço um pouquinho de SSH.
Legal mesmo.