الـ SSH هو إختصار لكلمة Secure Shell ، تم عمل هذه الخدمة من أجل إستبدال الخدمة السابقة telnet والتي يتم إرسال البيانات بين المستخدم والسيرفر بشكل مكشوف أي Clear Text ، يعني الكلمة السرية والبيانات المارة بينك وبين الجهة المتصل بها كلها عبارة عن كتابة مكشوفة يمكن لأي شخص أن يقوم بمراقبة هذه البيانات من خلال برامج الـ SNIFFING وبرامج مراقبة البيانات مثل Wireshark.
خدمةSSH أستبدلت هذه الطريقة بطريقة أكثر قوة من خلال تشفير جميع البيانات المارة بينك وبين السيرفر وبطرق تشفير قوية للغاية منها AES (Advanced Encryption Scheme), Triple DES, Blowfish وغيرها من الطرق القوية.
الصورة التالية توضح طريقة الاتصال بـ Telnet
الصورة التالية توضح طريقة الاتصال بـ SSH
خدمة SSH تدعم طرق توثيق Authentication مختلفة
اولاً: Host-Key Authentication
وهذه هي الطريقة السائدة عند الجميع وتعمل من خلال إستخدامك أسم مستخدم وكلمته السرية على السيرفر للإتصال بذلك السيرفر.
أي ستقوم بالإتصال من خلال إستعمال أسم مستخدم مثلاً binary وتستعمل الكلمة السرية للمستخدم هذا للدخول الى السيرفر.
ويقوم المفتاح الخاص بجهازك Host-Key بتشفير الخط بينك وبين السيرفر.
طبعاً أعلم بإن الكثيرين من أصحاب السيرفرات خاصة يستعملون هذه الطريقة رغم إنها طريقة عادية ويوجد الأقوى منها وأيضاً المستخدمين يستعملونها ربما لعدم معرفتهم بغيرها.
ثانياً: Public-Key Authentication
بدل من إستخدامك لمستخدم وكلمته السرية على السيرفر للإتصال به، نقوم بإستعمال مفتاح خاص بك للإتصال بالسيرفر من خلال هذا المفتاح.
ويكون للمفتاح كلمة مرور Passphrase.
سنقوم بعمل مفتاحين واحد عام Public والآخر خاص Private كل ما عليك هو وضع المفتاح العام على السيرفر المراد الإتصال به مع الإحتفاظ بالمفتاح الخاص وعدم جعل احد يصل له.
هذه الطريقة هي أفضل طريقة بصراحة ولكن تحتاج الى القليل من العمل من طرفك ليتم عملها بالشكل الصحيح.
ثالثاً: Passphrase-Less Authentication
هذه الطريقة هي نفس الطريقة السابقة ولكن فقط لا نقوم بوضع Passphrase على المفتاح الذي نقوم بعمله والسبب في ذلك هو لكي يتم إستخدامه في العمليات الأوتوماتيكية Automated أو في السكربتات أو في وظائف الـ cron. لكن عيب هذه الطريقة هي في حالة حصل احدهم على المفتاح الخاص بك، يصبح بإمكانه عمل كل ما يريد في السيرفر.
الفرق بين TELNET & SSH(secure shell)
من المعلوم لدينا ان telnet يرسل البيانات من غير تشفير clear text والـ ssh تسمح لنا بفتح اتصال الى الراوتر بامان حيث ان البيانات تنتقل مشفره لانها تستخدم شفره rsa يعني عندما ندخل اسم المستخدم وكلمه المرور عند بدء الاتصال تنتقل هذه المعلومات مشفره.
اشهر البرمجيات التي تساعدك على استخدام هذا البرتوكول هو Putty