سرور مجازی یا وی پی اس، به ماشین مجازی اطلاق میشود که برای اجرای سرویسهای شبکهای مانند وبسایتها، برنامههای کاربردی، پایگاههای داده و سرورهای ایمیل استفاده میشود. در واقع، سرور مجازی به عنوان یک سرور مستقل عمل میکند. هر سرور مجازی دارای سیستم عامل و منابع مستقلی مانند پردازنده، حافظه، فضای دیسک و پهنای باند است که به صورت اختصاصی برای آن سرور مجازی در نظر گرفته شده است. برای دسترسی به سرور مجازی لینوکس باید از پروتکل SSH استفاده کرد. اتصال به سرور مجازی ویندوز نیز از طریق پروتکل دیگری به نام Remote Desktop Protocol (RDP) انجام میشود.
آنچه در این مقاله میخوانید:
برای آشنایی بیشتر با سرور مجازی اینجا کلیک کنید.
پروتکل SSH چیست؟
پروتکل SSH (Secure Shell) یک شیوه ایمن برای دسترسی به فایلها و برنامههای سرور مجازی از طریق رابط خط فرمان (Command Prompt- CMD) است. پروتکل SSH یک تونل رمزگذاری شده بین سیستم کاربر و سرور مجازی ایجاد میکند و اطلاعات به صورت رمزگذاری شده بین این دو منتقل میشود. این پروتکل شامل دو کلید عمومی و خصوصی میشود که برای رمزگذاری و رمزگشایی بین سرور مجازی و کلاینت استفاده میشوند.
برای آشنایی کامل با پروتکل SSH اینجا کلیک کنید.
تغییر پورت SSH در سرور مجازی
پروتکل SSH به طور پیشفرض برای دسترسی به سرورهای لینوکسی از طریق شبکه اینترنت از پورت 22 استفاده میکند. اگرچه استفاده از این پورت برای بسیاری از کاربران مناسب است، اما برخی از کاربران برای افزایش امنیت سرورهای خود، تصمیم به تغییر پورت SSH میگیرند. استفاده از پورت SSH پیشفرض میتواند سرور را در برابر حملات سایبری مانند حملات brute force آسیبپذیر کند. این نوع حملات با هدف دستیابی به اطلاعات کاربری و رمزهای عبور انجام میشود. تغییر پورت SSH در سرور مجازی یک لایه امنیتی به سرور شما اضافه میکند.
در ادامه مراحل تغییر پورت SSH در وی پی اس را توضیح خواهیم داد. در هنگام تغییر پورت SSH باید به این نکته دقت داشته باشید که پورتهای 1023-0 برای برای سرویسهای مختلف رزرو شده است و فقط میتواند با دسترسی root محدود شود؛ به طور مثال پورت 22 از قبل برای سرویس SSH و پروتکل TCP رزرو شده است. استفاده از این پورتها ممکن است اتصال SSH شما را در معرض خطر تضاد شبکه (risk of network conflict) قرار دهد.
قبل از شروع به تغییر پورت SSH، لازم است با یک کاربر با دسترسی root به سرور خود وارد شوید.
ویرایش فایل پیکرهبندی SSH
ابتدا، فایل پیکرهبندی SSH را با استفاده از ویرایشگر متنی باز کنید. برای این کار، دستور زیر را در command Prompt وارد کنید:
sudo nano /etc/ssh/sshd_config
تغییر پورت SSH
پورت SSH را از پورت پیشفرض 22 به پورت دلخواه خود تغییر دهید. باید به این نکته دقت داشته باشید که پورت انتخابی شما باید در فایروال سرور allow باشد. برای مثال، اگر میخواهید پورت SSH را به پورت 20202 تغییر دهید، خط زیر را به فایل پیکرهبندی اضافه کنید:Port 20202
ذخیره تغییرات
تغییر پورت SSH در تمام خانواده لینوکس روند مشابهی دارد؛ اما با توجه به نوع فایروال ممکن است این روند در سرورهای مختلف تفاوت کوچکی پیدا کند. کاربر باید اطمینان حاصل کند که پورت انتخابی توسط فایروال مسدود نشده است. در ابتدای راهاندازی وی پی اس همه پورتها باید به طور پیشفرض باز باشند. برای این کار باید تنظیمات فایروال خود را بهروزرسانی کنید تا اتصالات ورودی به پورت جدید امکانپذیر باشد. برای نمونه ما فایروال UFW را مثال میزنیم.
sudo ufw allow 20202/tcp
با این خط کد به فایروال دستور داده میشود که پورت انتخابی را برای سرویس SSH و پروتکل TCP باز کند.
راهاندازی مجدد سرویس SSH

پس از ذخیره تغییرات، سرویس SSH را مجدداً راهاندازی کنید. برای این کار، دستور زیر را وارد کنید:
Reboot
تأیید تغییرات
با استفاده از یکی از نرم افزارهای SSH، به سرور خود متصل شوید و بررسی کنید که تغییرات پورت SSH با موفقیت اعمال شده است. برای این کار، باید از پورت جدید استفاده کنید. به عنوان مثال، اگر پورت SSH را به پورت 2222 تغییر دادهاید، برای ورود به سرور باید از دستور زیر استفاده کنید:
ssh username@your_server_ip -p 2222
نکته مهم: پیش از تغییر پورت SSH، بهتر است از پشتیبانگیری از سرور خود اطمینان حاصل کنید تا در صورت بروز مشکل بتوانید به راحتی به تنظیمات قبلی بازگردید.
خلاصه
تغییر پورت SSH بسیار آسان است و میتوانید از طریق ویرایش فایل پیکرهبندی SSH این کار را انجام دهید. با توجه به اینکه پورت SSH به عنوان رابط کاربری اصلی برای دسترسی به سرور مجازی استفاده میشود، اهمیت آن در امنیت سرور بسیار مهم است. در نتیجه، پیشنهاد میشود پورت SSH را به پورت دیگری تغییر داده و از امکانات امنیتی دیگر نیز برای حفاظت از سرور مجازی خود استفاده کنید. میتوانید از ابزار هایی مانند nmap (Network Mapper) برای بررسی پورتهای باز در سرور استفاده کنید تا اطمینان حاصل کنید که پورت SSH جدید به درستی پیکرهبندی شده است.
اگرچه تغییر پورت SSH میتواند به افزایش امنیت سرور مجازی شما کمک کند، اما باید توجه داشت که این روش به تنهایی کافی نیست و باید اقدامات دیگری نیز برای افزایش امنیت سرور مجازی خود انجام دهید. به عنوان مثال، استفاده از فایروال برای محدود کردن دسترسی به پورت SSH، استفاده از کلیدهای عمومی و خصوصی برای ورود به سرور و تنظیمات پیشرفته دیگر در فایل پیکرهبندی SSH نیز از راههای افزایش امنیت سرور مجازی هستند.
سوالات متداول
چرا باید پورت SSH را تغییر دهیم؟
پورت SSH پیشفرض برای سرور مجازی لینوکس 22 است. به دلیل اینکه پورت SSH به عنوان رابط کاربری اصلی برای دسترسی به سرور مجازی استفاده میشود، اهمیت این موضوع برای امنیت سرور بسیار مهم است. با تغییر پورت SSH، میتوانید از حملات نفوذی که بر روی پورتهای پیشفرض انجام میشود، جلوگیری کنید.
چگونه میتوان پورت SSH را تغییر داد؟
برای تغییر پورت SSH در سرور مجازی، مراحل زیر را دنبال کنید:
- با استفاده از یک کاربر با دسترسی root به سرور مجازی وارد شوید.
- فایل پیکرهبندی SSH را با استفاده از ویرایشگر متنی باز کنید.
- پورت SSH را از پورت پیشفرض 22 به پورت دلخواه خود تغییر دهید.
- فایل را ذخیره کنید و سرویس SSH را مجدداً راهاندازی کنید.
آیا تغییر پورت SSH میتواند باعث مشکل در دسترسی به سرور شود؟
بله، اگر پورت SSH را به صورت نادرست تغییر دهید، ممکن است باعث مشکل در دسترسی به سرور شود. به عنوان مثال، اگر پورت SSH را به پورتی تغییر دهید که توسط فایروال سرور مسدود شده است، دسترسی به سرور شما از طریق SSH مسدود میشود. بنابراین، در تغییر پورت SSH، باید به دقت عمل کرده و از پورتی استفاده کنید که قابل دسترسی و امن باشد.
منابع:
https://www.ibm.com/topics/virtual-machines
https://docs.digitalocean.com/support/how-do-i-change-my-droplets-ssh-port/
https://www.hostinger.com/tutorials/how-to-change-ssh-port-vps