استفاده از SSH یکی از متداولترین روشها برای مدیریت سرورهای لینوکس است. با این حال، باقی گذاشتن پورت SSH روی مقدار پیشفرض (۲۲) میتواند سرور را در معرض حملات brute force و اسکنهای خودکار قرار دهد. تغییر پورت SSH یکی از سادهترین و موثرترین اقداماتی است که برای افزایش امنیت سرور مجازی میتوان انجام داد.
در این مقاله، ابتدا بررسی میکنیم که آیا تعویض پورت SSH واقعا ضروری است یا نه، سپس بهترین سپس بهترین پورت برای SSH در هر توزیع را معرفی میکنیم و در ادامه نحوه تغییر پورت SSH در دو توزیع محبوب لینوکس یعنی Ubuntu و CentOS را مرحله به مرحله آموزش میدهیم. این راهنما با هدف ارتقای امنیت و بهبود مدیریت دسترسی به سرور، برای توسعهدهندگان و کسبوکارهای کوچک و متوسط آماده شده است.
آیا تغییر پورت SSH نیاز است؟
تغییر پورت پیشفرض SSH یکی از اولین پیشنهادها برای بالا بردن امنیت سرورهای لینوکسی است. اما این سوال مطرح میشود که آیا واقعا نیاز به این کار وجود دارد؟ پاسخ به این سوال به سطح ریسکپذیری، نوع استفاده از سرور و میزان دسترسیهای خارجی بستگی دارد. با این حال، در بسیاری از موارد، تعویض پورت SSH میتواند گام مهمی در جلوگیری از نفوذهای احتمالی باشد. در ادامه دلایل اصلی این اقدام را بررسی میکنیم:
جلوگیری از حملات Brute Force
یکی از رایجترین روشهای حمله به سرورها، حملات brute force است. در این نوع حملات، مهاجم با استفاده از اسکریپتهای خودکار، هزاران نام کاربری و رمز عبور را روی پورت ۲۲ امتحان میکند تا در نهایت به سرور دسترسی پیدا کند. اگر پورت SSH را به عددی غیرمعمول تغییر دهید، بسیاری از این حملات به سادگی خنثی میشوند، چون ابزارهای خودکار معمولا فقط پورت پیشفرض را هدف قرار میدهند.
افزایش امنیت
فایروالها بسته به محل استفاده، ساختار و سطح پیچیدگیشان به انواع مختلفی تقسیم میشوند. در ادامه با رایجترین انواع فایروال که در سطوح مختلف امنیتی استفاده میشوند آشنا میشویم.
کاهش لاگهای غیرضروری
وقتی پورت SSH روی مقدار پیشفرض باشد، لاگ سیستم پر از تلاشهای ناموفق ورود خواهد بود. تعویض پورت SSH باعث میشود این لاگها کاهش پیدا کنند و نظارت و بررسی امنیتی برای مدیر سرور سادهتر شود.
انطباق با سیاستهای امنیتی اختصاصی
در برخی از شرکتها یا پروژهها، سیاستهای امنیتی خاصی تعریف شده که شامل الزام به تغییر پورتهای پیشفرض میشود. در چنین مواردی، تعویض پورت SSH نهتنها پیشنهاد امنیتی، بلکه یک الزام عملیاتی است.
بهترین پورت SSH برای اوبونتو و CentOS کدام است؟
برای SSH، پورت مشخصی به عنوان «بهترین» وجود ندارد، اما انتخاب یک پورت مناسب میتواند تأثیر زیادی در کاهش حملات و افزایش امنیت سرور داشته باشد. توصیه میشود از پورتهایی خارج از بازههای شناختهشده و رایج استفاده شود، بهویژه پورتهایی بالاتر از 1024 که با سرویسهای سیستم تداخلی نداشته باشند.
برخی پورتهای پیشنهادی عبارتاند از: 2222، 2200، 2022، 8022 یا حتی یک عدد تصادفی مانند 34567. پورت انتخابی باید حتما در فایروال سرور مجاز شود و در سمت کلاینت نیز بهدرستی پیکربندی گردد. اگر در حال حاضر از سرویس میزبانی محدودی استفاده میکنید، پیشنهاد میشود برای مدیریت بهتر تنظیمات امنیتی مانند انتخاب بهترین پورت برای SSH، به سراغ خرید سرور مجازی لینوکس بروید.
نکات مهم قبل از تعویض پورت SSH
پیش از اقدام به تغییر پورت SSH، باید چند نکته کلیدی را در نظر بگیرید تا از قطع ارتباط ناخواسته با سرور یا ایجاد مشکلات امنیتی جلوگیری شود:
۱. دسترسی ریشه (Root) یا کاربر دارای دسترسی sudo:
اطمینان حاصل کنید که با کاربری وارد شدهاید که امکان ویرایش فایلهای سیستمی و راهاندازی مجدد سرویسها را دارد.
۲. تنظیم پورت جدید در فایروال:
قبل از ذخیره تغییرات در فایل پیکربندی SSH، ابتدا باید پورت جدید را در فایروال باز کنید. در غیر این صورت، پس از راهاندازی مجدد سرویس، دسترسی به SSH ممکن است قطع شود.
۳. فعال بودن اتصال دوم برای تست:
توصیه میشود در حین انجام تغییرات، یک اتصال SSH دوم باز نگه دارید. در صورتی که پیکربندی اشتباه باشد، میتوانید از اتصال اولیه برای بازگشت به تنظیمات قبلی استفاده کنید.
۴. اطمینان از عدم استفاده پورت جدید توسط سرویس دیگر:
پیش از انتخاب پورت، بررسی کنید که آن پورت قبلاً توسط سرویس دیگری در سیستم اشغال نشده باشد. دستور ss -tuln یا netstat -tuln برای بررسی این موضوع مفید است.
۵. ثبت پورت جدید برای اتصالهای آینده:
در فایلهای مدیریت اتصال مانند ~/.ssh/config یا ابزارهای واسط (مانند PuTTY یا MobaXterm)، پورت جدید را بهدرستی ثبت و ذخیره کنید تا در دفعات بعدی اتصال مشکلی وجود نداشته باشد.
مراحل تغییر پورت SSH در لینوکس اوبونتو
به منظور تغییر پورت ssh در ubuntu لازم است مراحل زیر انجام شود:
ویرایش فایل پیکربندی
ابتدا فایل پیکربندی SSH را با یک ویرایشگر متنی مانند nano باز کنید:
sudo nano /etc/ssh/sshd_config
سپس، مقدار پیشفرض Port 22 را پیدا کرده و آن را به پورت جدید موردنظر تغییر دهید. اگر خط مربوط به پورت کامنت شده بود (با # شروع شده بود)، علامت # را حذف کنید.
انتخاب بهترین پورت برای SSH
در این مرحله، بهترین پورت برای SSH که کمتر شناختهشده را انتخاب کنید (مانند 2222 یا 34567) و آن را در خط Port جایگزین کنید. فقط دقت داشته باشید که این پورت با هیچ سرویس دیگری در سیستم تداخل نداشته باشد.
راهاندازی مجدد سرویس و تنظیمات فایروال
پیش از ریاستارت سرویس SSH، پورت جدید را در فایروال UFW باز کنید:
sudo ufw allow 2222/tcp
سپس سرویس SSH را با دستور زیر راهاندازی مجدد کنید:
sudo systemctl restart ssh
مراحل تغییر پورت SSH در CentOS
به منظور تغییر پورت ssh در CentOS لازم است مراحل زیر انجام شود:
ویرایش فایل پیکربندی
در CentOS نیز فایل پیکربندی مشابه است. ابتدا آن را باز کنید:
sudo nano /etc/ssh/sshd_config
خط Port 22 را پیدا کرده و به پورت دلخواه (مثلا 2200) تغییر دهید.
انتخاب بهترین پورت برای SSH
در انتخاب پورت، معیار همانند اوبونتو است: عددی بالاتر از 1024 و غیرمتداول. بهعنوان مثال:
Port 2200
راهاندازی مجدد سرویس و تنظیمات فایروال
در CentOS، ابتدا باید پورت جدید را در فایروال باز کنید. اگر از firewall استفاده میکنید، دستور زیر را اجرا نمایید:
sudo firewall-cmd –permanent –add-port=2200/tcp
sudo firewall-cmd –reload
سپس سرویس SSH را راهاندازی مجدد کنید:
sudo systemctl restart sshd
پس از اتمام مراحل، توصیه میشود ابتدا با یک ترمینال دوم به پورت جدید متصل شوید تا در صورت بروز خطا امکان بازگشت وجود داشته باشد.
جمعبندی
تغییر پورت SSH یکی از راهکارهای ساده اما تاثیرگذار برای افزایش امنیت سرور مجازی لینوکس است. با انتخاب یک پورت مناسب، پیکربندی صحیح و باز کردن دسترسی در فایروال، میتوان حملات رایج را به حداقل رساند. این اقدام بهویژه در کنار اقدامات امنیتی دیگر مانند احراز هویت با کلید SSH، محدودیت IP و تنظیمات فایروال، نقش مهمی در ایمنسازی سرور دارد. پیشنهاد میشود پیش از هرگونه تغییر، با انواع لینوکس و دستورات لینوکس آشنا شوید و در صورت نیاز، تغییر پسورد سرور مجازی لینوکس را نیز بررسی کنید تا به مدیریت کاملتری از سرور دست یابید.



