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

آیا تغییر پورت SSH واقعاً امنیت VPS را بیشتر می‌کند؟ بررسی کامل

بله، تغییر پورت پیش‌فرض SSH می‌تواند تا حدی امنیت VPS را افزایش دهد، اما به‌تنهایی یک روش امنیتی جدی محسوب نمی‌شود. مهم‌ترین مزیت آن کاهش تعداد اسکن‌ها و تلاش‌های خودکار برای ورود است؛ در…

✍ Amir Jabbari 📅 29 شهریور 1405 ⏱ 10 دقیقه مطالعه 👁 11 بازدید 💬 0 دیدگاه

بله، تغییر پورت پیش‌فرض SSH می‌تواند تا حدی امنیت VPS را افزایش دهد، اما به‌تنهایی یک روش امنیتی جدی محسوب نمی‌شود. مهم‌ترین مزیت آن کاهش تعداد اسکن‌ها و تلاش‌های خودکار برای ورود است؛ در مقابل، یک مهاجم می‌تواند با اسکن پورت‌ها، پورت جدید SSH را نیز پیدا کند. Ubuntu هم تغییر پورت را بیشتر به‌عنوان کاهش «نویز» اسکن‌های خودکار مطرح می‌کند، نه جایگزینی برای احراز هویت و محدودسازی دسترسی.

در ادامه بررسی می‌کنیم تغییر پورت دقیقاً چه کاری انجام می‌دهد، چه کاری انجام نمی‌دهد و برای امن‌سازی واقعی VPS چه تنظیماتی باید در کنار آن استفاده شود.

SSH چیست و چرا پورت 22 اهمیت دارد؟

SSH یا Secure Shell یکی از اصلی‌ترین روش‌های مدیریت VPSهای لینوکسی است. در حالت معمول، سرویس SSH روی پورت TCP 22 گوش می‌دهد.

برای مثال، اتصال معمولی:

ssh root@SERVER_IP

در این حالت کلاینت SSH به‌صورت پیش‌فرض پورت 22 را امتحان می‌کند. اگر پورت SSH را به 2222 تغییر دهید:

ssh -p 2222 root@SERVER_IP

بنابراین مهاجم دیگر نمی‌تواند صرفاً با بررسی پورت 22، سرویس SSH شما را پیدا کند.

تغییر پورت SSH چه تأثیری روی امنیت دارد؟

فرض کنید VPS شما دارای IP عمومی است و SSH روی پورت 22 فعال است. اسکریپت‌های خودکار اینترنتی معمولاً تعداد زیادی IP را بررسی می‌کنند و یکی از اولین پورت‌هایی که بررسی می‌شود، پورت 22 است.

در چنین شرایطی ممکن است لاگ‌هایی شبیه این مشاهده کنید:

Failed password for root from 185.x.x.x
Failed password for invalid user admin from 91.x.x.x
Failed password for root from 45.x.x.x

اگر SSH را مثلاً روی پورت 2222 قرار دهید:

Port 2222

بخشی از اسکنرهای ساده‌ای که فقط پورت 22 را بررسی می‌کنند دیگر سرویس SSH شما را پیدا نمی‌کنند. Ubuntu نیز صراحتاً اشاره می‌کند که استفاده از پورت غیرپیش‌فرض می‌تواند مقدار اسکن‌های خودکار و نویز مربوط به آن‌ها را کاهش دهد.

⚠️ اما یک نکته بسیار مهم وجود دارد: پورت جدید مخفی نیست.

مهاجم حرفه‌ای می‌تواند پورت‌های مختلف یک IP را اسکن کند و در صورت پیدا کردن سرویس SSH، متوجه شود که SSH مثلاً روی 2222 فعال است.

بنابراین تغییر پورت SSH بیشتر یک لایه کاهش‌دهنده حملات خودکار است، نه یک سیستم احراز هویت یا دفاع اصلی. Ubuntu نیز استفاده از پورت غیر استاندارد را نوعی Security by Obscurity توصیف می‌کند و هشدار می‌دهد که نباید به‌عنوان سیستم امنیتی اصلی روی آن حساب کرد.

آیا تغییر پورت SSH جلوی Brute Force را می‌گیرد؟

خیر. فرض کنید SSH را از 22 به 2222 تغییر داده‌اید. اگر مهاجم پورت 2222 را پیدا کند، همچنان می‌تواند تلاش کند username + password را امتحان کند.

بنابراین اگر SSH شما همچنان با رمز عبور ضعیف و حساب Root در دسترس باشد، تغییر پورت مشکل اصلی را حل نکرده است. برای همین، روش‌های مهم‌تر شامل استفاده از SSH Key، غیرفعال کردن ورود مستقیم Root و محدود کردن دسترسی شبکه هستند. Ubuntu نیز در راهنمای امنیت SSH همین رویکرد چندلایه را پیشنهاد می‌کند.

مقایسه پورت 22 و پورت غیر استاندارد

ویژگی پورت 22 پورت غیر استاندارد
راحتی اتصال بسیار بالا کمی کمتر
اسکن‌های ساده بیشتر معمولاً کمتر
حملات خودکار ساده بیشتر معمولاً کمتر
مقاومت در برابر اسکن کامل پورت‌ها ندارد ندارد
جایگزین SSH Key ❌ ❌
جایگزین Firewall ❌ ❌
جایگزین Fail2Ban ❌ ❌
کاهش نویز لاگ‌ها معمولاً کمتر معمولاً بیشتر

پس اگر سؤال این باشد که «آیا تغییر پورت SSH مفید است؟» پاسخ این است: بله، به‌عنوان یک لایه جانبی مفید است.

اما اگر سؤال این باشد که «آیا تغییر پورت به‌تنهایی VPS را امن می‌کند؟» پاسخ: خیر.

امنیت SSH تنها با تغییر پورت کامل نمی‌شود؛ به یک VPS مطمئن نیاز دارید!

ایرانیکاسرور با ارائه سرور مجازی ایران و VPS اختصاصی، منابع پایدار، دیسک NVMe، پهنای باند نامحدود، آپ‌تایم بالا و پشتیبانی ۲۴/۷، بستری امن و حرفه‌ای برای مدیریت سرور شما فراهم می‌کند. همین حالا پلن مناسب خود را انتخاب کنید.

تماس با پشتیبانی: 91302460–021 | ایرانیکاسرور

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

برای مثال می‌توانید از 2222 استفاده کنید. در فایل تنظیمات SSH:

sudo nano /etc/ssh/sshd_config

خط زیر را پیدا کنید:

#Port 22

و آن را به:

Port 2222

تغییر دهید. البته قبل از اعمال تغییرات باید مطمئن شوید پورت انتخاب‌شده توسط سرویس دیگری استفاده نمی‌شود و Firewall نیز اجازه دسترسی به آن را می‌دهد.

مهم‌ترین نکته: قبل از Restart کردن SSH

⚠️ یکی از خطرناک‌ترین اشتباهات هنگام تغییر پورت SSH این است که کاربر مستقیماً سرویس SSH را Restart کند و بعد متوجه شود تنظیمات اشتباه بوده است.

قبل از اعمال تغییرات، تنظیمات SSH را بررسی کنید:

sudo sshd -t

اگر هیچ خروجی‌ای دریافت نکردید، معمولاً یعنی فایل تنظیمات از نظر syntax مشکلی ندارد. Ubuntu نیز توصیه می‌کند قبل از Restart کردن SSH، تنظیمات با sshd -t بررسی شود؛ چون اشتباه در تنظیمات می‌تواند باعث از دست رفتن دسترسی SSH به سرور شود.

Firewall را فراموش نکنید

فرض کنیم SSH را از 22 به 2222 تغییر داده‌اید. اگر Firewall فقط پورت 22 را باز گذاشته باشد، بعد از تغییر پورت ممکن است دیگر نتوانید به VPS متصل شوید.

برای UFW مثلاً:

sudo ufw allow 2222/tcp

سپس وضعیت Firewall:

sudo ufw status

⚠️ قبل از بستن پورت 22، حتماً اتصال به پورت جدید را از یک ترمینال یا سیستم دیگر آزمایش کنید.

بعد از تغییر پورت چگونه متصل شویم؟

بعد از تغییر SSH به 2222:

ssh -p 2222 username@SERVER_IP

مثلاً:

ssh -p 2222 root@192.168.1.100

در PuTTY نیز باید پورت را از 22 به 2222 تغییر دهید.

آیا باید پورت 22 را کاملاً ببندیم؟

اگر SSH فقط روی پورت جدید فعال است، بهتر است پورت 22 بدون استفاده باقی نماند. برای مثال Port 2222 و خط قبلی #Port 22 باید غیرفعال باشد.

Ubuntu نیز هنگام انتقال SSH به پورت جدید توصیه می‌کند پورت قدیمی را غیرفعال کنید، در صورتی که دیگر نیازی به آن ندارید.

مهم‌تر از تغییر پورت: SSH Key

اگر بخواهیم امنیت VPS را جدی‌تر کنیم، SSH Key اهمیت بسیار بیشتری از تغییر شماره پورت دارد. به‌جای تکیه بر رمز عبور، می‌توانید از کلید عمومی و خصوصی استفاده کنید. ساختار کلی:

Your Computer
     │
     │ Private Key
     ▼
   SSH
     │
     ▼
    VPS
     │
     └── Authorized Public Key

در این حالت مهاجم برای ورود صرفاً نمی‌تواند با امتحان کردن تعداد زیادی Password وارد حساب شود. Ubuntu نیز استفاده از احراز هویت مبتنی بر کلید عمومی را در چارچوب امن‌سازی SSH توصیه می‌کند.

غیرفعال کردن Root Login

یکی دیگر از اقدامات مهم، جلوگیری از ورود مستقیم Root است. در تنظیمات SSH:

PermitRootLogin no

با این کار کاربر ابتدا با یک حساب معمولی وارد می‌شود و در صورت نیاز از sudo استفاده می‌کند. این روش علاوه بر امنیت، قابلیت ردیابی بهتری برای فعالیت کاربران فراهم می‌کند. Ubuntu نیز غیرفعال کردن ورود مستقیم Root را به‌عنوان یکی از اقدامات اصلی Hardening معرفی کرده است.

غیرفعال کردن Password Authentication

اگر SSH Key را به‌درستی راه‌اندازی کرده‌اید، می‌توانید احراز هویت با رمز عبور را نیز غیرفعال کنید:

PasswordAuthentication no

⚠️ این تنظیم را فقط بعد از اطمینان از کارکرد SSH Key انجام دهید. در غیر این صورت ممکن است خودتان نیز از سرور خارج شوید و نتوانید دوباره وارد شوید.

Fail2Ban چه نقشی دارد؟

Fail2Ban برای مقابله با تلاش‌های مکرر ناموفق برای ورود طراحی شده است. این سرویس لاگ‌ها را بررسی می‌کند و در صورت مشاهده الگوی مشخصی از تلاش‌های ناموفق، می‌تواند IP مهاجم را برای مدتی مسدود کند. به‌عنوان مثال:

5 failed login attempts
        ↓
Fail2Ban detects pattern
        ↓
IP gets banned

اما Fail2Ban هم جایگزین احراز هویت قوی نیست؛ مستندات آن نیز تأکید می‌کنند که این ابزار نرخ تلاش‌های ناموفق را کاهش می‌دهد، اما ضعف احراز هویت را به‌طور کامل از بین نمی‌برد.

Firewall؛ یک لایه مهم‌تر

یکی از اصول مهم امنیت سرور این است که فقط پورت‌هایی که واقعاً نیاز دارید در معرض اینترنت باشند. برای مثال یک VPS وب‌سرور ممکن است به این پورت‌ها نیاز داشته باشد:

🔹 22 یا پورت SSH جدید

🔹 80 HTTP

🔹 443 HTTPS

اما اگر سرویس دیگری نیازی به دسترسی عمومی ندارد، بهتر است پورت آن در اینترنت باز نباشد. Ubuntu نیز تأکید می‌کند که سرویس‌ها و پورت‌های غیرضروری سطح حمله سیستم را افزایش می‌دهند و باید دسترسی شبکه تا حد امکان محدود شود.

ترکیب پیشنهادی برای امن‌سازی SSH

اگر VPS شما برای استفاده شخصی، سایت یا سرویس‌های آنلاین است، می‌توانید این ساختار را در نظر بگیرید:

                    اینترنت
                       │
                       ▼
                 ┌───────────┐
                 │ Firewall  │
                 └─────┬─────┘
                       │
                 SSH Port 2222
                       │
                       ▼
                 ┌───────────┐
                 │   SSH     │
                 └─────┬─────┘
                       │
                 SSH Key Auth
                       │
                       ▼
                 User + sudo

و در کنار آن:

✅ پورت غیرپیش‌فرض

✅ SSH Key

✅ غیرفعال کردن Root Login

✅ غیرفعال کردن Password Login

✅ Firewall

✅ Fail2Ban

✅ به‌روزرسانی منظم سیستم

✅ محدود کردن IPهای مجاز در صورت امکان

Ubuntu در راهنمای Hardening سال 2026 نیز همین رویکرد چندلایه، شامل SSH Key، غیرفعال کردن Root و Password، Firewall و Fail2Ban را پیشنهاد می‌کند.

آیا تغییر پورت SSH ارزش انجام دادن دارد؟

برای اکثر VPSهایی که مستقیماً از اینترنت قابل دسترسی هستند، تغییر پورت می‌تواند یک اقدام تکمیلی منطقی باشد، مخصوصاً اگر هدف کاهش اسکن‌های خودکار و تعداد تلاش‌های بی‌مورد در لاگ‌ها باشد. اما ترتیب اهمیت را نباید اشتباه گرفت:

🔹 SSH Key / احراز هویت قوی

🔹 Firewall و محدودسازی دسترسی

🔹 غیرفعال کردن Root Login

🔹 غیرفعال کردن Password Login

🔹 Fail2Ban / محدودسازی تلاش‌ها

🔹 تغییر پورت SSH

تغییر پورت در اینجا یک لایه اضافه است، نه ستون اصلی امنیت.

اشتباهات رایج هنگام تغییر پورت SSH

۱. تغییر پورت بدون باز کردن Firewall — نتیجه: SSH روی 2222، Firewall → Block و دسترسی قطع می‌شود.

۲. Restart کردن SSH بدون بررسی Configuration — قبل از Restart دستور sudo sshd -t را اجرا کنید.

۳. بستن پورت 22 قبل از آزمایش پورت جدید — اول در یک اتصال جداگانه تست کنید: ssh -p 2222 user@SERVER_IP و بعد سراغ بستن پورت قبلی بروید.

۴. تصور اینکه پورت جدید «مخفی» است — پورت 2222 نیز قابل اسکن است.

۵. استفاده از Password ضعیف — تغییر پورت نمی‌تواند Password ضعیف را به Password امن تبدیل کند.

۶. غیرفعال کردن Password قبل از تست SSH Key — این کار می‌تواند باعث Lockout شدن خودتان شود.

نتیجه نهایی

تغییر پورت SSH واقعاً می‌تواند امنیت VPS را کمی افزایش دهد، اما نه به این دلیل که SSH را از دید مهاجم پنهان می‌کند.

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

بنابراین بهترین نگاه این است: تغییر پورت SSH = کاهش نویز و یک لایه دفاعی کوچک و SSH Key + Firewall + محدودسازی دسترسی + عدم ورود Root + Fail2Ban = امنیت واقعی‌تر و چندلایه.

مشکل SSH دارید یا نیاز به کانفیگ اختصاصی دارید؟

تیم فنی ایرانیکاسرور آماده است تا درخواست شما را بررسی کند و بهترین راه‌حل را برای امن‌سازی و پیکربندی SSH ارائه دهد. همین حالا مشکل خود را ارسال کنید.

تماس با پشتیبانی: 91302460–021| ایرانیکاسرور

 

این آموزش برایت مفید بود؟ می‌توانی لینک آن را ذخیره یا برای دیگران ارسال کنی.

Amir Jabbari

نویسنده مجله ایرانیکاسرور؛ منتشرکننده آموزش‌ها و راهنماهای کاربردی در حوزه هاست، سرور، وردپرس و شبکه.

برای اجرای آموزش به زیرساخت نیاز داری؟

سرویس مرتبط را ببین؛ معرفی خدمات در این بخش کوتاه نگه داشته شده تا تمرکز اصلی صفحه روی آموزش باقی بماند.

ایرانیکاسرور
گفت‌وگو درباره آموزش

دیدگاه‌ها

0 دیدگاه برای این مطلب ثبت شده است.

هنوز دیدگاهی ثبت نشده است؛ اگر سؤال یا تجربه‌ای درباره این آموزش داری، همین‌جا بنویس. پاسخ‌های مدیریت و کاربران به‌صورت مشخص از هم تفکیک می‌شوند.

دیدگاه یا سؤال خود را بنویسید

ایمیل شما منتشر نمی‌شود. فیلدهای ضروری مشخص شده‌اند.