تحتاج إلى تجاهل extkeymismatch عند تسجيل الدخول باستخدام net :: ssh.start ()
-
01-10-2019 - |
سؤال
:paranoid => false
في الشبكة :: ssh.start () لا يبدو أنه يعمل
المحلول
يمكنك تمرير ageier فارغ بدلاً من خطأ: :paranoid => Net::SSH::Verifiers::Null.new
.
هذا هو ما يجب أن تحصل عليه بشكل أساسي عند المرور False ولكن لا يبدو أنه يعمل دائمًا لسبب ما.
يرجى ملاحظة ، فقط لتكون صريحة. لم يحدث ذلك يتجاهل استثناء HostKeymismatch ، بل لا يحاول حتى التحقق من مفتاح المضيف (الاستثناء لا يتم رفعه على الإطلاق).
نصائح أخرى
فقط لأريد إضافة شيء آخر إلى هذا.
تستطيع ايضا استخذام remember_host
طريقة Net::SSH::HostKeyError
لتسجيل هذا المضيف والمفتاح في ملف المضيفين المعروف.
مثال :
begin
.
.
rescue Net::SSH::HostKeyError => e
e.remember_host!
retry
end
مصدر : http://www.rubydoc.info/github/net-ssh/net-ssh/net/ssh/hostkeyerror#remmed_host! instance_method