CH-J Server Managerإدارة الخوادم عبر SSH
القائمة
جميع الأدلة والمقالات ←

تغيّر مفتاح مضيف SSH: معنى التحذير وما ينبغي فعله

اعرف سبب تقديم الخادم مفتاح مضيف جديداً، وتحقق منه عبر قناة أخرى، واستبدل الإدخال المخزن بأمان.

ما الذي يقوله التحذير

يثبت الخادم هويته بمفتاح مضيف. عندما يختلف المفتاح عن الذي حفظه عميلك سابقاً، يعرض OpenSSH الرسالة REMOTE HOST IDENTIFICATION HAS CHANGED ويرفض الاتصال. لا يستطيع العميل التمييز بين تغيير غير ضار وهجوم، لذا اعتبر التحذير غير محسوم حتى تتحقق منه.

الأسباب الشائعة

الأسباب المعتادة هي إعادة تثبيت الخادم، أو استعادة آلة افتراضية أو استنساخها من صورة، أو تخصيص العنوان الآن لجهاز آخر، أو إرسال موازن الحمل اتصالك إلى عقد مختلفة. ويؤدي اعتراض مهاجم للاتصال إلى التحذير نفسه. إذا لم تكن تتوقع تغييراً، فتوقف ولا تدخل كلمة مرور.

قارن بصمات المفاتيح

اقرأ البصمة الحقيقية على الخادم عبر قناة لا تعتمد على اتصال SSH هذا، مثل وحدة تحكم المزود أو وحدة تحكم برنامج المحاكاة الافتراضية. لا يعرض الأمر ssh-keyscan سوى ما تقدمه الشبكة إليك، لذلك لا يثبت شيئاً بمفرده. وتقتصر فائدته على المقارنة بالقيمة المأخوذة من وحدة التحكم.

sudo ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub

ssh-keyscan -t ed25519 server.example | ssh-keygen -lf -

استبدل الإدخال القديم

لا تحذف الإدخال القديم وتعد الاتصال إلا بعد تطابق البصمات. للمنفذ غير القياسي إدخال خاص به يُكتب بأقواس مربعة. يحتفظ ssh-keygen بالملف السابق باسم known_hosts.old. لا تعطّل StrictHostKeyChecking ولا تحذف ملف known_hosts بالكامل، لأن ذلك يزيل الحماية عن جميع خوادمك.

ssh-keygen -R server.example
ssh-keygen -R '[server.example]:2222'
ssh user@server.example

تجنب التحذير بعد إعادة التثبيت

إذا كنت تخطط لإعادة بناء خادم وتريد الاحتفاظ بهويته، فاحفظ نسخة احتياطية آمنة من مفاتيح المضيف في /etc/ssh واستعدها بالمالك والصلاحيات نفسيهما. افعل العكس مع النسخ المستنسخة: يحتاج كل جهاز أُنشئ من صورة واحدة إلى مفاتيح مضيف خاصة به، وإلا اشتركت عدة خوادم في هوية واحدة.

مفاتيح المضيف في CH-J Server Manager

يخزن التطبيق بصمات SHA-256 لمفاتيح المضيف في خزنته المشفرة، منفصلة عن ملف known_hosts الخاص بـ OpenSSH. وعند حدوث تغيير، يحظر الاتصال ويعرض البصمة المعروفة والجديدة. لا يُستبدل الإدخال إلا إذا أكدت ذلك، ولا يغيّر الإلغاء شيئاً. في Alpha 0.1.1 يشمل الفحص أيضاً كل مضيف وسيط، ويتوقف النقل الجاري عندما يتغير المفتاح. لا يستطيع التطبيق التحقق من البصمة الجديدة نيابة عنك، لذا تبقى مسؤولية التحقق عبر قناة أخرى عليك.

وثائق مفصلة

OpenSSH: ssh ←

OpenSSH: ssh-keygen ←

الفتح بالقياسات الحيوية والأمان ←