Felipe Diesel

Desenvolvedor de software

Foto de Felipe Diesel
Posts tagged shell

SSH mais simples ainda

June 2, 2008 -

Eu estava brigando a com o rsync para enviar um arquivo para um servidor em que a posta ssh não era a 22 (padrão) e descobri algo muito mais interessante, que com certeza é útil para muita gente.

Você pode criar aliases para suas conexões ssh. O rsync roda utilizando o ssh, então também funciona. Com isso, você pode logar via ssh da seguinte forma: ssh servidor.

Para que isso funcione, altere (ou crie se necessário) o arquivo ~/.ssh/config da seguinte forma:


Host servidor
  hostname enredeco.do.host.com
  user nome.do.usuario
  port 22

A porta só especifique se não for o padrão.

Fácil não?

E não esqueça de dar uma olhada no meu artigo sobre como logar sem senha, para facilitar ainda mais sua vida! :D

Logando num servidor ssh sem senha

January 12, 2007 -

Eu estava tentando baixar os backups do nosso servidor para minha máquina e esbarrei num detalhe simples: Toda vez que eu iniciava a transferência via rsync tinha que pôr novamente a senha. Troquei umas palavras com o Janio e ele disse que tinha como fazer isso usando export keys. Procurei na web e agora a pedido dele mostro aqui todos os passos.

Para logar no servidor ssh sem uso de senha, mas mantendo a segurança, utiliza-se uma chave pública (no servidor) e uma privada (na minha máquina).

Primeiro devemos criar as chaves de acesso entre os servidores:

ssh-keygen -b 1024 -t rsa

Este comando diz para criar uma chave de 1024 bits usando o algoritmo rsa.

Feito isso aparecerá no seu terminal:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/felipe/.ssh/id_rsa):

Você deve especificar o nome do arquivo, o melhor é não alterar, portanto apenas pressione ENTER.

Enter passphrase (empty for no passphrase): 
Enter same passphrase again:

Agora foi pedido uma ‘passphrase’ que é uma ‘frase-senha’. Como queremos logar sem senha, não coloque nada e pressione ENTER 2 vezes.

The key fingerprint is:
00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00

Aparecendo isso, quer dizer que tudo ocorreu corretamente. Esta fingerprint será diferente em cada caso. Agora temos que copiar nossa chave pública para o servidor. Faça isso com o seguinte comando:

usuario@local:~$ scp /home/usuario/.ssh/id_rsa.pub usuario@123.123.123.123:/home/usuario/.ssh/

Não esqueça deve ser a chave PÚBLICA. A privada nunca sai de sua máquina.

Logando-se no servidor você perceberá que ele ainda pede senha, isso acontece por que você deve renomear o arquivo enviado para ‘authorized_keys’:

mv id_rsa.pub authorized_keys

Update: O comando acima apaga qualquer outra chave que você já tenha no servidor. Para adicionar a chave as já existentes, faça da seguinte forma:

cat id_rsa.pub >> authorized_keys

Agora logue-se novamente que tudo irá funcionar!

Referências: SSH sem senha, Logando com segurança num servidor ssh sem uso de senha e Rsync sem senha