Desative a viewificação rigorosa das keys ssh

Cada user cria e destrói mais de 15 VM por dia. As VMs são criadas na nuvem interna OpenStack da empresa.

Toda vez que um novo vm é atribuído a um endereço IP que já foi distribuído, o user obtém o erro crashdo da viewificação da key do host temida. Isso ocorre porque a key ssh não coincide com o endereço IP no file known_hosts users.

 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that the RSA host key has just been changed. The fingerprint for the RSA key sent by the remote host is xxxxxxxxxxx Please contact your system administrator. Add correct host key in /home/user/.ssh/known_hosts to get rid of this message. Offending key in /home/user/.ssh/known_hosts:4 RSA host key for domain.com has changed and you have requested strict checking. Host key viewification failed. 

As duas soluções que posso view são:

  • Desativair viewificação rigorosa – (risco de security)
  • Os users executam ssh-keygen -R ipAddress – (os users estão ficando cansados ​​desta solução, desde então, várias vezes por dia)

Existe alguma maneira de evitair esta mensagem de erro, mas ficair seguro? talvez desative a viewificação de security apenas paira uma sub-networking específica?

O excelente recurso HostKeyAlias resolve seu problema:

 ssh -o HostKeyAlias=hostkeyalias__vm_2013-05-11_07 user@host 

cria uma input hostkeyalias__vm_2013-05-11_07 (sem IP) em known_hosts . Clairo, você pode escreview um script ou function shell que define esse valor antes de cada chamada ssh. Ou você usa uma vairiável shell:

 HOSTKEYALIAS=hostkeyalias__vm_2013-05-11_07 ssh -o HostKeyAlias=$HOSTKEYALIAS user@host 

e altere $HOSTKEYALIAS sempre que a VM for alterada. De vez em quando, as inputs antigas devem ser excluídas de known_hosts .

crie ~/.ssh/config com o conteúdo:

 Host * StrictHostKeyChecking no 

Alternativamente, você pode criair um alias paira o ssh:

 ssh -o StrictHostKeyChecking=no 

Você pode recuperair a nova key de host do console da VM e atualizair o file de hosts conhecido depois que uma instância for iniciada.