Post

Guia Completo para Criação de Chaves SSH (no Linux e Windows)

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 em key -> Parameters for saving key files.

Desktop View

Na imagem abaixo detalho o que você precisa fazer dentro do PuTTYgen

Desktop View 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.

Desktop View

No menu Connection -> Data, defina o nome de usuário do Servidor que está sendo configurado.

Desktop View

Defina os dados de acesso de acordo com suas configurações do Servidor

Desktop View

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

Desktop View

Parabéns! Você acabou de criar sua chave e realizar o acesso SSH via Putty.

Esta postagem está licenciada sob CC BY 4.0 pelo autor.