Olá pessoal,
Aproveitando o último post do Hudson, que abrange o fator \”conectividade\”, segue mais uma sobre o nosso poderoso protocolo SSH:
Quem nunca reclamou \”Po qual é a senha daquele servidor mesmo..?!\”, ou ainda reclamou por ter de digitar a senha de acesso durante a copia de vários arquivos via ssh. Bem para quem passa ou passou por isso segue a solução, no qual fará todas as transações SSH sem o pedido de senha.
Para criar uma relação de confiança entre dois ou mais micros na rede, existe um procedimento um tanto quanto simples.
Primeiramente é necessário criar uma chave de conexão segura na máquina de origem, ou seja, na máquina em que vai partir a conexão ao alvo, sem pedir senha. A geração deve ser feita com o comando a seguir:
ssh-keygen -t rsa -f ~/.ssh/id_rsa
Neste comando, será solicitado a inserção de duas informações, sendo que todas as duas podem permanecer em branco. São elas:
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Depois, basta executar remotamente o comando para importar esta chave gerada para o banco de confiança da máquina remota com o comando a seguir:
cat ~/.ssh/id_rsa.pub | ssh root@ip_da_maquina \”cat – >> ~/.ssh/authorized_keys\”
Vale lembrar que a confiança com os comandos acima será criada para os usuários que estão sendo usados no momento de geração da chave, e no usuário de autenticação na maquina \”alvo\”. Sendo assim, só funcionará para os dois usuários em questão. O procedimento pode ser feito para todos os usuários que for necessário, tanto na maquina origem quanto na destino.
Feito isso todas as conexões com destino ao host selecionado serão feitas sem pedido de senha, pois já estarão armazenadas no \”banco de confiança\” da maquina destino.
Boa sorte para todos em 2009, e até a próxima.
Por: Franklin Moretti
Fonte de pesquisa:
man ssh-keygen
Dica: existe o comando ssh-copy-id (ao meno em Debian e derivados) para fazer a cópia da chave pública para o servidor remoto. 😉
O binario ssh-copy-id só encontrei nos Debian e derivados também..
Seria legal se a RedHat resolvesse implementar nativo também.