Secure Shell (SSH) یک پروتکل شبکه است که به کاربران امکان دسترسی از راه دور به سرور را می دهد. همچنین ارتباط بین مشتری و سرور خصوصی را رمزگذاری می کند و امنیت آن را بیشتر می کند.
با این حال، استفاده از پورت استاندارد 22 پروتکل کنترل انتقال (TCP) برای SSH ممکن است خطرناک باشد زیرا در برابر بسیاری از تهدیدات سایبری، به ویژه حملات brute-force آسیب پذیر است ( روشی هک که برای دسترسی به داده های حساس رمزگذاری شده استفاده می شود ) و یا گاها پورت SSH از سمت سرویس دهنده های اینترنت مسدود و محدود میشوند که نیاز به تغییر پورت SSH برای اتصال داریم.
بنابراین، تغییر پورت پیش فرض SSH یکی از بهترین راه ها برای محافظت از سرور شما است. در این مقاله نحوه انتخاب پورت SSH جدید و تغییر آن در سرور اختصاصی یا سرور مجازی با سیستم عامل های برپایه لینوکس را توضیح خواهیم داد.
1- انتخاب پورت SSH: به دلیل استفاده سروریس ها از پورت های 1 تا 1023 ، توصیه می شود از بین پورت های 1024 تا 65365 یک پورت برای SSH انتخاب کنید.
2- به سرور از طریق SSH متصل شوید: برای اتصال از نرم افزار Putty میتوانید استفاده کنید.
3- برای تغییر پورت باید فایل زیر را ویرایش کنید و مقدار #port 22 را با عدد مورد نظر تعویض کنید: برای ویرایش فایل از دستور vi یا nano استفاده کنید.
nano /etc/ssh/sshd_config
4- اضافه کردن پورت جدید به فایروال: برای اینکه بتوانید بعد از تغییر پورت SSH با پورت جدید به سرور متصل شوید باید پورت جدید را به فایروال معرفی کنید تا دسترسی به SSH فراهم شود و با توجه به نوع فایروال دستورات هم متواوت خواهد بود.
برای فایروال iptables ( جای [NEW-PORT] عدد پورت مورد نظر خودتان را وارد کنید )
sudo iptables -A OUTPUT -p tcp --dport [NEW-PORT] -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
برای فایروال firewalld ( جای [NEW-PORT] عدد پورت مورد نظر خودتان را وارد کنید )
sudo firewall-cmd --add-port=[NEW-PORT]/tcp --permanent successsudo firewall-cmd --remove-service=ssh --permanent success
5- در آخر نیاز دارید تا سرویس SSH را reset کنید تا تغییرات اعمال شود.
دستور ریست سرویس SSH برای سیستم عامل های Ubuntu و Debian
service ssh restart
دستور ریست سرویس SSH برای سیستم عامل های Centos و Fedora و Almalinux ...
systemctl restart sshd.service