قاعدة المعرفة

كيفية تغيير منفذ SSH في السيرفر لزيادة الأمان

طباعة
SSH
0

تغيير المنفذ الافتراضي لاتصال SSH من 22 إلى منفذ آخر يُعد خطوة أساسية لتعزيز أمان السيرفر. يساعد هذا الإجراء في تقليل محاولات الدخول التلقائية (Brute Force) التي تستهدف المنفذ المعروف 22. نفّذ الخطوات بعناية مع إبقاء جلسة الاتصال الحالية مفتوحة حتى تتأكد أن الاتصال عبر المنفذ الجديد يعمل بشكل صحيح.

ملاحظة مهمة: في هذا الدليل سنستخدم 2222 كمثال فقط. اختر منفذك الخاص (مثل 22022 أو 2020)، وعند تنفيذ الأوامر استبدل 2222 بالمنفذ الذي اخترته.

المتطلبات قبل البدء

  • صلاحيات root أو sudo على السيرفر.
  • معرفة رقم المنفذ الجديد الذي ستستخدمه.
  • وجود جدار ناري فعّال (UFW أو firewalld أو CSF).
  • إبقاء جلسة الاتصال القديمة مفتوحة حتى التأكد من نجاح التغيير.

الخطوة 1: إنشاء نسخة احتياطية من إعداد SSH

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

الخطوة 2: تعديل المنفذ في ملف الإعداد

sudo nano /etc/ssh/sshd_config

ابحث عن السطر:

#Port 22

أزل علامة التعليق (#) وغيّر الرقم إلى المنفذ الجديد الذي اخترته (مثال):

Port 2222

الخطوة 3: فتح المنفذ الجديد في الجدار الناري

من الضروري السماح بالمنفذ الجديد قبل إعادة تحميل خدمة SSH حتى لا تفقد الاتصال. تذكّر استبدال “2222” بمنفذك الخاص في الأوامر التالية.

على Ubuntu / Debian (UFW):
sudo ufw allow 2222/tcp
على AlmaLinux / Rocky / RHEL (firewalld):
sudo firewall-cmd --permanent --add-port=2222/tcp
sudo firewall-cmd --reload
إذا كان لديك جدار الحماية CSF (على cPanel أو DirectAdmin أو غيرهما):

يمكنك فتح المنفذ الجديد بإحدى الطريقتين:

  1. من واجهة CSF داخل لوحة التحكم: أضف المنفذ إلى TCP_IN ثم احفظ التغييرات وأعد تشغيل الجدار الناري.
  2. من سطر الأوامر:
nano /etc/csf/csf.conf

ابحث عن السطر:

TCP_IN = "20,21,22,80,443"

أضف المنفذ الجديد (مثال):

TCP_IN = "20,21,22,80,443,2222"

ثم أعد تشغيل CSF:

csf -r

الخطوة 4: ضبط SELinux (إن كان مفعّلًا)

في أنظمة RHEL / AlmaLinux / Rocky قد تحتاج لتحديث سياسات SELinux للسماح بالمنفذ الجديد:

sudo dnf install -y policycoreutils-python-utils
sudo semanage port -a -t ssh_port_t -p tcp 2222

إذا ظهر أن المنفذ مُضاف مسبقًا:

sudo semanage port -m -t ssh_port_t -p tcp 2222

الخطوة 5: إعادة تحميل خدمة SSH

بعد حفظ التعديلات، أعد تحميل الخدمة لتطبيق الإعدادات:

sudo systemctl reload sshd

إذا لم يعمل reload في نظامك:

sudo systemctl restart sshd

الخطوة 6: اختبار الاتصال على المنفذ الجديد

من نافذة أو جهاز آخر، اختبر الاتصال عبر المنفذ الجديد:

ssh -p 2222 user@YOUR_SERVER_IP

بعد التأكد من نجاح الاتصال، يمكنك إزالة المنفذ 22 من الجدار الناري إذا رغبت.

UFW:
sudo ufw delete allow 22/tcp
firewalld:
sudo firewall-cmd --permanent --remove-port=22/tcp
sudo firewall-cmd --reload
CSF:
csf -r

أخطاء شائعة وحلولها

  • لا يمكن الاتصال عبر المنفذ الجديد: تحقق من الجدار الناري وSELinux، ولا تغلق الجلسة القديمة قبل التأكد.
  • أمر semanage غير موجود: ثبّت الحزمة policycoreutils-python-utils.
  • خطأ في إعداد Port: تأكد من وجود سطر واحد فقط لـ Port وعدم وجود فراغات غير ضرورية.
  • المنفذ مستخدم مسبقًا: اختر رقمًا آخر غير مستخدم على النظام.

خلاصة

تغيير منفذ SSH خطوة أساسية لرفع مستوى الأمان في السيرفرات، لكنها لا تكفي وحدها. احرص أيضًا على استخدام مفاتيح SSH، وتعطيل الدخول المباشر لـ root، وتفعيل أدوات الحماية مثل Fail2Ban وCSF لضمان أقصى حماية ممكنة.

هل كانت هذه الإجابة مفيدة؟