Página 1 de 1

[Tutorial] Adicionar uma chave pública no Linux

Enviado: 29 Jun 2013 23:50
por marceloleaes
Este post é dedicado para aqueles que precisam conectar-se de um servidor para outro sem senha. Descrevo em poucas linhas e bem mastigado como realizar esta tarefa da maneira mais simples possível.

Antes de explicar como implementar a chave, vou deixar uma pequena definição do que seria chave pública de modo geral segundo a página da Wikipedia.

A criptografia de chave pública ou criptografia assimétrica é um método de criptografia que utiliza um par de chaves: uma chave pública e uma chave privada. A chave pública é distribuída livremente para todos os correspondentes via e-mail ou outras formas, enquanto a chave privada deve ser conhecida apenas pelo seu dono.

Ok, vamos lá então.

1. No terminal, em modo texto vamos criar uma chave pública de e privada de 1024 bits.

Código: Selecionar todos

ssh-keygen -b 1024 -t dsa
Logo abaixo, quando ele pedir a senha para esta chave, pressione enter até o processo terminar.
$ Generating public/private dsa key pair.
$ Enter file in which to save the key (/root/.ssh/id_dsa):
$ Enter passphrase (empty for no passphrase):
$ Enter same passphrase again:
Quando criada, aparecerá na tela algo como o que está abaixo.
$ Your identification has been saved in /root/.ssh/id_dsa.
$ Your public key has been saved in /root/.ssh/id_dsa.pub.
$ The key fingerprint is:
$ 90:00:7f:b2:46:fa:0f:ba:19:0a:cc:13:61:69:bf:06 root@seuservidor
Logo acima foi mostrado na primeira linha onde está salva sua chave pública (public key).

Vale fazer a observação que ao tentar se conectar via ssh em um servidor que tem o serviço de ssh habilitado e ativo e ainda assim não obter sucesso na conexão, você deve entrar dentro do arquivo /root/.ssh/id_dsa.pub, apagar todo o seu conteúdo e tentar novamente a conexão.

2 - Agora, copie a chave para o servidor que deseja acessar sem senha e confirme a conexão.

Código: Selecionar todos

ssh-copy-id -i ~/.ssh/id_dsa.pub seuusuario@servidordestino
Caso sua conexão ssh utilize uma porta específica que não seja a 22

Código: Selecionar todos

ssh-copy-id -i ~/.ssh/id_dsa.pub ‘seuusuario@servidordestino -p 2222
Pronto, agora acesse sem senha com ssh seuusuario@servidordestino

Bom proveito  ;)