نشرت
إذا كنت بحاجة إلى استخدام SSH في Linux لإدارة أجهزة الكمبيوتر الأخرى عن بعد، فسيرشدك هذا الدليل خلال القيام بذلك.
في المشهد المترابط اليوم، تطورت القدرة على إدارة أجهزة الكمبيوتر من مواقع جغرافية مختلفة من الترف إلى الضرورة. هناك عدة طرق للقيام بذلك، اعتمادًا على نظام التشغيل المستخدم. ل الأنظمة المبنية على نظام Linux، الطريقة الأكثر شيوعًا والأكثر أمانًا لإدارة جهاز الكمبيوتر الخاص بك عن بُعد هي استخدام سش (أو صدفه آمنه).
دعونا نتعمق في كيفية استخدام SSH على Linux للاتصال بأجهزة الكمبيوتر الأخرى.
الخطوات الأولى الأساسية
قبل أن تتمكن من الاتصال بنجاح بجهاز كمبيوتر Linux آخر باستخدام SSH، ستحتاج إلى تلبية المتطلبات الأساسية التالية:
- يجب أن يظل الكمبيوتر المستهدف قيد التشغيل ومتصلاً بالشبكة.
- يجب تثبيت وتنشيط برنامج العميل والخادم الضروري.
- ستحتاج إلى معرفة عنوان IP أو اسم المضيف للجهاز المستهدف.
- يجب أن تكون الأذونات المناسبة للوصول عن بعد موجودة.
- يجب تكوينات جدار الحماية على الكمبيوتر البعيد السماح بالاتصال الوارد.
إذا كنت تقوم بالوصول إلى جهاز كمبيوتر يعمل بنظام Linux تديره، على سبيل المثال، شركة استضافة الويب الخاصة بك، فيجب أن تكون قد اهتمت بكل ذلك بالفعل. بعد ذلك، قد يتعين عليك إجراء بعض عمليات تثبيت البرامج الأساسية على جهاز الكمبيوتر الذي يعمل بنظام التشغيل Linux.
استخدام SSH على نظام Linux: دليل عملي
يتطلب إنشاء اتصال SSH فعال وحدات برامج العميل والخادم. يعمل OpenSSH بمثابة بديل مفتوح المصدر في الغالب لمنصات Linux.
لتثبيت عميل OpenSSH المناسب، ستحتاج إلى الوصول إلى المحطة الطرفية على جهازك المحلي. لاحظ أن أنظمة Ubuntu تفتقر إلى خادم SSH مثبت مسبقًا.
تثبيت عميل OpenSSH
قبل الخوض في عملية التثبيت، يجب عليك التحقق للتأكد من أن عميل SSH ليس موجودًا بالفعل. للقيام بذلك، فقط افتح نافذة طرفية. يمكنك إما البحث عن "المحطة" أو الضغط على السيطرة + البديل + ر على لوحة المفاتيح الخاصة بك.
بمجرد دخولك إلى النافذة الطرفية، اختبر وجود عميل SSH عن طريق كتابة ما يلي:
$ ssh
إذا كان جهاز الكمبيوتر الذي يعمل بنظام التشغيل Linux يحتوي على عميل SSH مثبتًا بالفعل، فسترى المعلومات التالية يتم تمريرها عبر الشاشة.
usage: ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-B bind_interface] [-b bind_address] [-c cipher_spec] [-D [bind_address:]port] [-E log_file] [-e escape_char] [-F configfile] [-I pkcs11] [-i identity_file] [-J [user@]host[:port]] [-L address] [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port] [-Q query_option] [-R address] [-S ctl_path] [-W host: port] [-w local_tun[:remote_tun]] destination [command [argument ...]]
إذا تلقيت، بدلاً من ذلك، شكوى بشأن عدم العثور على الملف، فستحتاج إلى المضي قدمًا في تثبيت عميل OpenSSH. لحسن الحظ، هذا بسيط بما فيه الكفاية.
على Ubuntu والتثبيتات الأخرى المستندة إلى Debian، ما عليك سوى تشغيل الأمر التالي في الوحدة الطرفية:
$ sudo apt install openssh-client
إذا كنت تقوم بتشغيل Fedora أو توزيع آخر الذي يستخدم يم بدلاً من ملائم، فقط قم بتشغيل هذا الأمر:
$ sudo yum -y install openssh-clients
قد تستخدم أنظمة فيدورا الأحدث dnf بدلاً من. إذا كان الأمر كذلك، فالأمر السحري هو:
$ sudo dnf install -y openssh-clients
اتبع التعليمات التي تظهر على الشاشة، وسيكون بإمكانك البدء في أي وقت من الأوقات.
بدء اتصال SSH
بمجرد التأكد من تثبيت عميل SSH على جهاز الكمبيوتر الخاص بك الذي يعمل بنظام التشغيل Linux، فقد حان الوقت لبدء هذا الاتصال الأول. أثناء وجودك في نافذة الوحدة الطرفية، قم بإصدار الأمر التالي:
$ ssh username@host_ip_address
إذا كانت أسماء المستخدمين متطابقة عبر الأجهزة المحلية والبعيدة، فما عليك سوى إدخال:
$ ssh host_ip_address
في المرة الأولى التي تتصل فيها، سيتم الترحيب بك بمطالبة تسألك عما إذا كنت تريد مواصلة الاتصال بالكمبيوتر غير المعروف. عند هذه النقطة، اكتب نعم وتواصل.
أدخل كلمة المرور الخاصة بك، مع العلم أنك لن تحصل على أي تعليقات على الشاشة أثناء الدخول. بمجرد الانتهاء من ذلك، يجب أن تقوم بتسجيل الدخول إلى الخادم البعيد ويمكنك البدء في القيام بأي مهمة تحتاج إلى تنفيذها على هذا الكمبيوتر في المقام الأول.
فهم SSH: نظرة عامة رفيعة المستوى
إن Secure Shell أو SSH - الذي يُشار إليه أحيانًا باسم Secure Switch Shell - هو بروتوكول يتيح الاتصال الآمن بالخوادم أو أجهزة الكمبيوتر البعيدة من خلال واجهة قائمة على النص.
عند مصادقة قناة SSH آمنة، تتم تهيئة جلسة shell، مما يسمح بتفاعل سطر الأوامر من جهازك المحلي.
هذا البروتوكول معروف ومحبوب من قبل مسؤولي النظام والشبكات، بالإضافة إلى أي شخص يحتاج إلى إدارة آمنة للأجهزة عن بعد.
ميكانيكا وظائف SSH
يتطلب إنشاء قناة SSH التعاون بين مكونين محوريين: تطبيق من جانب العميل ونظيره من جانب الخادم. يبدأ تطبيق العميل الاتصال عن طريق توفير بيانات اعتماد المضيف البعيد.
إذا تم التحقق منه، يقوم البرنامج بإنشاء قناة مشفرة بين جهازي الكمبيوتر. على الجهاز البعيد، يقوم برنامج SSH الخفي باستمرار بفحص منفذ TCP/IP المعين بحثًا عن طلبات الاتصال المحتملة.
عند الاستلام، ينقل البرنامج الخفي قدراته البرمجية والبروتوكولية، ويقوم كلا الكيانين بتبادل بيانات التعريف. تبدأ جلسة مشفرة في حالة تطابق بيانات الاعتماد، وذلك عبر الإصدار 2 من بروتوكول SSH في الغالب.
استخدام SSH المتقدم: تخزين مفتاح التشفير الخاص بك لتجنب إدخال كلمة المرور
الآن، لنفترض أنك تريد تجنب الاضطرار إلى ذلك ادخل رقمك السري في كل مرة تقوم فيها بتسجيل الدخول إلى خادم بعيد. للحصول على اتصال آمن وخالي من كلمة المرور بجهاز كمبيوتر آخر، لا غنى عن مفتاح SSH (Secure Shell).
ربما تمتلك مثل هذا المفتاح بالفعل، لكن إنشاء مفتاح جديد ليس بالفكرة السيئة على الإطلاق. يتم إنشاء مفتاح SSH على جهاز الكمبيوتر المحلي الخاص بك، وينقسم إلى عنصرين متميزين: مفتاح خاص وسري - لا يتم الكشف عنه أبدًا - ونظيره العام. يتم بعد ذلك نشر هذا المفتاح العام على أي أنظمة بعيدة تحتاج إلى تسجيل الدخول إليها.
قد يختار بعض الأشخاص مفتاح SSH واحدًا لعدد كبير من التطبيقات، بدءًا من تسجيلات دخول النظام عن بعد إلى GitLab. قد تقول مفتاحًا واحدًا للحكم عليهم جميعًا. ومع ذلك، فإن نهجي أكثر تفصيلاً. أستخدم مفاتيح مختلفة، كل منها مصمم لمجموعة فرعية محددة من المهام.
على سبيل المثال، أستخدم مفتاحًا مخصصًا للأجهزة المحلية داخل شبكتي المنزلية، وهو مفتاح آخر حصري مفتاح لخوادم الويب تحت إدارتي، ومفتاح فريد آخر للتفاعل مع Git المضيفين.
إنشاء زوج مفاتيح SSH جديد
إليك كيفية إنشاء مفتاح SSH جديد ثم نسخه إلى الخادم البعيد الذي تريد استخدامه من أجله. أولاً، قم بإنشاء المفتاح باستخدام ssh-keygen.
$ ssh-keygen -t ed25519 -f /.ssh/lan
العلم -ر يحدد نوع المفتاح المراد إنشاؤه، مما يضمن أن التشفير أعلى من الافتراضي. ال -F تقوم العلامة بتعيين اسم ملف المفتاح وموقعه.
عند إصدار هذا الأمر، سيُطلب منك إنشاء كلمة مرور للمفتاح. تظل كلمة المرور هذه، إذا قمت بتعيينها، محلية ولا يتم إرسالها عبر الشبكة.
إرسال مفتاح SSH الخاص بك إلى الخادم البعيد
بعد ذلك، ستحتاج إلى إرسال مفتاح الأمان هذا إلى الخادم البعيد. لتحقيق ذلك، فقط قم بإصدار هذا الأمر:
$ ssh-copy-id -i /.ssh/lan.pub user@host_ip_address
سيُطلب منك كلمة مرور تسجيل الدخول الخاصة بك على المضيف البعيد. وبمجرد اكتمال العملية، سيتم تثبيت مفتاحك على هذا الكمبيوتر.
يجب عليك الاختبار من خلال محاولة تسجيل الدخول إلى الكمبيوتر البعيد. عندما تقوم بإدخال ssh في المضيف البعيد مرة أخرى، سيُطلب منك إدخال عبارة المرور للمفتاح، إذا قمت بتعيين واحدة. هذه ليست كلمة مرور تسجيل الدخول الخاصة بك، تذكر. إنها عبارة المرور الخاصة بمفتاح SSH هذا.
في العديد من التوزيعات، بما في ذلك Linux، سيتم فتح مطالبة عبارة المرور هذه كمربع حوار. كما ترون من المثال أدناه، يمكنك تحديد المربع لجعل جهاز الكمبيوتر الذي يعمل بنظام التشغيل Linux يتذكر عبارة المرور. سيؤدي ذلك إلى تقليل أمان المفتاح.
بمجرد إدخال عبارة المرور لمفتاح SSH، لن تضطر إلى كتابتها مرة أخرى حتى تقوم بتسجيل الخروج من الكمبيوتر المحلي.
طرق أخرى لاستخدام SSH
بعد الانتهاء من كل ذلك، من الجيد استخدام SSH للوصول عن بعد إلى أجهزة الكمبيوتر الأخرى التي تعمل بنظام التشغيل Linux أو Unix. وبطبيعة الحال، لا يتعلق الأمر فقط بالوصول إلى موجه الأوامر.
يتضمن SSH أيضًا طريقة آمنة لنقل الملفات بين أجهزة الكمبيوتر دون استخدام FTP. يمكنك استخدام النسخة الآمنة، أو scp، ل نقل تلك الملفات حولها. إذا كنت من مستخدمي Windows 11 وتحتاج إلى استخدام SSH، فأنت محظوظ لأن العميل مثبت مسبقًا. أنت تستطيع حتى توليد واستخدام مفاتيح SSH في نظام التشغيل Windows 11.