Nécessité d'ignorer HostKeyMismatch lors de la connexion en utilisant Net :: SSH.start ()
-
01-10-2019 - |
Question
:paranoid => false
dans le Net :: SSH.start () ne semble pas au travail
La solution
Vous pouvez passer un vérificateur Null au lieu de faux. :paranoid => Net::SSH::Verifiers::Null.new
Ceci est essentiellement ce que vous devriez obtenir lors du passage faux, mais il ne semble pas toujours du travail pour une raison quelconque.
S'il vous plaît noter, juste pour être explicite. Cela ne ignorer l'exception HostKeyMismatch, plutôt il ne tente même pas de vérifier la clé d'hôte (l'exception ne soit pas soulevée du tout).
Autres conseils
Il suffit de vouloir ajouter une chose à ce sujet.
Vous pouvez également utiliser la méthode de remember_host
de Net::SSH::HostKeyError
pour enregistrer cet hôte et la clé dans le fichier hosts connu.
Exemple:
begin
.
.
rescue Net::SSH::HostKeyError => e
e.remember_host!
retry
end
Source: http: //www.rubydoc.info/github/net-ssh/net-ssh/Net/SSH/HostKeyError#remember_host!-instance_method