يعمل
SSH على المنفذ 22 بشكل افتراضي. هذه ليست مصادفة. إليكم قصة كيف حصل على هذا الميناء.
عندما نشرت أنا (
Tatu Ilonen ) هذه القصة لأول مرة في أبريل 2017 ، أصبحت فيروسية: تم قراءتها من قبل حوالي 120،000 قارئ في ثلاثة أيام.
تاريخ استقبال منفذ 22 لـ SSH
لقد كتبت النسخة الأولى من SSH (Secure Shell) في ربيع عام 1995.
تم استخدام
Telnet و
FTP على نطاق واسع في ذلك الوقت.
ولكن ما زلت طور SSH ليحل محل كل من
telnet
(المنفذ 23) و
ftp
(المنفذ 21). كان المنفذ 22 مجانيًا وموقعًا ملائمًا بين منافذ telnet و ftp. اعتقدت أن رقم المنفذ هذا قد يكون أحد تلك التفاصيل الصغيرة التي ستمنح هالة ثقة SSH. ولكن كيف تحصل عليه؟ لم أقم بتخصيص منافذ أبدًا ، لكنني كنت أعرف من يفعل ذلك.
كان تخصيص الميناء واضحًا إلى حد ما في ذلك الوقت. كانت الإنترنت أصغر ، وكنا في المراحل المبكرة جدًا من ازدهار الإنترنت. تم تخصيص أرقام المنافذ بواسطة IANA (هيئة أرقام الإنترنت المخصصة). في ذلك الوقت ، كان هذا يعني رواد الإنترنت المحترمين
جون بوستيل وجويس سي رينولدز . من بين أمور أخرى ، كان جون هو محرر البروتوكولات البسيطة مثل IP (RFC 791) و ICMP (RFC 792) و TCP (RFC 793). ربما سمع بعضكم عنهم.
كنت خائفة بصراحة من جون كمؤلف لجميع ملفات RFC الرئيسية للإنترنت!
بطريقة أو بأخرى ، ولكن قبل إعلان
ssh-1.0
في يوليو 1995 ، أرسلت البريد الإلكتروني التالي إلى IANA:
من ylo Mon 10 يوليو 11:45:48 +0300 1995
من: Tatu Ylonen <ylo@cs.hut.fi>
إلى: هيئة أرقام الإنترنت المخصصة <iana@isi.edu>
الموضوع: طلب رقم المنفذ
المنظمة: جامعة هلسنكي للتكنولوجيا ، فنلندا
سيدي العزيز ،
لقد كتبت برنامجًا لتسجيل الدخول بأمان من جهاز إلى آخر عبر شبكة غير آمنة. يعد هذا تحسينًا أمنيًا هامًا على بروتوكولات telnet و rlogin الحالية وتنفيذها. على وجه الخصوص ، يمنع IP ، DNS ، وانتحال التوجيه. خطتي هي توزيع البرنامج على الإنترنت بحرية وضمان استخدامه على أوسع نطاق ممكن.
أود الحصول على رقم منفذ مميز مميز للبرنامج. من المرغوب به في النطاق من 1-255 بحيث يمكن استخدامه في مجال WKS على خوادم الأسماء.
أدناه أقوم بتطبيق مشروع RFC للبروتوكول. تم استخدام البرنامج محليًا لعدة أشهر وهو جاهز للنشر ، باستثناء رقم المنفذ. إذا كان بإمكانك تعيين رقم منفذ بسرعة ، أود أن أرسم البرنامج هذا الأسبوع. أستخدم حاليًا المنفذ 22 في الاختبار التجريبي. سيكون من الرائع استخدام هذا الرقم (المدرج حاليًا على أنه "غير مخصص" في القوائم).
اسم الخدمة للبرنامج هو "ssh" (Secure Shell).
التحيات
Tatu Ilonen <ylo@cs.hut.fi>
... ثم يلي ذلك مواصفات بروتوكول ssh-1.0
في اليوم التالي ، كان هناك خطاب من جويس في البريد الوارد:
التاريخ: Mon، 10 Jul 1995 15:35:33 -0700
من: jkrey@ISI.EDU
إلى: ylo@cs.hut.fi
الموضوع: Re: طلب رقم المنفذ
نسخة إلى: iana@ISI.EDU
الوشم
لقد خصصنا المنفذ 22 لـ SSH ، مع تحديدك كجهة اتصال.
جويس
لقد فعلناها! الآن SSH لديه منفذ 22 !!!
في 12 يوليو 1995 ، الساعة 2:32 صباحًا ، أعلنت عن الإصدار التجريبي النهائي لمختبري بيتا في جامعة هلسنكي. في الساعة 17:23 أرسل حزم ssh-1.0.0 إلى المختبرين ، وفي 17:51 أرسل إعلانًا عن SSH (Secure Shell) إلى
cypherpunks@toad.com
البريدية
cypherpunks@toad.com
. قمت أيضًا بتكرار الإعلان في العديد من مجموعات الأخبار والقوائم البريدية وبشكل مباشر للأفراد الذين ناقشوا الموضوعات ذات الصلة على الإنترنت.
تغيير منفذ SSH على الخادم
بشكل افتراضي ، لا يزال خادم SSH يعمل على المنفذ 22. ومع ذلك ، فإنه يحدث بشكل مختلف. سبب واحد هو الاختبار. آخر هو تشغيل تكوينات متعددة على نفس المضيف. من النادر أن يعمل الخادم بدون امتيازات الجذر ، وفي هذه الحالة يجب أن يكون موجودًا على منفذ غير مميز (أي مع عدد 1024 أو أكثر).
يمكن تكوين رقم المنفذ بتغيير توجيه
Port 22
في
/ etc / ssh / sshd_config . يتم تحديده أيضًا بواسطة المعلمة
-p <port>
في
sshd . كما يدعم برنامج SSH وبرامج
sftp المعلمة
-p <port>
.
تحديد منفذ SSH في سطر الأوامر
يمكن استخدام المعلمة
-p <port>
لتحديد رقم المنفذ عند الاتصال باستخدام الأمر
ssh
على Linux. يستخدم
SFTP و
scp
المعلمة
-P <port>
(ملاحظة: حرف P). تعليمات من سطر الأوامر تتجاوز أي قيمة في ملفات التكوين.
تكوين وصول SSH عبر جدران الحماية
SSH هو أحد البروتوكولات القليلة التي يُسمح لها في كثير من الأحيان بالعمل من خلال جدران الحماية للوصول إلى الخارج ، خاصة في الشركات الصغيرة والتقنية. يُسمح عادةً لـ SSH الوارد لخادم واحد أو أكثر.
ssh الصادرة
يعد إعداد ssh الصادر في جدار حماية أمرًا بسيطًا للغاية. إذا كانت هناك قيود على حركة المرور الصادرة بشكل عام ، فما عليك سوى إنشاء قاعدة تسمح بالاتصالات الصادرة على منفذ TCP 22. هذا كل شيء. إذا كنت ترغب في تحديد عناوين الوجهة ، يمكنك إنشاء قاعدة مناسبة عن طريق السماح بالوصول فقط إلى خوادم مؤسستك في السحابة أو إلى
خادم قفزة يحمي الوصول إلى السحابة.
يمثل النفق العكسي خطرًا
ومع ذلك ، يمكن أن يكون SSH غير المحدود السابق محفوفًا بالمخاطر. بروتوكول SSH يدعم
الأنفاق . الفكرة الرئيسية هي أن خادم SSH على الخادم الخارجي يستمع للاتصالات من كل مكان ، ويعيد توجيهها إلى المؤسسة ويقوم بإنشاء اتصال مع نوع من الخادم الداخلي.
في بعض الحالات ، يكون هذا مناسبًا. غالبًا ما يستخدم المطورون ومسؤولو النظام الأنفاق للوصول عن بُعد من المنزل أو من جهاز كمبيوتر محمول أثناء السفر.
ولكن عادةً ما ينتهك نفق السياسة الأمنية ويسيطر على مسؤولي جدار الحماية وفريق IS. على سبيل المثال ، قد ينتهك قواعد
PCI أو
HIPAA أو
NIST SP 800-53 . يمكن استخدامه من قبل المتسللين والخدمات الخاصة لترك الأبواب الخلفية على الشبكة المحلية.
يتحكم برنامج
CryptoAuditor في النفق في جدار الحماية أو عند نقطة الدخول إلى مجموعة من الخوادم السحابية. وهو يعمل بالاشتراك مع
Universal SSH Key Manager للوصول إلى
مفاتيح المضيف ، واستخدامها لفك تشفير جلسات SSH في جدار الحماية وحظر إعادة التوجيه غير المصرح به.
ssh الواردة
للوصول الداخلي ، هناك عدة خيارات:
- قم بتكوين جدار حماية لإعادة توجيه كافة الاتصالات بالمنفذ 22 إلى عنوان IP محدد على الشبكة الداخلية أو DMZ . قم بتشغيل CryptoAuditor أو خادم القفز على عنوان IP هذا للتحكم والتحقق من الوصول إلى المنظمة.
- استخدم منافذ مختلفة على جدار الحماية للوصول إلى خوادم مختلفة.
- السماح بوصول SSH فقط بعد تسجيل الدخول باستخدام VPN ، عادةً عبر IPsec .
تمكين SSH من خلال iptables
يعد Iptables جدار حماية مضيف مدمج في نواة Linux. عادة ما يتم تكوينه لحماية الخادم عن طريق منع الوصول إلى جميع المنافذ التي لم يتم فتحها بشكل صريح.
إذا تم تمكين iptables على الخادم ، فقد تسمح الأوامر التالية بوصول SSH الوارد. يجب تشغيلها من تحت الجذر.
iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT
إذا كنت تريد الاحتفاظ بالقواعد إلى الأبد ، فيمكن القيام بذلك في بعض الأنظمة باستخدام الأمر:
service iptables save
