تكوين SSH في أوبونتو

تسمح تقنية SSH (Secure Shell) بالتحكم الآمن عن بعد بجهاز الكمبيوتر من خلال اتصال آمن. يقوم SSH بتشفير جميع الملفات المنقولة ، بما في ذلك كلمات المرور ، وينقل أيضًا أي بروتوكول شبكة. لكي تعمل الأداة بشكل صحيح ، من الضروري ليس فقط تثبيتها ، ولكن أيضًا لتهيئتها. نود التحدث عن منتج التكوين الرئيسي في هذه المقالة ، مع الأخذ على سبيل المثال أحدث إصدار من نظام التشغيل Ubuntu والذي سيكون عليه الخادم.

تكوين SSH في أوبونتو

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

مزيد من التفاصيل: تثبيت خادم SSH في أوبونتو

إنشاء زوج مفاتيح RSA

لا يحتوي SSH المثبت حديثًا على المفاتيح المحددة للاتصال من الخادم إلى العميل والعكس. يجب تعيين كل هذه المعلمات يدويًا فور إضافة جميع مكونات البروتوكول. يعمل الزوج الرئيسي باستخدام خوارزمية RSA (اختصار لأسماء مطوري Rivest و Shamir و Adleman). بفضل نظام التشفير هذا ، يتم تشفير المفاتيح الخاصة باستخدام خوارزميات خاصة. لإنشاء زوج من المفاتيح العامة ، ما عليك سوى إدخال الأوامر المناسبة في وحدة التحكم واتباع الإرشادات التي تظهر.

  1. قم بالتبديل إلى العمل مع الجهاز باستخدام أي طريقة ملائمة ، على سبيل المثال ، عن طريق فتحه من خلال القائمة أو مجموعة المفاتيح Ctrl + Alt + T.
  2. قم بتشغيل محطة في أوبونتو لتهيئة SSH بشكل إضافي

  3. اكتب ssh-keygen ، ثم اضغط على مفتاح Enter .
  4. قم بإنشاء مفتاح SSH من خلال وحدة التحكم في نظام التشغيل Ubuntu

  5. سيُطلب منك إنشاء ملف حيث سيتم حفظ المفاتيح. إذا كنت تريد تركها في الموقع الافتراضي ، فقط اضغط على Enter .
  6. حدد ملفًا لحفظ مفاتيح بروتوكول SSH في أوبونتو

  7. يمكن حماية المفتاح العمومي بواسطة عبارة رمز. إذا كنت تريد استخدام هذا الخيار ، فاكتب كلمة المرور في السطر الظاهر. لن يتم عرض الأحرف التي تم إدخالها. الخط الجديد سيحتاج لتكراره.
  8. إدخال عبارة أساسية عند إنشاء مفتاح SSH في أوبونتو

  9. علاوة على ذلك ، سترى إشعارًا بأنه قد تم حفظ المفتاح ، وستتمكن أيضًا من التعرف على صورته الرسومية العشوائية.
  10. إنشاء مفاتيح SSH بنجاح في نظام التشغيل Ubuntu

يوجد الآن زوج مفاتيح تم إنشاؤه - سري وعام ، وسيتم استخدامه لمزيد من الاتصال بين أجهزة الكمبيوتر. تحتاج فقط إلى وضع المفتاح على الخادم حتى تنجح مصادقة SSH.

نسخ المفتاح العمومي إلى الخادم

هناك ثلاث طرق لنسخ المفاتيح. سيكون كل منها هو الأمثل في المواقف المختلفة حيث ، على سبيل المثال ، لا تعمل إحدى الطرق أو غير مناسبة لمستخدم معين. نقترح دراسة الخيارات الثلاثة جميعًا ، بدءًا من الخيارات الأكثر بسيطة وفعالية.

الخيار 1: الأمر ssh-copy-id

يتم ssh-copy-id الأمر ssh-copy-id في نظام التشغيل ، لذلك لا تحتاج إلى تثبيت مكونات إضافية لتشغيله. اتبع بناء الجملة البسيط لنسخ المفتاح. في "المحطة الطرفية" ، يجب إدخال ssh-copy-id username@remote_host ، حيث يكون username @ remote_host هو اسم الكمبيوتر البعيد.

انسخ مفتاح SSH من خلال أداة خاصة في أوبونتو

عند الاتصال لأول مرة ، ستتلقى رسالة إعلام:

The authenticity of host '203.0.113.1 (203.0.113.1)' can't be established.
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

يجب عليك تحديد خيار نعم لمواصلة الاتصال. بعد ذلك ، ستبحث الأداة بشكل مستقل عن المفتاح في شكل الملف id_rsa.pub ، والذي تم إنشاؤه مسبقًا. الكشف الناجح سيعرض النتيجة التالية:

/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:

حدد كلمة المرور من المضيف البعيد حتى تتمكن الأداة من إدخالها. ستقوم الأداة بنسخ البيانات من ملف المفتاح العمومي ~ / .ssh / id_rsa.pub ، ثم تظهر الرسالة على الشاشة:

Number of key(s) added: 1

حاول الآن تسجيل الدخول إلى الجهاز باستخدام: "ssh '[email protected]'"
التحقق من ذلك.

يعني ظهور هذا النص أنه تم تنزيل المفتاح بنجاح إلى الكمبيوتر البعيد ، ولن تكون هناك مشكلات في الاتصال.

الخيار 2: نسخ المفتاح العمومي عبر SSH

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

cat ~/.ssh/id_rsa.pub | ssh username@remote_host "mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys && chmod -R go= ~/.ssh && cat >> ~/.ssh/authorized_keys" cat ~/.ssh/id_rsa.pub | ssh username@remote_host "mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys && chmod -R go= ~/.ssh && cat >> ~/.ssh/authorized_keys" .

قم بنقل المفتاح المنسوخ من خلال أداة Ubuntu الخاصة

عندما تظهر رسالة

The authenticity of host '203.0.113.1 (203.0.113.1)' can't be established.
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

متابعة الاتصال وإدخال كلمة المرور لتسجيل الدخول إلى الخادم. بعد ذلك ، سيتم نسخ المفتاح العمومي تلقائيًا إلى نهاية ملف التكوين الخاص بـ Author_keys.

الخيار 3: نسخ المفتاح العمومي يدويًا

إذا لم يكن هناك وصول إلى جهاز كمبيوتر عن بعد عبر خادم SSH ، يتم تنفيذ جميع الخطوات المذكورة أعلاه يدويًا. للقيام بذلك ، تعرّف أولاً على المفتاح الموجود على الكمبيوتر الشخصي الخاص بالخادم عبر أداة القيادة cat ~/.ssh/id_rsa.pub .

عرض المعلومات الأساسية من خلال الأمر القط في أوبونتو

على الشاشة ، سيتم عرض السطر التالي: ssh-rsa + ключ в виде набора символов== demo@test . بعد ذلك انتقل إلى العمل على الجهاز البعيد ، حيث أنشئ دليلًا جديدًا من خلال mkdir -p ~/.ssh . بالإضافة إلى ذلك ، يقوم بإنشاء ملف authorized_keys . بعد ذلك ، أدخل المفتاح الذي تعلمته سابقًا من خلال echo + строка публичного ключа >> ~/.ssh/authorized_keys . بعد ذلك ، يمكنك محاولة المصادقة مع الخادم دون استخدام كلمات المرور.

المصادقة على الخادم من خلال المفتاح الذي تم إنشاؤه

في القسم السابق ، تعرفت على الطرق الثلاث لنسخ مفتاح كمبيوتر بعيد إلى خادم. تسمح لك هذه الإجراءات بالاتصال دون استخدام كلمة مرور. يتم تنفيذ هذا الإجراء عبر سطر الأوامر عن طريق كتابة shh ssh username@remote_host ، حيث username @ remote_host هو اسم المستخدم والمضيف للكمبيوتر المطلوب. عند الاتصال لأول مرة ، سيتم إعلامك باتصال غير مألوف ويمكنك المتابعة عن طريق تحديد خيار نعم .

الاتصال بجهاز كمبيوتر عن بعد عبر SSH في أوبونتو

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

تعطيل مصادقة كلمة المرور

يعتبر الإعداد الناجح لنسخ المفاتيح في الحالة التي يمكنك فيها الدخول إلى الخادم دون استخدام كلمة مرور. ومع ذلك ، تتيح القدرة على المصادقة بهذه الطريقة للمهاجمين استخدام الأدوات للعثور على كلمة مرور واقتحام اتصال آمن. ستتيح حماية نفسك من مثل هذه الحالات تعطيل كلمة مرور تسجيل الدخول بالكامل في ملف تكوين SSH. هذا سوف يتطلب:

  1. في المحطة الطرفية ، افتح ملف التكوين من خلال المحرر باستخدام الأمر sudo gedit /etc/ssh/sshd_config .
  2. تشغيل ملف التكوين SSH من خلال محرر في أوبونتو

  3. حدد موقع السطر "PasswordAuthentication" وأزل علامة # في البداية لإلغاء المعلمة.
  4. uncomment سلسلة مع مصادقة كلمة المرور في أوبونتو

  5. قم بتغيير القيمة إلى لا وحفظ التكوين الحالي.
  6. تعطيل مصادقة كلمة مرور SSH عبر Ubuntu

  7. أغلق المحرر وأعد sudo systemctl restart ssh خادم sudo systemctl restart ssh .
  8. أعد تشغيل خادم SSH في نظام التشغيل Ubuntu

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

إعداد جدار الحماية القياسية

في Ubuntu ، يكون جدار الحماية الافتراضي هو جدار الحماية غير المعقد (UFW). يسمح لك بالسماح بالاتصالات للخدمات المحددة. ينشئ كل تطبيق ملف التعريف الخاص به في هذه الأداة ، وتقوم UFW بإدارتها من خلال السماح بالاتصالات أو رفضها. فيما يلي تكوين ملف تعريف SSH عن طريق إضافته إلى القائمة:

  1. افتح قائمة ملف تعريف جدار الحماية باستخدام الأمر sudo ufw app list .
  2. عرض قائمة بملفات تعريف جدار الحماية القياسية في أوبونتو

  3. أدخل كلمة مرور حسابك لعرض المعلومات.
  4. إدخال كلمة مرور لعرض قائمة بملفات تعريف Ubuntu القياسية لجدار الحماية

  5. سترى قائمة بالتطبيقات المتاحة ، يجب أن يكون OpenSSH من بينها.
  6. قائمة ملامح جدار الحماية القياسية في أوبونتو

  7. الآن يجب السماح بالاتصالات عبر SSH. للقيام بذلك ، قم بإضافته إلى قائمة الملفات الشخصية المسموح بها باستخدام sudo ufw allow OpenSSH .
  8. أضف خادم SSH للسماح بالاتصال بجدار حماية Ubuntu

  9. قم بتمكين جدار الحماية من خلال تحديث القواعد ، قم sudo ufw enable .
  10. أعد تشغيل قواعد تحديث جدار الحماية في أوبونتو

  11. للتأكد من السماح بالاتصالات ، يجب عليك تعيين sudo ufw status ، وبعد ذلك سترى حالة الشبكة.
  12. عرض قائمة اتصالات جدار الحماية المسموح بها في أوبونتو

هذا يكمل تعليمات التكوين SSH لدينا لأوبونتو. يتم إجراء المزيد من التكوين لملف التكوين والمعلمات الأخرى شخصيًا بواسطة كل مستخدم بموجب طلباته. يمكنك التعرف على تشغيل جميع مكونات SSH في الوثائق الرسمية للبروتوكول.