Necessità di ignorare HostKeyMismatch quando si accede utilizzando Net :: SSH.start ()
-
01-10-2019 - |
Domanda
:paranoid => false
nel Net :: SSH.start () non sembra al lavoro
Soluzione
È possibile passare un Null verificatore invece di falso:. :paranoid => Net::SSH::Verifiers::Null.new
Questo è essenzialmente ciò che si dovrebbe ottenere quando si passa falso, ma non sembra sempre il lavoro per qualche ragione.
Si prega di notare, solo per essere esplicito. Questo non lo fa ignorare l'eccezione HostKeyMismatch, anzi non ha nemmeno tentare di verificare la chiave host (l'eccezione non viene sollevato a tutti).
Altri suggerimenti
Proprio a voler aggiungere una cosa di più per questo.
È inoltre possibile utilizzare il metodo di remember_host
Net::SSH::HostKeyError
registrare questo host e chiave nel file degli host conosciuti.
Esempio:
begin
.
.
rescue Net::SSH::HostKeyError => e
e.remember_host!
retry
end
Fonte: http: //www.rubydoc.info/github/net-ssh/net-ssh/Net/SSH/HostKeyError#remember_host!-instance_method