Administrar servidores não é uma tarefa muito simples, e uma das tarefas
mais difíceis é memorizar todos os usuários e senhas de acesso. Sorte
que podemos contar com uma opção muito útil do SSH, a conexão via chave pública/privada.
Obs.: Para entender como funcionam as chaves públicas/privadas, sugiro a leitura deste artigo:
O primeiro passo é gerarmos as chaves. Este procedimento deve ser feito
na máquina de onde será feita a conexão (cliente), para isso, vamos
utilizar o seguinte comando:
Obs.: Usarei como exemplo o usuário "joao" para o cliente e "joao_servidor" para o servidor.
# ssh-keygen
Obs.: O tipo padrão para a criação da chave é RSA, porém, caso queira
especificar o tipo da chave, basta adicionar ao comando o parâmetro: -t rsa
Depois de executar o comando acima, você será perguntado sobre o nome do arquivo, no nosso caso, deixaremos o padrão (/home/joao/.ssh/id_rsa) e vamos pressionar ENTER.
Logo depois você terá a opção de adicionar uma passphrase à sua
chave, porém, toda vez que for conectar, será necessário digitar essa
senha. No nosso caso, deixarei em branco para não precisar usar senha,
sendo assim, basta pressionar ENTER duas vezes.
Pronto. Sua chave já foi gerada, para conferir basta entrar no diretório que escolhemos para salvar a chave (/home/joao/.ssh/id_rsa) e verificar se os arquivos "id_rsa" e "id_rsa.pub" foram criados.
Agora o que temos que fazer é passar a chave pública para o servidor
SSH, porém, antes de mais nada, devemos verificar se no servidor há a
pasta ".ssh" (o " . " indica que é um diretório oculto) dentro da HOME
do usuário que usaremos para logar (no caso: joao_servidor), se não
existir, devemos criar.
Depois do diretório criado, passamos o arquivo com o seguinte comando:
# scp /home/joao/.ssh/id_rsa.pub joao_servidor@server:/home/joao_servidor/.ssh
Pronto, o que tínhamos que fazer na máquina cliente já terminamos, agora
devemos entrar no servidor SSH para terminarmos a configuração.
Já logado no servidor SSH, jogaremos nossa chave pública para o arquivo de autenticação:
# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
Pronto, agora podemos voltar para a máquina cliente e testarmos a conexão com o seguinte comando:
# ssh joao_servidor@servidor
Se tudo correr bem, você logará no servidor sem ter que digitar a senha.
Nenhum comentário:
Postar um comentário