Criando e configurando um par de chaves SSH no Linux

Este artigo tem por objetivo passar instruções para criação de um par de chaves SSH e configurá-las no Linux para permitir o acesso sem senha. Esta medida tem por objetivo aumentar a segurança no acesso a servidores. Pois a utilização de chaves inviabiliza o ataque de força bruta devido a complexidade das chaves.

Gerando o par de chaves

Para gerar o par de chaves execute o seguinte comando no terminal.

$ ssh-keygen -t rsa

Em seguida você deverá informar o local onde quer gravar as chaves. Para o uso simplificado, não altere o caminho padrão e pressionar ENTER.

No passo seguinte você é solicitado a informar uma senha para as chaves. Isto também é opcional, e se você deseja ter login automático não deverá informar uma senha.

Depois destes passos suas chaves foram geradas e armazenadas em /home/nomedousuario/.ssh/

Para ver o conteúdo da chave pública digite:

$ cat ~/nomedousuario/.shh/id_rsa.pub

Obs.: No Windows existem pelo menos duas formas de gerar o par de chaves. 1) Pelo PuttyGen ou pelo Powershell nas versões mais recentes do Windows.

Copiando a chave pública para um servidor Linux

Existem algumas formas de se fazer este procedimento. Listarei do mais simples ao mais complexo.

Instalando automaticamente

A forma mais automática de copiar sua chave para o servidor é utilizando o comando ssh-copy-id. Se você seguiu os passos como indicados na seção anterior, esta opção deve funcionar. Para transferir sua chave pública para o servidor digite o seguinte no terminal.

$ ssh-copy-id nomedousuario@ipdoservidor

Se o procedimento ocorreu corretamento será apresentado algo parecido com isto:

Para testar se funcionou basta fazer o login. Se tudo deu certo você logará no servidor sem a necessidade de informar uma senha.

$ssh nomedousuario@ipdoservidor

Instalando manualmente

Para instalar o certificado manualmente faça o acesso com sua senha no servidor

Certifique-se de que existe uma pasta no seu diretorio home com o nome .ssh. Caso contrário crie uma.

$ mkdir .ssh

Coloque a permissão correta nesta pasta

$chmod 700 .ssh

Crie um aquivo dentro desta pasta chamado authorized_keys

$ touch .ssh/authorized_keys

Ajuste as permissões do arquivo

$ chmod 600 .ssh/authorized_keys

O último passo é editar o arquivo authorized_keys e colar o conteúdo de sua chave pública nele.

$ nano .ssh/authorized_keys

Depois de ter colado pressione Ctrl+X, Y e ENTER para salvar.

Assim você conseguirá fazer acesso ao servidor com sua chave.

Conectar a uma servidor com a chave privada

Isto poderá ser feito através de um terminal através do comando SSH ou via softwares como MOBA Xterm, Termius e Putty.

Para conectar pelo ssh digite:

$ ssh nomedousuario@ipdoservidor

Caso sua chave privada não seja localizada e você precise indicar o caminho da chave o comando fica assim:

$ ssh -i caminho/chave nomedousuario@ipdoservidor

Para conexão via softwares de terceiros, sempre haverá um local para você indicar o caminho de sua chave privada.

Deixe uma resposta