Guia Completo para Criação de Chaves SSH (no Linux e Windows)
Guia Completo para Criação de Chaves SSH (no Linux e Windows)
Gerando chaves SSH no GNU/Linux
O primeiro passo para configurar a autenticação de chaves SSH para seu servidor é gerar um par de chaves SSH no seu computador local.
Para fazer isso, podemos usar um utilitário especial chamado ssh-keygen, que vem incluso com o conjunto padrão de ferramentas do OpenSSH.
1
$ ssh-keygen -t rsa -b 4096
Para adicionar sua chave SSH às chaves autorizadas, crie-a .ssh se ela não estiver criada em seu servidor.
1
$ mkdir -p ~/.ssh
Dentro da pasta .ssh crie o arquivo authorized_keys. Esse arquivo mantem as chaves publicas autorizadas a fazerem o login.
1
$ touch ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys
Você pode usar o comando ssh-copy-id (no Linux/macOS) para transferir facilmente sua chave pública para o servidor. Caso voce tenha mudado a porta padrão do ssh, use o parâmetro -p seguido da porta 5050.
1
$ ssh-copy-id -p 5050 srv@127.0.0.1
Se ssh-copy-id não estiver disponível, use o comando scp (Secure Copy) para transferir o arquivo da chave pública para o servidor e, em seguida, adicionar a chave ao arquivo ~/.ssh/authorized_keys no servidor.
1
$ scp -v -P 5050 ~/.ssh/id_rsa.pub srv@127.0.0.1:/home/srv/.ssh/id_rsa.pub
Você pode adicionar o conteúdo do seu arquivo id_rsa.pub ao final do arquivo authorized_keys, usando este comando.
1
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
Para realmente implementar as alterações que acabamos de fazer, reinicie o serviço.
1
$ sudo systemctl restart ssh
Se tiver completado todos os procedimentos acima, você deve conseguir fazer login no host remoto
sem a senha da conta.
1
$ ssh srv@127.0.0.1
Criando um alias para conectar via SSH
Um alias Bash é um atalho para substituir comandos longos por comandos mais curtos, economizando tempo e evitando digitação repetitiva. Em um ambiente shell, você deve armazenar os aliases Bash no .bashrc arquivo sob o diretório inicial do usuário.
1
$ echo 'alias sh="ssh -p 5050 srv@127.0.0.1"' >> ~/.bashrc
Recarregar as configurações do .bashrc sem sair do sistema.
1
$ source ~/.bashrc
Conecte-se ao SSH com o aliases criado
1
$ sh
Gerando chaves SSH no Windows - Putty
No Windows você vai precisar do Putty para gerar seu par de chaves pública e privada.
Baixe o instalador com extensão .msi e instale no seu computador.
Depois de instalado, pressione simultaneamente as teclas Windows + R e digite %programfiles%\Putty
Dentro da pasta do PuTTY
, abra o arquivo puttygen.exe. Selecione RSA
como o tipo de chave para gerar, e digite 4096
clique em Generate e movimente o mouse dentro do programa próximo a barrinha de carregamento até terminar.
Por padrão a chave privada é gerada com a versão de arquivo
PPK
definida para 3, se for necessário, altere para a versão 2 emkey -> Parameters for saving key files
.
Na imagem abaixo detalho o que você precisa fazer dentro do PuTTYgen
Gerarando chaves com o PuttyGen
Depois que o PuTTYgen gerar a chave, selecione toda a área criptografada e dê um CTRL + C para copiar a chave pública. Anote-a em um bloco de notas.
Além disso, clique no botão Save private key para salvar a chave gerada. (Clique em Yes no pop-up que surgir). Salve a chave em um local seguro, ela será importante posteriormente.
Se ssh-copy-id não estiver disponível, use o comando scp (Secure Copy) para transferir o arquivo da chave pública para o servidor e, em seguida, adicionar a chave ao arquivo ~/.ssh/authorized_keys no servidor.
1
$ scp -v -P 5050 "C:\Users\User\Desktop\rsa-key.txt" srv@127.0.0.1:/home/srv/.ssh/rsa-key.txt
Você pode adicionar o conteúdo do seu arquivo rsa-key.txt ao final do arquivo authorized_keys, usando este comando.
1
$ cat ~/.ssh/rsa-key.txt >> ~/.ssh/authorized_keys
Configurando o Putty com chave de criptografia
Em SSH -> Auth -> Credentials, na opção Private key file for authentication
insira a chave salva na configuração do puTTYgen
.
No menu Connection -> Data, defina o nome de usuário do Servidor
que está sendo configurado.
Defina os dados de acesso de acordo com suas configurações do Servidor
Digite sua senha SSH
e pressione Enter novamente. Por motivos de segurança, a tela não vai mostrar a senha, mas vai registrar o que você digita
Parabéns! Você acabou de criar sua chave e realizar o acesso SSH
via Putty
.