راهنمای تغییر پورت SSH در سرور مجازی

آموزش تغییر پورت SSH به صورت تصویری و گام به گام

SSH مخفف عبارت Secure Shell است و به یک پروتکل شبکه اشاره دارد که امکان دسترسی به سرور از راه دور را برای کاربران فراهم می‌کند. SSH همچنین برای امنیت بیشتر، ارتباط بین یک کلاینت و یک سرور خصوصی را رمزگذاری می‌کند. به‌صورت پیش‌فرض از پورت 22 برای اتصال به سرور مجازی لینوکس استفاده می‌شود؛ درحالی‌که استفاده از پورت 22 پروتکل کنترل انتقال (TCP) برای SSH با خطراتی همراه است. از جمله این خطرات می‌توانیم به آسیب‌پذیری سرور در برابر تهدیدهای خارجی مانند حملات Brute-force برای دسترسی به داده‌های حساس رمزگذاری‌شده اشاره کنیم. بنابراین، تغییر پورت SSH در سرور مجازی لینوکس یکی از بهترین راه‌ها برای ارتقای امنیت VPS است که در این مقاله قصد آموزش آن را داریم. با انجام گام به گام مراحل تغییر پورت SSH در لینوکس در سریع‌ترین زمان امنیت سرورتان را افزایش دهید.

پروتکل SSH چیست؟

پروتکل SSH (Secure Shell) یک شیوه ایمن برای دسترسی به فایل‌ها و برنامه‌های سرور مجازی از طریق رابط خط فرمان (Command Prompt- CMD) است. پروتکل SSH یک تونل رمزگذاری شده بین سیستم کاربر و سرور مجازی ایجاد می‌کند و اطلاعات به‌صورت رمزگذاری شده بین این دو منتقل می‌شود. این پروتکل شامل دو کلید عمومی و خصوصی است که برای رمزگذاری و رمزگشایی بین سرور مجازی و کلاینت استفاده می‌شود.

اگر برای آشنایی با این پروتکل به اطلاعات بیشتری نیاز دارید، پیشنهاد می‌کنیم مقاله پروتکل SSH از ابر دراک را مطالعه کنید.

راهنمای تغییر پورت 22 SSH در سرور لینوکس

چرا باید پورت SSH را تغییر دهیم؟

پروتکل SSH به‌طور پیش‌فرض برای دسترسی به سرورهای لینوکسی از طریق شبکه اینترنت از پورت 22 استفاده می‌کند. اگرچه استفاده از این پورت به‌دلیل سادگی و سازگاری با انواع سرورها و سیستم‌عامل‌ها برای بسیاری از کاربران مناسب است، اما بیشتر از سایر پورت‌های SSH مورد حمله‌های نفوذی و تهدید‌های خارجی قرار می‌گیرد. به بیان دقیق‌تر، استفاده از پورت پیش‌فرض SSH می‌تواند سرور را در برابر حملات سایبری مانند حملات brute force آسیب‌پذیر کند. این نوع حملات با هدف دستیابی به اطلاعات کاربری و رمزهای عبور انجام می‌شود. ازهمین‌رو توصیه می‌شود که برای افزایش امنیت سرورهای خود، در اسرع وقت به تغییر پورت SSH بپردازید. تغییر پورت SSH در سرور مجازی یک لایه امنیتی به سرور شما اضافه می‌کند. برای آشنایی بیشتر با VPS مقاله سرور مجازی چیست را مطالعه کنید.

بـــازی کنید و برنـــده شـــــوید!

تا ۱۵ درصد تخفیف سرور ابری با Cloud-Man

نحوه انتخاب بهترین پورت برای SSH

هنگام تغییر پورت SSH به این نکته توجه کنید که پورت‌های 1023-0 برای سرویس‌های مختلف رزرو شده‌اند و فقط می‌توانند با دسترسی root محدود شوند؛ به‌طور مثال، پورت 22 از قبل برای سرویس SSH و پروتکل TCP رزرو شده است. در ادامه فهرستی از رایج‌ترین سرویس‌ها و پورت‌های مرتبط با آن‌ها آماده کرده‌ایم:

پورتپروتکلسرویس
20TCPFile Transfer Protocol (FTP) data
21TCPFTP Server
22TCPSSH
23TCPTelnet server
25TCPSimple Mail Transfer Protocol (SMTP)
53TCP/UDPDomain Name System (DNS)
67/68UDPDynamic Host Configuration Protocol (DHCP)
69UDPTrivial FTP (TFTP)
80TCPHypertext Transfer Protocol (HTTP)
110TCPPost Office Protocol 3 (POP3)
123UDPNetwork Time Protocol (NTP)
137/138/139TCP/UDPNetBIOS
143TCPInternet Message Access Protocol (IMAP)
161/162TCP/UDPSimple Network Management Protocol (SNMP)
179TCPBorder Gateway Protocol (BGP)
389TCP/UDPLightweight Directory Access Protocol (LDAP)
443TCPHTTP over SSL/TLS (HTTPS)
636TCP/UDPLDAP over SSL/TLS (LDAPS)
989/990TCPFTP over SSL/TLS (FTPS)
جدول پورت‌های SSH برای سرویس‌های مختلف

البته ذکر این نکته ضروری است که استفاده از پورت‌های بالا مانعی ندارد؛ اما انجام این کار اتصال SSH شما را در معرض خطر تضاد شبکه (Network conflict) قرار می‌دهد. بنابراین توصیه می‌کنیم از بین پورت‌های مختلف از شماره‌های 1024 تا 65535 استفاده کنید.

آموزش تغییر پورت SSH پیش‌فرض

در این بخش قرار است در چهار گام آسان و سریع نحوه تغییر پورت SSH در سرور مجازی لینوکس را به شما آموزش دهیم.

گام اول: اتصال به سرور از طریق SSH

قبل از شروع به تغییر پورت SSH، لازم است با یک کاربر با دسترسی root به سرور خود وارد شوید. برای انجام این کار دستور زیر را در Terminal یا PuTTy اجرا کنید:

ssh username@0.0.0.0

به‌عنوان مثال:

ssh root@187.234.56.1

در مرحله بعد، از شما خواسته می‌شود تا رمز عبور یا کلیدهای SSH را تایپ کنید. بعد از انجام این کار، اتصال برقرار خواهد شد.

گام دوم: ویرایش پیکربندی‌های SSH

ابتدا، فایل پیکربندی SSH را با استفاده از ویرایشگر متنی باز کنید. سپس برای دسترسی به SSH daemon یا sshd دستور زیر را در command Prompt وارد کنید:

sudo nano /etc/ssh/sshd_config

با دستور بالا، فایل پیکربندی SSH باز خواهد شد. خطی که #Port 22 را می‌خواند را پیدا کرده و شماره و # را پاک کنید. سپس آن را با شماره پورت SSH جدیدی که قصد استفاده از آن را دارید، جایگزین کنید؛‌ مانند تصویر زیر:

آموزش تغییر پورت SSH در سرور مجازی لینوکس به صورت تصویری

شماره پورت SSH را به 1026 تغییر دهید:

آموزش تغییر پورت SSH در لینوکس

در نهایت نیز تغییرات را ذخیره کنید.

نکته: اگر محتویات فایل sshd_config شما متفاوت از تصویر بالا به نظر می‌رسد، فقط کافی است یک خط Port جدید به آن اضافه کنید.

به عبارت دیگر، پورت انتخابی شما باید در فایروال سرور allow باشد. برای مثال، اگر می‌خواهید پورت SSH را به پورت 1026 تغییر دهید، خط زیر را به فایل پیکربندی اضافه کنید:

Port 1026

گام سوم: پیکربندی فایروال

تغییر پورت SSH در انواع توزیع های لینوکس روند مشابهی دارد؛ اما با توجه به نوع فایروال ممکن است این روند در سرورهای مختلف تفاوت کوچکی پیدا کند. ازهمین‌رو شما باید مطمئن شوید که پورت انتخابی جدید توسط فایروال مسدود نشده است. در ابتدای راه‌اندازی VPS جدید، همه پورت‌ها باید به‌طور پیش‌فرض باز باشند. برای این کار باید تنظیمات فایروال خود را به‌روزرسانی کنید تا اتصالات ورودی به پورت جدید امکان‌پذیر باشد. برای نمونه ما فایروال UFW را مثال می‌زنیم.

sudo ufw allow 1026/tcp
چگونه پورت SSH را تغییر دهیم؟

با این خط کد به فایروال دستور داده می‌شود که پورت انتخابی را برای سرویس SSH و پروتکل TCP باز کند. سپس با استفاده از دستورهای زیر متناسب با توزیع لینوکس خود، سرویس SSH را ری‌استارت کنید:

  • دبیان و اوبونتو 
sudo service ssh restart
  • دبیان و اوبونتو با systemd
sudo systemctl restart ssh
  • سنت‌اواس و فدورا
sudo service sshd restart
  • سنت‌او‌اس و فدورا با systems
sudo systemctl restart sshd

گام چهارم: تست پورت پیش‌فرض جدید

برای اطمینان از باز بودن پورت جدید SSH، یکی از فرمان‌های ss یا netstat را اجرا کنید:

ss -tulpn | grep 1026
تغییر پورت پیش‌فرض SSH با پورت جدید
netstat -tulpn | grep 1026
ارتقای امنیت سرور مجازی لینوکس با تغییر پورت SSH

حالا می‌توانید با استفاده از دستور زیر برای ورود به SSH تلاش کنید:

ssh -p [port] user@server

برای مثال:

ssh -p 1026 root@0.0.0.0

نکته: با استفاده از یک پنجره Terminal جدید، اتصال SSH را تست کنید. تا زمانی که مطمئن نشده‌اید که راه‌اندازی جدید به‌خوبی کار می‌کند، از Root session قبلی خارج نشوید.

آموزش تغییر شماره پورت SSH برای امنیت بیشتر سرور مجازی

ارتقای امنیت سرور مجازی با روش‌های مختلف

استفاده از پورت SSH 22 شما را به یکی از آسان‌ترین هدف‌های هکرها تبدیل می‌کند؛ زیرا آن‌ها اغلب به دنبال پورت‌های باز هستند که بتوانند داده‌های حساس را رهگیری و استخراج کنند. ازهمین‌رو تغییر پورت SSH یکی از آسان‌ترین و مهم‌ترین کارها برای ارتقای امنیت سرور لینوکس است. این کار را می‌توانید از طریق ویرایش فایل پیکربندی SSH انجام دهید.

با توجه به اینکه پورت SSH به‌عنوان رابط کاربری اصلی برای دسترسی به سرور مجازی و سرور ابری استفاده می‌شود، اهمیت آن در امنیت سرور بسیار مهم است. در نتیجه، پیشنهاد می‌شود پورت SSH را به پورت دیگری تغییر دهید و از امکانات امنیتی دیگر نیز برای حفاظت از سرور مجازی خود استفاده کنید. پیشنهاد می‌کنیم از ابزارهایی مانند nmap (Network Mapper) برای بررسی پورت‌های باز در سرور استفاده کنید تا از پیکربندی درست پورت SSH جدید مطمئن شوید.

اگرچه تغییر پورت SSH می‌تواند به افزایش امنیت سرور مجازی شما کمک کند، اما باید توجه داشت که این روش به‌تنهایی کافی نیست و باید از سایر روش‌ها نیز بهره بگیرید. به‌عنوان مثال، استفاده از فایروال برای محدود کردن دسترسی به پورت SSH، استفاده از کلیدهای عمومی و خصوصی برای ورود به سرور و تنظیمات پیشرفته دیگر در فایل پیکربندی SSH نیز از راه‌های افزایش امنیت VPS هستند. پیشنهاد می‌کنیم برای آشنایی با این روش‌ها، مقاله افزایش امنیت سرور مجازی را مطالعه کنید. در این مقاله 15 راهکار عالی و کاربردی برای بهبود امنیت توضیح داده شده است.

منبع: Hostinger

مقالات مرتبط