SSH sem senha para acesso remoto (utilizando chave pub/priv)

De Wiki do Ouro Minas Palace Hotel
Ir para navegação Ir para pesquisar

Material necessário

Computador Linux e acesso a console

Realizado por

Todos do TI


Descrição

É possível que você efetue o acesso entre seus servidores sem fornecer senhas. Existem duas maneiras de realizar isso, uma é utilizando Kerberos e criando uma rede Single Sign-On e a outra é utilizando chaves pública/privada nos servidores. Neste post abordo a segunda solução, e quem sabe num futuro não muito distante eu descreva a segunda :)

Na maquina cliente (a maquina de onde partirá o acesso a um servidor sem pedir pela senha) crie um par de chaves publica/privada com o comando:

neto@servidorcliente# ssh-keygen -b 4096 -t rsa

onde:

   -b informa o tamanho da chave em bits (1024, 2048, 4096)
   -t informa o tipo da chave (RSA/DSA)

após gerar a chave, é solicitado o diretório onde será armazenado a chave (/home/neto/.ssh/id.rsa) aceite o padrão. Em seguida será solicitado a senha e a confirmação da senha. Como a intenção é logar sem auntenticação, deixe essa senha em branco.

Copie o conteúdo do arquivo /home/neto/.ssh/id.rsa.pub do servidor cliente para o arquivo /home/neto/.ssh/authorized_keys no sevidor, utilize os comandos:

  1. cd /home/neto/.ssh
  2. scp id_rsa.pub neto@servidor:id_rsa-cliente
  3. ssh neto@servidor
  4. cat id_rsa-cliente >> .ssh/authorized_keys

Agora você poderá efetuar logoff e ao logar novamente com o usuário, a senha não será mais solicitada.

Caso queira utilizar o usuário root, não esqueça de liberar no arquivo /etc/ssh/sshd_config o acesso via ssh (PermitRootLogin yes)