كيف يختلف SSH عن Telnet؟

نشرت: 2023-03-15
لقطة مقربة لشاشة كمبيوتر تظهر خيارات تكوين PuTTY.
جوردان جلور / كيف تو جيك
لا يوجد لدى TELNET أي تشفير ، لذلك يتم إرسال كل شيء بنص عادي. SSH مشفر ، لذا فهو خاص وآمن. لهذا السبب يجب استخدام SSH بدلاً من TELNET.

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

TELNET و SSH: قصة الأصل

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

تم تطوير TELNET ، وهي اختصار لـ tel etype عبر بروتوكول العمل على الشبكة ، في عام 1969 كإجابة لهذه المشكلة. طالما كان الكمبيوتر البعيد قابلاً للوصول عبر الشبكة ، فقد سمح للمسؤول ، أو أي شخص مخول آخر ، بالاتصال به واستخدامه كما لو كانوا يضغطون فعليًا على مفاتيح لوحة المفاتيح البعيدة.

تم إنشاء SSH في وقت لاحق - في عام 1995 - كرد مباشر على Telnet وحلول أخرى مماثلة. كانت الضرورة هذه المرة هي الأمن. تم تصميم TELNET و rlogin و FTP والبروتوكولات الأخرى لتلك الحقبة دون أي اعتبار للأمان أو الحاجة المتصورة إليه.

SSH تعني s ecure sh ell ، لذا يمكنك أن ترى أن الأمن كان مبدأ إرشاديًا منذ بدايته. في الوقت الحاضر ، حلت SSH بالكامل تقريبًا محل TELNET.

TELNET هو كابوس أمني عادي

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

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

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

كيف يختلف SSH عن TELNET؟

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

تم تصميم TELNET مع وضع الشبكات الخاصة في الاعتبار ، ولكن تم تصميم SSH للتعامل مع الشبكات العامة ، والحاجة إلى الحفاظ على الخصوصية والأمان عند نقل البيانات وإجراء الاتصالات عن بُعد.

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

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

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

هل يجب عليك استخدام HTTPS أو SSH لـ Git؟
ذات صلة هل يجب عليك استخدام HTTPS أو SSH لـ Git؟

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

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

الفوز الوحيد لـ TELNET هو أنها تستخدم نطاقًا تردديًا أقل. لكن هذا ليس عام 1969 حيث كان النطاق الترددي نادرًا ، و SSH ليس بالضبط خنزير النطاق الترددي.

واجه SSH مشاكله أيضًا

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

إصدار SSH المستخدم في معظم أجهزة كمبيوتر Linux هو OpenSSH ، وهو تطبيق لـ SSH يعتمد على مجموعة أدوات OpenSSL والمكتبات. في عام 2012 ، أدخلت مكتبة OpenSSL عن طريق الخطأ خطأً سمح للمهاجم بطلب استجابة من خادم SSL ، وتحديد مقدار البيانات التي يجب احتوائها في الإجابة.

يمكنهم طلب استجابة (على سبيل المثال) 64 كيلوبايت عندما لا تحتاج الاستجابة الفعلية إلى أكثر من 64 بايت. سيكون التسلسل الأول للبايت في تلك البيانات هو الاستجابة الحقيقية المتوقعة ، متبوعة بكل ما حدث في الذاكرة التي استخدمها OpenSSL مؤخرًا. ما كانت تحتويه هذه البيانات كان حظًا كبيرًا ، لكنها قد تحتوي على معلومات حساسة مثل ملفات تعريف الارتباط للجلسة وكلمات المرور ، أو معلومات أخرى سمحت للمهاجم بالحصول على مفاتيح خاصة ، على سبيل المثال.

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

ومما يثير القلق أيضًا العامان بين 2012 عندما تم تقديم الخطأ و 2014 عندما تم اكتشافه ومعالجته. خلال هذين العامين ، كان كل خادم SSH يشغّل الإصدار الضعيف من OpenSSL في خطر.

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

ذات صلة: أفضل الطرق لتأمين خادم SSH الخاص بك

هل يجب عليك استخدام SSH أو TELNET؟

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

SSH أكثر أمانًا ومرونة - هذه هي ميزة استخدام SSH عبر TELNET. تطبيق OpenSSH مجاني لجميع الاستخدامات بما في ذلك الاستخدام التجاري ، وهو متاح لجميع أنظمة التشغيل الشائعة.

ذات صلة: كيفية الاتصال بخادم SSH من Windows أو macOS أو Linux