Usando SSH para conectar-se a um novo servidor sem armazenar as chaves do host no arquivo $ HOME / .ssh / known_host

9

Eu obtenho a seguinte saída se executar o seguinte comando:

-bash-3.2$ ssh -o "StrictHostKeyChecking no" 192.168.1.77
Warning: Permanently added '192.168.1.77' (RSA) to the list of known hosts.
Last login: Fri Jul  4 10:49:11 2014 from chlorine.example.com
Sun Microsystems Inc.   SunOS 5.10      Generic January 2005
-bash-3.2$

Eu gostaria de executar este comando, sem 192.168.1.77 ser adicionado à lista de hosts conhecidos, mas ainda permitindo um login bem-sucedido.

Existe uma opção SSH que permita isso? Examinei a manpágina ssh_confige tentei todas as opções prováveis, como configuração "CheckHostIP no"sem sucesso.

Tanto o sistema local quanto o remoto estão executando o Solaris 10.

Se necessário, eu poderia fazer backup do meu $HOME/.ssh/known_hostsarquivo antes de fazer uma conexão e restaurá-lo depois de fazer a conexão, mas se houver uma opção SSH que permita evitar isso, prefiro usá-lo.

Warwick
fonte

Respostas:

14

Vejo mais algumas opções da resposta aqui .

Opção 1:

-o "UserKnownHostsFile /dev/null"

Opção 2:

Se você deseja esse comportamento porque trabalha com servidores em nuvem (AWS EC2, Rackspace CloudServers etc.) ou está constantemente provisionando novas imagens no Vagrant, pode atualizar sua configuração de SSH em vez de adicionar aliases de bash ou mais opções no linha de comando.

Considere adicionar algo como:

  Host *.mydomain.com 
  StrictHostKeyChecking no
  UserKnownHostsFile /dev/null
  User foo
  LogLevel QUIET
  • Use o mais estrito possível como regex para que o host seja possível.
  • Definir o LogLevel como QUIET manterá o aviso mencionado por Guillaume.
Ramesh
fonte
1
Bonita. Isso faz o que eu quero. Isso é apenas para um script específico. Ele é usado para recuperação de desastres e quero poder efetuar login em servidores de produção que foram clonados no ambiente de recuperação de desastres. Os endereços IP foram alterados dos IPs de produção, mas não há garantia de que os mesmos IPs serão usados ​​para os mesmos servidores para testes de DR subsequentes. Portanto, se eu evitar incluí-los no arquivo known_hosts, isso ajudará a evitar problemas de conexão durante testes de DR subsequentes. Obrigado montes.
Warwick
@ Warwick, de nada. :)
Ramesh