سرور شما یک دروازه ورود دارد و یکی از اولین و سادهترین گامها برای برقراری امنیت در آن، تغییر قفل اصلی ورود به آن است. پروتکل SSH (Secure Shell) شاهکلیدی است که امکان مدیریت سرور را از راه دور فراهم میکند، اما نکته اینجا است که این کلید همیشه بهطور پیشفرض یک دروازه مشخص، یعنی پورت ۲۲ را باز میکند. سارقین هم این موضوع را خوب میدانند و همین الان هزاران ربات خودکار بهدنبال سرورهایی هستند که این پورت پیشفرض را باز گذاشتهاند؛ بنابراین سادهترین کار امنیتی این است که این پورت را تغییر دهیم.
این مقاله راهنمای جامع شما برای برداشتن این گام امنیتی حیاتی یعنی تغییر پورت ssh است. ما به شما توضیح خواهیم داد که چگونه فرایند تغییر پورت SSH در لینوکس (اوبونتو، CentOS) و تغییر پورت SSH در ویندوز را به شکلی امن و بدون ریسک از دست دادن دسترسی انجام دهید.
فهرست مطالب
چرا تغییر پورت اس اس اچ ضرورت دارد؟
اگر آدرس خانه شما برای سارقان شهر شناختهشده باشد، حتی با داشتن بهترین قفلها هم اولین جایی که برای سرقت امتحان خواهد شد خانه شما است. استفاده از پورت ۲۲ برای سرویس SSH دقیقاً همین حالت را دارد و مانند این است که روی سرور یک تابلوی نئونی غولپیکر نصب کنید و بنویسید: «سرور اینجاست، برای هک کردن از اینجا شروع کنید!»
تغییر پورت SSH یک استراتژی «امنیت از طریق گمنامی» (Security through obscurity) است. شاید این کار بهتنهایی جلوی یک هکر مصمم را نگیرد، اما سرور شما را از رادار هزاران ربات مخربی که بیوقفه درحال اسکن اینترنت برای یافتن پورتهای باز ۲۲ هستند پنهان میکند و یک اقدام پیشگیرانه ساده اما فوقالعاده مؤثر است.
پورت SSH چیست و چرا پورت ۲۲ یک هدف جذاب برای هکرها است؟
پورت در شبکههای کامپیوتری، یک نقطه پایانی ارتباطی مجازی است که به سیستمعامل اجازه میدهد ترافیک ورودی را به سرویس مربوطه هدایت کند. وقتی شما از طریق SSH به سرور متصل میشوید، در واقع درخواستی به آدرس IP سرور و پورت مشخصی (که بهصورت پیشفرض ۲۲ است) ارسال میکنید. ازآنجاییکه پورت ۲۲ طبق استاندارد IANA (مرجع تخصیص شمارههای اینترنتی) به SSH اختصاص یافته، هرکسی که با شبکه سروکار دارد آن را میشناسد. هکرها و رباتهای آنها برای پیدا کردن قربانی نیازی به جستجوی پیچیده ندارند؛ کافی است IPهای مختلف را روی پورت ۲۲ اسکن کنند تا سرورهای فعال را بیابند.
تعویض پورت ssh از ۲۲ و دفع حملات Brute Force
حمله Brute Force (حمله جستجوی فراگیر) یکی از رایجترین تهدیدها برای سرورها است. در این نوع حمله، مهاجم (که اغلب یک اسکریپت یا ربات خودکار است) تلاش میکند با آزمون و خطای هزاران یا میلیونها ترکیب نام کاربری و رمز عبور به سرور شما نفوذ کند.
وقتی شما از پورت پیشفرض ۲۲ استفاده میکنید، کار را برای این رباتها بسیار آسان کردهاید. آنها میدانند که درِ ورودی کجا است و تمام انرژی خود را صرف امتحان کردن کلیدهای مختلف (رمزهای عبور) میکنند. این حملات ریسک امنیتی بالایی دارند و با مصرف منابع پردازشی سرور، میتوانند عملکرد آن را نیز مختل کنند. این فرایند شباهتهایی به حملات لایه کاربرد در حملات DDoS دارد که در آن تلاش میشود منابع سرور به اتمام برسد.
با تغییر پورت سرور لینوکس یا ویندوز خود، شما عملاً درِ ورودی را از دید این ارتشهای رباتی پنهان میکنید. آنها هم به سراغ هدف بعدی که درِ خانهاش سرراستتر است میروند.
پیشنیازها و نکات کلیدی قبلاز تغییر پورت ssh
قبلاز اینکه دستبهکار شویم و تغییر پورت ssh را آغاز کنیم، چند نکته حیاتی وجود دارد که باید آنها را بدانید. این آمادگی اولیه تضمین میکند که فرایند تغییر پورت در لینوکس یا ویندوز بهنرمی و بدون هیچ مشکلی -بهخصوص قفل شدن دسترسیتان به سرور- انجام شود.
اطمینان از دسترسی ریشه (Root) یا Sudo
فایل پیکربندی SSH یک فایل سیستمی حساس است و برای ویرایش آن به بالاترین سطح دسترسی در سرور نیاز دارید؛ بنابراین مطمئن شوید که با کاربر root وارد شدهاید یا کاربر فعلی شما دسترسی sudo برای اجرای دستورات با سطح دسترسی مدیریتی را دارد.
انتخاب یک پورت جدید و مناسب (چگونه یک پورت امن انتخاب کنیم؟)
شما نمیتوانید برای تغییر پورت ssh، هر عددی را بهعنوان پورت جدید انتخاب کنید. پورتها به سه محدوده اصلی تقسیم میشوند:
- پورتهای شناختهشده (Well-Known Ports): از ۰ تا ۱۰۲۳. این پورتها برای سرویسهای استاندارد مانند HTTP (پورت ۸۰) و FTP (پورت ۲۱) رزرو شدهاند. هرگز از این محدوده استفاده نکنید.
- پورتهای ثبتشده (Registered Ports): از ۱۰۲۴ تا ۴۹۱۵۱. این پورتها توسط شرکتها و برنامههای مختلفی استفاده میشوند. اگرچه استفاده از آنها ممکن است، اما احتمال تداخل با سرویسهای دیگر وجود دارد.
- پورتهای پویا یا خصوصی (Dynamic/Private Ports): از ۴۹۱۵۲ تا ۶۵۵۳۵. این محدوده امنترین و بهترین انتخاب برای سرویسهای سفارشی مانند پورت جدید SSH شما است؛ زیرا احتمال تداخل آن با سایر سرویسها تقریباً صفر است.
توصیه ما: یک عدد در محدوده ۴۹۱۵۲ تا ۶۵۵۳۵ انتخاب کنید.
محدودههای استاندارد پورتهای شبکه برای تغییر پورت ssh
محدوده پورت | شمارهها | کاربرد | مناسب است؟ |
---|---|---|---|
شناختهشده (Well-Known) | ۰ – ۱۰۲۳ | سرویسهای حیاتی و استاندارد (HTTP, FTP, SMTP) | خیر (ممنوع) |
ثبتشده (Registered) | ۱۰۲۴ – ۴۹۱۵۱ | برنامههای کاربردی خاص (مانند MySQL: 3306) | با احتیاط |
پویا/خصوصی (Dynamic) | ۴۹۱۵۲ – ۶۵۵۳۵ | استفاده داخلی و اتصالات موقت | بله (بهترین انتخاب) |
اخطار: چگونه از قفل شدن دسترسی به سرور جلوگیری کنیم؟ (نگهداشتن جلسه فعلی)
این مهمترین نکته در کل آموزش تغییر پورت ssh است. یک اشتباه رایج این است که کاربر پورت را تغییر میدهد، سرویس SSH را ریستارت میکند و سپس اتصال خود را قطع میکند، غافل از اینکه فایروال را برای پورت جدید پیکربندی نکردهاست. نتیجه: دسترسی به سرور برای همیشه از دست میرود!
برای جلوگیری از این فاجعه، همیشه از تکنیک دو جلسهای استفاده کنید:
- جلسه اول: همین پنجره ترمینالی که در آن به سرور متصل هستید و دستورات را وارد میکنید را هرگز نبندید.
- جلسه دوم: پساز انجام تمام مراحل (تغییر پورت و تنظیم فایروال)، یک پنجره ترمینال جدید باز کنید و سعی کنید با پورت جدید به سرور متصل شوید.
- تأیید و خروج: تنها زمانی که از عملکرد صحیح اتصال در جلسه دوم مطمئن شدید، میتوانید جلسه اول را ببندید.
مراحل تغییر پورت SSH در اوبونتو، دبیان، CentOS (لینوکس)
فرایند تغییر پورت SSH در centos، دبیان و سایر سرورهای لینوکس در اکثر توزیعها تقریباً یکسان است و به ویرایش یک فایل پیکربندی اصلی خلاصه میشود. در ادامه مراحل را برای محبوبترین توزیعها مانند دبیان و CentOS و تغییر پورت ssh در ubuntu شرح میدهیم.
مرحله ۱ تغییر پورت ssh در لینوکس: باز کردن فایل پیکربندی SSH
ابتدا از طریق SSH با پورت فعلی (۲۲) به سرور خود متصل شوید. فایل اصلی تنظیمات سرویس SSH در مسیر /etc/ssh/sshd_config قرار دارد. برای ویرایش آن باید از یک ویرایشگر متن در محیط ترمینال مانند nano یا vim استفاده کنید.
دستورات رایج برای ویرایشگرهای متن (Nano, Vim)
ویرایشگر nano به دلیل سادگی برای کاربران مبتدی انتخاب بهتری است. برای باز کردن فایل با nano دستور زیر را وارد کنید:
sudo nano /etc/ssh/sshd_config
کاربران حرفهایتر که با ویرایشگر vim راحتتر هستند، میتوانند از دستور sudo vim /etc/ssh/sshd_config استفاده کنند.
مرحله ۲ تغییر پورت ssh در لینوکس: پیدا کردن و تغییر شماره پورت
پساز باز شدن فایل، با استفاده از کلیدهای جهتنما به پایین اسکرول کنید تا خط زیر را پیدا کنید:
Plaintext
#Port 22
این خط بهصورت پیشفرض با علامت # کامنت شدهاست، به این معنی که غیرفعال است و سرویس SSH از مقدار پیشفرض خود (یعنی ۲۲) استفاده میکند.
برای تعویض پورت ssh، دو کار انجام دهید:
- علامت # را از ابتدای خط حذف کنید تا خط فعال شود (Uncomment).
- عدد 22 را به شماره پورت جدیدی که قبلاً انتخاب کردهاید (مثلاً 1222) تغییر دهید.
خط نهایی باید چیزی شبیه به این باشد:
#port 22
#port 1222
مرحله ۳ تغییر پورت ssh در لینوکس: ذخیره تغییرات و راهاندازی مجدد سرویس SSH
تغییرات را در فایل ذخیره کنید.
- در nano: کلیدهای Ctrl + X را فشار دهید، سپس Y را برای تأیید ذخیره فشار داده و در نهایت Enter را بزنید.
حالا باید سرویس SSH را مجدداً راهاندازی کنید تا تنظیمات جدید اعمال شوند. این کار را با دستور زیر انجام دهید:
sudo systemctl restart ssh
مهم: هنوز اتصال خود را قطع نکنید! سرویس SSH شما اکنون روی پورت جدید در حال اجرا است، اما فایروال سرور هنوز از این تغییر خبر ندارد.
مرحله ۴ تغییر پورت ssh در لینوکس: پیکربندی فایروال برای مجوز به پورت جدید
این مرحله حیاتیترین بخش فرایند تغییر پورت سرور لینوکس است. اگر این مرحله را انجام ندهید، پساز قطع اتصال فعلی، دیگر نمیتوانید به سرور خود دسترسی پیدا کنید.
تنظیم فایروال UFW (برای Ubuntu/Debian)
در سیستمعاملهای مبتنی بر دبیان مانند اوبونتو، فایروال پیشفرض UFW است. برای مجوزدادن به پورت جدید (برای مثال 1222)، دستور زیر را اجرا کنید:
sudo ufw allow 1222/tcp
این دستور به فایروال میگوید که ترافیک ورودی TCP روی پورت 1222 را مجاز بداند.
تنظیم FirewallD (برای CentOS/RHEL)
در توزیعهایی مانند CentOS و RHEL، از FirewallD استفاده میشود. برای تغییر پورت ssh در centos، باید با دو دستور زیر پورت جدید را اضافه و فایروال را مجدداً بارگذاری کنید:
sudo firewall-cmd --permanent --add-port=1222/tcp
sudo firewall-cmd --reload
دستور اول قانون را بهصورت دائمی اضافه کرده و دستور دوم آن را فعال میکند.
(نکته پیشرفته) تنظیمات SELinux برای کاربران CentOS
کاربران CentOS و RHEL باید یک مرحله اضافی را برای هماهنگی با ماژول امنیتی SELinux انجام دهند. SELinux بهصورت پیشفرض فقط به پورت ۲۲ اجازه فعالیت برای SSH را میدهد. برای معرفی پورت جدید به SELinux، دستور زیر را اجرا کنید (ممکن است نیاز به نصب بسته policycoreutils-python-utils داشته باشید):
sudo semanage port -a -t ssh_port_t -p tcp 1222
این دستور به SELinux میگوید که پورت 1222 نیز برای سرویس SSH مجاز است.
مرحله ۵ تغییر پورت ssh در لینوکس: تست اتصال با پورت جدید
اکنون زمان تست فرارسیده است. پنجره ترمینال فعلی خود را باز نگه دارید و یک پنجره ترمینال جدید باز کنید. با استفاده از دستور زیر و با مشخص کردن پورت جدید با آپشن -p، برای اتصال تلاش کنید:
ssh username@your_server_ip -p 1222
فراموش نکنید که username، your_server_ip و 1222 را با اطلاعات واقعی سرور و پورت جدید خود جایگزین کنید.
اگر توانستید با موفقیت وارد سرور شوید، تبریک میگوییم! تغییر پورت SSH با موفقیت انجام شدهاست. اکنون میتوانید با خیال راحت هر دو پنجره ترمینال را ببندید.
مراحل تغییر پورت SSH در ویندوز سرور
با اینکه SSH ریشهای عمیق در دنیای لینوکس دارد، اما امروزه در اکوسیستم ویندوز نیز حضور دارد. مایکروسافت با ارائه OpenSSH Server، امکان مدیریت امن و از راه دور ویندوز سرور را درست مانند لینوکس فراهم کردهاست. فرایند تغییر پورت سرور ویندوز نیز از همان منطق سهمرحلهای لینوکس پیروی میکند: ویرایش فایل پیکربندی، راهاندازی مجدد سرویس و تنظیم فایروال.
مرحله ۱ تغییر پورت ssh در ویندوز: باز کردن فایل sshd_config
کلاینت و سرور OpenSSH در ویندوز نیز از یک فایل پیکربندی به نام sshd_config استفاده میکنند. این فایل در مسیر زیر قرار دارد:
C:\ProgramData\ssh\sshd_config
نکته مهم: پوشه ProgramData معمولاً یک پوشه مخفی (Hidden) است. برای ویرایش این فایل، باید ویرایشگر متن خود (مانند Notepad) را با دسترسی ادمین باز کنید.
- در منوی استارت، Notepad را جستجو کنید.
- روی آن با کلیکراست گزینه Run as administrator را انتخاب کنید.
- از داخل Notepad به منوی File > Open بروید و مسیر فایل sshd_config را برای باز کردن آن وارد کنید.
توجه: اگر فایل sshd_config در پوشه وجود نداشت باید به مسیر Settings → Apps → Optional Features بروید و درصورتی که OpenSSH Server در لیست نصبشدهها نیست، بر روی Add a feature کلیک کنید و آن را نصب کنید. برای فعالسازی هم ابتدا در powershell دستور زیر را اجرا کنید:
Get-Service sshd
Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'
سپس در پوشه ssh یک فایل متنی بسازید و محتویات زیر را در آن قرار دهید.
Port 22
Protocol 2
PermitRootLogin yes
PasswordAuthentication yes
حالا با دستور زیر سرویس را ریاستارت کنید:
Restart-Service sshd
مرحله ۲ تغییر پورت ssh در ویندوز: ویرایش شماره پورت و ذخیره فایل
درست مانند نسخه لینوکس، در این فایل به دنبال خط #Port 22 بگردید.
علامت # را از ابتدای آن حذف کنید و عدد 22 را به شماره پورت دلخواه خود (مثلاً 55221) تغییر دهید.
خط ویرایششده باید به این شکل باشد:
Port 55221
پساز انجام تغییرات، فایل را با فشردن کلیدهای Ctrl + S ذخیره کنید.
مرحله ۳ تغییر پورت ssh در ویندوز: راهاندازی مجدد OpenSSH Server
برای اعمال تغییرات، باید سرویس SSH را در ویندوز ریستارت کنید.
- کلیدهای Win + R را فشار دهید تا پنجره Run باز شود.
- عبارت services.msc را تایپ کنید و Enter را بزنید.
- در لیست سرویسها، بهدنبال OpenSSH SSH Server بگردید.
- روی آن با کلیکراست گزینه Restart را انتخاب کنید.
مرحله ۴ تغییر پورت ssh در ویندوز: ایجاد قانون جدید در فایروال
این مرحله نیز مانند تنظیم فایروال در لینوکس بسیار حیاتی است. اگر قانون جدید را در فایروال تعریف نکنید، ویندوز اجازه اتصال به پورت جدید را نخواهد داد.
آموزش ساخت Inbound Rule جدید برای پورت TCP سفارشی
شما باید یک قانون ورودی (Inbound Rule) جدید برای اجازه دادن به جریان ترافیک روی پورت جدید خود ایجاد کنید.
- Windows Defender Firewall with Advanced Security را باز کنید.
- از پنل سمت چپ، روی Inbound Rules کلیک کنید.
- از پنل سمت راست، روی New Rule… کلیک کنید.
- در پنجره باز شده، گزینه Port را انتخاب و روی Next کلیک کنید.
- گزینه TCP را انتخاب کنید و در بخش Specific local ports، شماره پورت جدید خود (مثلاً 55221) را وارد کنید.
- گزینه Allow the connection را انتخاب کنید.
- در مرحله بعد، پروفایلهای موردنظر (معمولاً هر سه گزینه Domain, Private, Public) را انتخاب کنید.
- در نهایت، یک نام برای این قانون انتخاب کنید (مثلاً Custom SSH Port) و روی Finish کلیک کنید.
مرحله ۵ تغییر پورت ssh در ویندوز: تست اتصال ازطریق کلاینت SSH
حالا که همهچیز برای تغییر پورت در ویندوز آماده است، اتصال به پورت جدید را امتحان کنید. فراموش نکنید که این کار را در یک پنجره جدید انجام دهید تا درصورت بروز مشکل، اتصال قبلی را از دست ندهید.
- با استفاده از PuTTY (اگر ندارید آن را نصب کنید): آدرس IP سرور را در فیلد Host Name و شماره پورت جدید را در فیلد Port وارد کرده و روی Open کلیک کنید.
- با استفاده از ترمینال ویندوز/PowerShell: دستور زیر را اجرا کنید:
ssh username@your_server_ip -p 55221
بهجای username@your_server_ip روزنیم و آیپی سرور خودتان را بنویسید. پساز مشاهده درخواست رمز عبور و ورود موفق، میتوانید با اطمینان اتصال قبلی را ببندید. فرایند تغییر پورت ssh در ویندوز با موفقیت به پایان رسید.
۳ اقدام تکمیلی امنیتی، برای پساز تغییر پورت ssh
تغییر پورت اس اس اچ یک سپر دفاعی عالی در برابر حملات خودکار و شناساییهای اولیه ایجاد میکند. اما امنیت واقعی یک فرایند لایهلایه است. برای ساختن یک سرور نفوذناپذیر، باید استراتژیهای دفاعی خود را عمیقتر کنید. در ادامه سه مورد از مهمترین اقدامات تکمیلی برای ایمنسازی SSH آورده شدهاست.
۱- استفاده از کلیدهای SSH بهجای رمز عبور
رمزهای عبور، هرچقدر هم که پیچیده باشند، همچنان در معرض حملات Brute Force یا مهندسی اجتماعی قرار دارند. آنها «چیزی هستند که شما میدانید» و میتوانند فاش شوند. در مقابل، کلیدهای SSH یک روش احراز هویت مبتنی بر رمزنگاری هستند که از یک جفت کلید عمومی و خصوصی استفاده میکنند.
این روش «چیزی است که شما دارید» (فایل کلید خصوصی) و امنیت آن هزاران برابر بیشتر از یک رمز عبور است. شکستن کلید SSH با ابزارهای امروزی تقریباً غیرممکن است. فعالسازی ورود با کلید و غیرفعال کردن ورود با رمز عبور، استاندارد طلایی در مدیریت سرورهای امن است.
۲- غیرفعال کردن لاگین کاربر Root
کاربر root در سیستمهای لینوکسی، قدرتمندترین کاربر با دسترسی مطلق به همهچیز است. نام این کاربر نیز همیشه ثابت و مشخص است: root. این یعنی هکرها نیمی از معمای ورود (نام کاربری) را از قبل حلشده دارند و فقط باید روی شکستن رمز عبور تمرکز کنند.
یک اصل امنیتی حیاتی، غیرفعال کردن ورود مستقیم با کاربر root ازطریق SSH است. بهترین رویکرد این است که همیشه با یک کاربر عادی وارد شوید و درصورتنیاز به دسترسیهای مدیریتی از دستور sudo استفاده کنید. این کار هم سطح حمله را کاهش میدهد و هم یک ردپای قابل حسابرسی از تمام دستورات مدیریتی ایجاد میکند.
۳- محدود کردن دسترسی کاربران خاص به SSH
آیا واقعاً تمام کاربرانی که روی سرور شما تعریف شدهاند به دسترسی از راه دور نیاز دارند؟ براساس «اصل حداقل دسترسی» (Principle of Least Privilege)، شما باید دسترسی SSH را فقط به کاربرانی محدود کنید که مطلقاً به آن نیاز دارند. شما میتوانید این کار را بهسادگی با افزودن دستور AllowUsers در فایل sshd_config انجام دهید و لیست کاربران مجاز را مشخص کنید.
AllowUsers user1 user2
این اقدام ساده تضمین میکند که حتی اگر حساب کاربری یک فرد غیرمرتبط بهخطر بیفتد، مهاجم نمیتواند از آن برای نفوذ به سرور از طریق SSH استفاده کند.
سرورهای ابری فردوسی: امنیت و مدیریت آسان در کنار هم
همانطور که دیدید، تغییر پورت ssh و ایمنسازی سرور، یک فرایند دقیق و چندوجهی است. تغییر پورت، تنظیم کلیدهای SSH، مدیریت کاربران و پیکربندی صحیح فایروال همگی اقداماتی ضروری هستند، اما انجام دستی آنها میتواند زمانبر و مستعد خطاهای انسانی باشد؛ خطاهایی که گاهی به قیمت از دست رفتن کامل دسترسی به سرور تمام میشود. اما پلتفرمهای مبتنی بر سرور ابری مانند ابر فردوسی، علاوهبر قدرت و انعطافپذیریای که دارند، ابزارهایی نیز برای پیادهسازی لایههای امنیتی به شکلی سادهتر و امنتر در اختیار شما قرار میدهند.
برای درک عمیقتر این مفهوم، در مقاله زیر میتوانید اطلاعات جامعی درباره مفهوم سرور ابری کسب کنید.
چرا مدیریت پورتها و فایروال در سرورهای ابری فردوسی سادهتر و امنتر است؟
بزرگترین ترس در هنگام تغییر پورت ssh یا تنظیم فایروال از طریق خط فرمان، قفلشدن دسترسی به سرور است. ابر فردوسی این ریسک را با ارائه یک فایروال ابری (Cloud Firewall) قدرتمند و در عین حال ساده از بین میبرد. این فایروال در سطح شبکه و خارج از سیستمعامل سرور شما عمل میکند. مزایای کلیدی آن عبارتاند از:
- مدیریت گرافیکی: بهجای ویرایش فایلهای متنی و وارد کردن دستورات پیچیده، شما میتوانید تمام پورتها را ازطریق یک پنل وب بصری و کاربرپسند باز یا بسته کنید.
- امنیت در برابر خطا: اگر به اشتباه فایروال داخلی سرور خود را بد تنظیم کنید و دسترسیتان قطع شود، فایروال ابری همچنان در دسترس است. شما میتوانید از طریق پنل ابر فردوسی قوانین را اصلاح و دسترسی خود را مجدداً برقرار کنید.
- سرعت و یکپارچگی: قوانین فایروال را برای چندین سرور بهصورت متمرکز و در چند ثانیه اعمال کنید، بدون آنکه نیاز به ورود جداگانه به هرکدام داشته باشید.
تغییر پورت ssh: سخن پایانی ابر فردوسی
در این مقاله فهمیدیم که تغییر پورت ssh یک اقدام ساده، اما با تأثیرگذاری بسیار بالا در استراتژی امنیتی هر سروری است. این کار شما را از رادار هزاران اسکنر خودکار که بیوقفه اینترنت را برای یافتن طعمههای آسان جستجو میکنند پنهان نگه میدارد. ما فرایند گامبهگام این کار را هم برای سرورهای لینوکس و هم برای ویندوز بررسی کردیم و دیدیم که منطق اصلی در هر دو پلتفرم یکسان است: ویرایش فایل پیکربندی، راهاندازی مجدد سرویس و بهروزرسانی قوانین فایروال.
به یاد داشته باشید که امنیت یک فرایند مستمر است. تغییر پورت مهم است، اما برای تبدیل شدن به یک دژ مستحکم دیجیتال، باید آن را با اقدامات دیگری مانند استفاده از کلیدهای SSH، غیرفعال کردن ورود کاربر root و محدودسازی دسترسیها ترکیب کنید. اکنون شما دانش لازم برای برداشتن یکی از اولین و مهمترین گامها در مسیر مدیریت یک سرور امن را در اختیار دارید.
سؤالات متداول درباره «تغییر پورت ssh»
چگونه پورت SSH را تغییر دهم؟
بهطور خلاصه، فرایند در سه مرحله انجام میشود:
ویرایش فایل: فایل sshd_config را در مسیر /etc/ssh/ (لینوکس) یا C:\ProgramData\ssh\ (ویندوز) باز کرده و خط Port 22 را به پورت جدید خود تغییر دهید.
راهاندازی مجدد سرویس: سرویس ssh یا sshd (در لینوکس) یا OpenSSH SSH Server (در ویندوز) را ریستارت کنید.
تنظیم فایروال: پورت جدید را در فایروال سرور خود (مانند UFW در اوبونتو یا Windows Defender Firewall) مجاز کنید.
اگر بعد از دسترسی به سرور تغییر پورت قطع شد چه کار کنم؟
این مشکل تقریباً همیشه به دلیل عدم تنظیم صحیح فایروال رخ میدهد. اگر از سرورهای سنتی استفاده میکنید، باید ازطریق کنسول فیزیکی یا پنل KVM به سرور دسترسی پیدا کرده و قوانین فایروال را اصلاح کنید. اما اگر از سرور ابری فردوسی استفاده میکنید، میتوانید بهسادگی از طریق پنل کاربری وارد بخش فایروال شوید و پورت جدید را با چند کلیک باز کنید تا دسترسی شما مجدداً برقرار شود.
بهترین محدوده برای انتخاب شماره پورت جدید چیست؟
امنترین و بهترین انتخاب، استفاده از پورتهای پویا/خصوصی است که در محدوده ۴۹۱۵۲ تا ۶۵۵۳۵ قرار دارند. این پورتها با سرویسهای استاندارد دیگر تداخلی ندارند و احتمال بروز مشکل را به صفر میرسانند.
آیا میتوانم از چند پورت بهصورت همزمان برای SSH استفاده کنم؟
بله. شما میتوانید در فایل sshd_config، چندین خط Port تعریف کنید. برای مثال، برای فعالسازی پورت ۲۲ و ۵۵۲۲۰ بهصورت همزمان، دو خط زیر را در فایل قرار دهید:
Port 22
Port 55220
این کار میتواند برای مهاجرت تدریجی یا داشتن یک پورت پشتیبان مفید باشد.
چگونه با استفاده از PuTTY به پورت جدید متصل شوم؟
بسیار ساده است. پس از اجرای PuTTY در صفحه اصلی:
آدرس IP یا نام دامنه سرور خود را در فیلد Host Name (or IP address) وارد کنید.
شماره پورت جدید خود را در فیلد Port وارد نمایید (مقدار پیشفرض ۲۲ است).
روی دکمه Open کلیک کنید.
آیا تغییر پورت ssh امنیت سرور را ۱۰۰% تضمین میکند؟
خیر. هیچ اقدام واحدی امنیت را بهصورت مطلق تضمین نمیکند. تغییر پورت یک اقدام پیشگیرانه عالی برای کاهش چشمگیر حملات خودکار و پنهان شدن از دید مهاجمان غیرحرفهای است. اما امنیت کامل نیازمند یک رویکرد چندلایه (Security in Depth) شامل استفاده از کلیدهای SSH، رمزهای عبور قوی، غیرفعال کردن لاگین root و بهروز نگه داشتن مداوم سیستمعامل است.