پروتکل SSH چیست؟
کنترل رایانه از راه دور، از مدتها قبل مانند یک دغدغه وجود داشته است. بسته به نوع سیستم عاملی که استفاده میکنید راهها و پروتکلهای مختلفی برای این کار وجود دارد. در گذشته کاربران برای ارتباط با سرور از روشهای غیر امن مانند Telent استفاده میکردند. این موضوع باعث ایجاد مشکلات متعددی میشد. اما یک پروتکل پرکاربرد و بسیار امن در این زمینه پروتکل SSH است. این ابزار امکان دسترسی به سرور از راه دور و مدیریت آن به صورت رمزنگاری و امن را برای شما فراهم میکند. اگر برای شما نیز این سوال به وجود آمده است که پروتکل SSH چیست و چه کاربردی دارد، در این مقاله از گنجه بلاگ به این موضوع خواهیم پرداخت.
پروتکل SSH چیست و چه کاربردی دارد؟
SSH مخفف عبارت Secure Shell است که گاهی اوقات با نام Secure Socket Shell نیز شناخته میشود. این پروتکل به شما امکان میدهد به طور ایمن به یک کامپیوتر یا سرور از راه دور متصل شوید. هنگامی که اتصال SSH (اس اس اچ) برقرار شود؛ شما میتوانید با تایپ دستور در رایانه خود، سرور را مدیریت کنید، دستورات را اجرا کنید یا فایلها را از یک رایانه به رایانه دیگر انتقال دهید. معمولاً مدیران سیستم و شبکه و همچنین هر کسی که نیاز به مدیریت رایانه از راه دور به روشی کاملاً ایمن دارد بیشترین استفاده را از پروتکل SSH دارند.
نکته: در مباحث مربوط به این پروتکل، SSH (با حروف بزرگ) به معنی پروتکل و ssh (با حروف کوچک) بیانگر نرمافزارها و سرویسهای این پروتکل است.
SSH چگونه کار میکند؟
پروتکل SSH یک جایگزین امن برای پروتکلهای ورود به سیستم بدون امنیت (مانند telnet و rlogin) و روشهای انتقال فایل ناامن (مانند FTP) میباشد. تفاوت اصلی بین SSH و سایر پورتکلها امنیت بالا و رمزنگاری اطلاعات است. به این ترتیب حتی در صورت دزدیده شدن اطلاعات در مسیر ارتباط، نفوذگر قادر به خواندن آنها نیست و اطلاعات بی فایده خواهند بود.
پروتکل SSH به صورت Client/Server کار میکند. برای اجرای آن هم باید روی سرور و هم روی رایانه کاربر نصب شود. همچنین اس اس اچ جهت اتصال به سرور از پورت 22 استفاده میکند.
انواع روش های ارتباطی در پروتکل SSH
برای استفاده از پروتکل SSH روشهای متنوعی وجود دارد.
- SLOGIN (Secure Login): به معنی ورود امن با سیستمهای مبتنی بر لینوکس
- SSH (Secure Shell): به معنای شل یا پوسته امن برای رد و بدل دستورات
- SCP (Secure Copy): به معنای کپی فایلها و اطلاعات به صورت امن
قابلیت های پورتکل SSH
در بخشهای قبلی مقاله به طور کامل توضیح دادیم که پروتکل SSH چیست؟ توضیح دادیم که SSH این امکان را برای مدیران سرورها و شبکه فراهم میکند که به صورت امن و از راه دور به سرور متصل شوند و آن را مدیریت کنند. اما این تکنولوژی قابلیتهای مختلفی در اختیار کاربران قرار میدهد که عبارتند از:
- امکان تایید هویت کاربران با روشهای مختلف
- امکان ارسال فایلها و دستورات از راه دور
- انتقال فایلها به صورت امن
- مدیریت شبکه به صورت امن
- انتقال پرونده به صورت خودکار و ایمن
- ایجاد تونل امن در بستر TCP/IP
انواع نسخه های پروتکل SSH و تاریخچه آنها
پروتکل SSH دارای نسخههای مختلفی است که از آنها استفاده میشود. در ادامه هریک از آنها را توضیح میدهیم و تفاوت آنها را بیان میکنیم.
نسخه SSH-1
اولین نسخه SSH در سال 1995 ظاهر شد و توسط Tatu Ylönen طراحی شد، که در آن زمان محقق دانشگاه صنعتی هلسینکی بود. این نسخه به صورت رایگان منتشر شد و به خاطر امنیت بالایی که نسبت به پروتکلهایی مانند rlogin ، TELNET ، rsh داشت به سرعت محبوب شد. با گذشت زمان، اشکالات مختلفی در SSH-1 پیدا شده است. اکنون این نسخه به نوعی میتوان گفت منسوخ شده و استفاده از آن ایمنی بالایی ایجاد نمیکند.
نسخه SSH-2
SSH-2، نسخه فعلی پروتکلهای Secure Shell، توسط گروه ویژه مهندسی اینترنت (IETF) در سال 2006 به تصویب رسید. SSH-2 با SSH-1 به دلیل تفاوتهایشان سازگار نیست. این نسخه نسبت به نسخه 1 از قابلیتهای بیشتر و امنیت بالاتری برخوردار است.
نسخه OpenSSH
همانطور که گفتیم پروتکل SSH ابتدا به صورت رایگان عرضه شد. اما پس از مدتی و موفقیتهای آن این پروتکل به شکل انحصاری عرضه شد. همین دلیل باعث شد افرادی که تمایل داشتند از SSH به صورت منبع باز استفاده کنند به آخرین نسخه Open-source آن بازگشتند. سپس توسعه دهندگان نسخه OpenSSH را منتشر کردند. این نسخه از سال 2005 بسیار محبوب شده و در بعضی سیستم عاملها عرضه میشود.
چگونه میتوانیم به SSH در یک سرور متصل شویم؟
اتصال به پروتکل SSH از دو سیستم عامل ویندوز و لینوکس متفاوت است. در ادامه هردو روش را توضیح میدهیم.
نحوه اتصال به سرویس SSH در ویندوز
در سیستم عامل ویندوز نمیتوان به طور مستقیم به SSH متصل شد. برای این منظور باید از یک برنامهی واسط به نام “putty” استفاده کنید. این برنامه Open-source است و میتوانید به صورت رایگان آن را دانلود و از آن استفاده کنید. پس از آن که putty را دانلود و نصب کردید، آدرس IP و پورت SSH را وارد کنید. پورت SSH نیز به صورت پیشفرض 22 است. به این ترتیب میتوانید در ویندوز به پروتکل SSH در سرور متصل شوید.
نحوه اتصال به سرویس SSH در لینوکس و مک
در این سیستم عاملها میتوانید بدون نرمافزار واسط و از طریق ترمینال به SSH متصل شوید. برای اتصال به سرویس SSH در لینوکس، Terminal را باز کنید و کد زیر را در آن وارد کنید.
ssh your_username@serverip –p port
در دستور بالا به جای مقادیر زیر اطلاعات خود را وارد کنید.
- your_username: به جای این مورد نام کاربری خود در سرور را وارد کنید.
- serverip: جای این مورد آدرس سرور را وارد کنید.
- Port: شمارهی پورت SSH را وارد کنید. همانطور که گفتیم در حالت پیشفرض این شماره 22 است. اما ممکن است مدیر سرور جهت امنیت بیشتر این شماره را تغییر داده باشد.
نحوه اتصال به سرویس SSH از طریق اندروید
در اندروید نیز میتوانید به سرویس SSH متصل شوید. برای اتصال به SSH از طریق اندروید میتوانید از برنامه ConnectBot استفاده کنید.
اتصال به سرویس SSH را در مقالهی “نحوه اتصال به سرویس SSH” به طور کامل و مفصل توضیح دادهایم که در صورت نیاز میتوانید مطالعه نمایید.
استفاده از پروتکل SSH برای کنترل سرور از راه دور با امنیت بالا بسیار مفید است. به این ترتیب از امنیت اطلاعات خود مطمئن باشید. امنیت این سرویس بالا بوده و همانطور که گفتیم حتی در صورتی که اطلاعات دزدیده شوند، به دلیل رمزگذاری، استفاده از آنها غیر ممکن خواهد بود. در این مقاله توضیح دادیم که SSH چیست و چه کاربردی دارد؟ همچنین قابلیتها و انواع نسخههای پروتکل SSH را معرفی کردیم. گاهی افراد این پروتکل را با SSL اشتباه میگیرند. در صورتی که قصد دارید فرق این دو پروتکل را باهم بدانید مقاله گواهینامه SSL چیست را مطالعه کنید. امیدواریم که این مقاله باب میل شما بوده باشد. با ارسال نظرات خود ما را به پیشرفت بیشتر سوق دهید.
ممنون از تیم گنجه
مثل همیشه عالی هستید
خسته نباشید
سوالی که دارم اینه که برای اتصال به سرور هاست با ssh به کل سرور دسترسی داریم؟
اگر سرویس هاست اشتراکی داشته باشید خیر؛ اما در سرور های مجازی و اختصاصی با SSH به کل سرور دسترسی دارید
با Shell script php به SSH سرور و یوزر root ش میشه دسترسی پیدا کرد ؟
سلام ثمین عزیز
این مورد در هاستینگ ها غیر فعال می باشد اما در سرور مجازی می توانید این محدودیت را اعمال نکنید و با استفاده از PHP به یوزر دسترسی داشته باشد.