پارس دیتا
کد: KB-WP-C2-FA-180
زمان انتشار: شنبه 21 تیر 1399

تغییر پورت ssh در centos7 و 8

جهت افزایش امنیت سرور لینوکسی می توان نسبت به تغییر پورت SSH از پیش فرض به یک پورت آزاد دیگر اقدام نمود.

  • ابتدا از طریق نرم افزار Putty به سرور ssh زده و سپس فایل "sshd_config" فایلی که تنظیمات ssh در آن ذخیره می گردد را به جهت ویرایش با کمک دستور ذیل باز نمایید، پس از باز شدن خطی که "# Port 22" نوشته شده است را پیدا نمائید.

    nano /etc/ssh/sshd_config
    لازم به ذکر است جهت اینکه این فایل را ویرایش نمائید، از هر کدام یک از ویرایشگر های متنی می توان استفاده نمود.
  • ابتدا این خط را از حالت توضیح با حذف نشانه "#" خارج نموده و شماره پورت مد نظر را برای مثال 2050 را به جای 22 وارد نمایید. پس از تغییرات خط مربوطه به شکل ذیل خواهد بود :

    Port 2050
  • در سیستم عامل CentOS 7 minimal  به صورت پیش فرض semanage نصب نمی باشد که برای نصب آن می بایست از دستور ذیل استفاده نمود :

    yum install policycoreutils-python
  • پس از اتمام مراحل نصب دستور ذیل را وارد نمایید :

    semanage port -a -t ssh_port_t -p tcp 2050
  • ممکن است در مراحل قبل با خطای زیر روبرو شوید که جهت رفع آن می بایست وارد مسیر موجود در تصویر شوید.

    ValueError: SELinux policy is not managed or store cannot be accessed.
  • سپس بخش "SELINUX" را "Enable" نمایید و مجدد دستورات تغییرات پورت را اجرا نمائید.

  • سپس سرویس ssh را با دستور ذیل ری استارت نمایید :

    systemctl restart sshd.service
  • با کمک دستور ذیل می توان جهت اطمینان از اینکه ssh برروی کدام پورت listen دارد را تست نمود :

    semanage port -l | grep ssh
  • سپس سرویس فایروال سیستم عامل را با کمک دستور ذیل ری استارت نمایید :

    systemctl start firewalld
  • برای باز نمودن پورت جدید مورد نظر در فایروال به ترتیب دستورات ذیل را وارد نمایید :

    firewall-cmd --zone=public --add-port=2050/tcp --permanent
    firewall-cmd --reload
  • حال با کمک دستور ذیل می توان از اینکه پورت 2050 به چه سرویسی اختصاص داده شده است اطمینان حاصل نمود :

    netstat -tulpn | grep :2050
    پس از انجام موارد ذکر شده پورت ssh تغییر نموده است و کافیست یک Putty دیگر قبل از بستن کانکشن فعلی باز نموده و با پورت جدید به سرور متصل شوید، توجه داشته باشید که هم اکنون پورت 22 دیگر برای ssh استفاده نمی گردد و بهتر می باشد آن را جهت امنیت بیشتر با دستورات ذیل ببندید :
    firewall-cmd --zone=public --remove-port=22/tcp --permanent
    firewall-cmd --reload
آخرین بروزرسانی: یکشنبه 21 آذر 1400 11:24:28