تحتاج إلى تجاهل extkeymismatch عند تسجيل الدخول باستخدام net :: ssh.start ()

StackOverflow https://stackoverflow.com/questions/3579508

  •  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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top