As necessidades de exemplo para este tipo de configuração:
- Automatização de conexão de programas para transferência de arquivos.
- Sistemas ou aplicações para monitoramento de ambientes remotos.
- Agilidade para administração de sistemas.
Este documento terá como base sistemas Linux com o uso de distribuições Debian e Ubuntu.
Em nosso ambiente teremos uma máquina que será a client e uma servidor, em ambas estão instalados os pacotes openssh-client, apenas no server temos instalado o openssh-server. A versão do protocolo SSH que iremos usar neste exemplo é a versão 2 ou SSH2.
Na máquina client, devemos determinar qual usuário iremos usar para poder se logar no servidor. Em nosso exemplo vamos eleger o user.
Dentro do diretório /home/user deveremos ter um diretório oculto chamado .ssh, caso não tenha crie este diretório e recomendo fortemente que seja verificado as permissões deste diretório, para incrementar a segurança altere as permissões para 700.
Criando a chave de segurança.
Como a versão do protocolo a ser usado é o SSH2, iremos criar uma chave do tipo rsa:
[user@client ~]$ ssh-keygen -t rsaRecomendo que em todas as perguntas seja dado apenas enter, afim de deixar os passphrase vazios.
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/user/.ssh/id_rsa.
Your public key has been saved in /home/user/.ssh/id_rsa.pub.
The key fingerprint is:
fb:d2:07:3b:64:b0:a7:13:c0:ae:62:b9:b1:c6:79:04 user@client
Enviando a chave para o servidor
Enviar o arquivo id_rsa.pub para o servidor, para isso podemos usar SFTP que é um sistema de tranferência de arquivos seguro e com base no ssh.
Ao enviar, você já pode salvar o arquivo id_rsa.pub com outro nome, authorized_keys, ou ainda renomear ele no servidor ou executar o seguinte comendo :
cat ~/.ssh/id_rsa.pub > ~/.ssh/authorized_keysEvitando problemas de segurança
No diretório .ssh no servidor verifique as permissões para o arquivo authorized_keys, o ideal é que esteja com as permissões 700.
As permissões de diretório também são importantes, principalmente as permissões do diretório .ssh sendo que para este o ideal são permissões 700.
Se o ssh server estive iniciado e funcionando corretamente, podemos fazer o teste tentando conectar ao servidor a partir do client e a conexão será estabelecida sem a necessidade do uso da senha do user.
Alguns links de sugestão e que foram usados para estudo :
SSH Completo - Artigo do Site Viva o Linux escrito por Leandro Totino Pereira
http://www.vivaolinux.com.br/artigo/SSH-completo-%28passo-a-passo%29?pagina=1
Para Troubleshooting :
http://sial.org/howto/openssh/publickey-auth/problems/
Nenhum comentário:
Postar um comentário