الأمان والمراقبة10 دقيقة قراءة

تصليب الخادم ‎Linux‎ الأولي

لا يكون الـ‎VPS‎ المُسلَّم حديثًا آمنًا أبدًا بشكل افتراضي: وصول ‎root‎ عبر ‎SSH‎ مفتوح، ولا يوجد جدار حماية لتصفية حركة البيانات الواردة، ولا يكتشف أي نظام محاولات الاختراق. في غضون دقائق، يمكنك تقليص سطح الهجوم بشكل كبير. يرشدك هذا الدليل خطوة بخطوة على ‎Ubuntu 22.04‎ و‎Debian 12‎، من إنشاء مستخدم ‎sudo‎ إلى تفعيل التحديثات الأمنية التلقائية.

لماذا يكون الـ‎VPS‎ عرضة للخطر منذ لحظة التسليم

بمجرد تخصيص عنوان ‎IP‎ لخادمك، تبدأ الروبوتات الآلية في فحصه. تُفهرس المنافذ المفتوحة باستمرار على الإنترنت. يكشف خادم ‎Linux‎ الجديد عن المنفذ ‎22‎ افتراضيًا، ويكون مستخدم ‎root‎ متاحًا من أي عنوان ‎IP‎ في العالم. إذا كانت كلمة مرور ‎root‎ ضعيفة أو معاد استخدامها من تسريب سابق، فقد يُخترق خادمك في غضون ساعات أو دقائق. بدون جدار حماية، كل منفذ تفتحه تطبيقاتك المستقبلية يكون متاحًا بلا قيود. بدون نظام كشف التسلل، لن تتلقى أي تنبيه أثناء هجوم القوة الغاشمة. يعالج هذا الدليل هذه المشاكل الثلاث الأساسية باستخدام أدوات موثوقة متاحة مباشرةً في مستودعات توزيعتك الرسمية.

ما الذي يُهيئه هذا الدليل

  • مستخدم غير جذر مع ‎sudo‎ — يُقلص سطح الهجوم بتعطيل تسجيلات الدخول المباشرة كـ‎root‎ على الخادم
  • مصادقة ‎SSH‎ بالمفتاح — تُلغي هجمات القوة الغاشمة على كلمات المرور، فقط مفتاحك الخاص يمنح الوصول
  • تعطيل وصول ‎root‎ عبر ‎SSH‎ — حتى لو اختُرقت كلمة مرور ‎root‎، يظل الدخول المباشر مستحيلًا
  • جدار حماية ‎UFW‎ — يحجب كل حركة البيانات الواردة افتراضيًا ويسمح فقط بالمنافذ المُصرَّح بها صراحةً
  • ‎fail2ban‎ — يحظر تلقائيًا عناوين ‎IP‎ التي تُكثر من محاولات الاتصال الفاشلة على الخادم
  • تحديثات أمنية تلقائية — تُطبَّق الرقع الحرجة دون تدخل يدوي يومي على خادمك
  • مزامنة ساعة النظام — تضمن سجلات متسقة وشهادات ‎TLS‎ صالحة عبر الخدمات

المتطلبات الأساسية قبل البدء

قبل اتباع هذا الدليل، تأكد من توفر كل ما تحتاجه. التحضير الجيد سيمنعك من الوقوع في موقف حرج في منتصف الطريق، خاصةً أثناء تكوين ‎SSH‎ حيث يمكن أن يحبسك خطأ واحد خارج الخادم تمامًا.

ما تحتاجه

  • وصول ‎SSH‎ بصلاحيات ‎root‎ يعمل — يجب أن تتمكن من الاتصال بـ‎ssh [email protected]‎ قبل البدء
  • ‎Ubuntu 22.04 LTS‎ أو ‎Debian 12‎ — تم اختبار هذا الدليل على كلتا التوزيعتين والأوامر متطابقة
  • زوج مفاتيح ‎SSH‎ مُنشأ محليًا — شغّل ‎ssh-keygen -t ed25519‎ على جهازك إذا لم يكن لديك واحد بعد
  • طرفية بتبويبين مفتوحين — احتفظ دائمًا بجلسة ‎root‎ نشطة أثناء تكوين ‎SSH‎ لتفادي الانقطاع

خطوات التصليب الـ7

01

تحديث النظام

ابدأ بمزامنة قائمة الحزم وتطبيق جميع الرقع المتاحة: ‎apt update && apt upgrade -y‎. أعد التشغيل إذا تم تثبيت نواة جديدة: ‎reboot‎. أعد الاتصال بصفتك ‎root‎ بعد إعادة التشغيل قبل الانتقال إلى الخطوة التالية.

02

إنشاء مستخدم غير جذر مع ‎sudo‎

أنشئ مستخدمًا جديدًا سيكون حسابك اليومي للعمل. استبدل ‎deploy‎ باسم من اختيارك: ‎adduser deploy‎. اتبع التعليمات لتعيين كلمة مرور قوية. ثم أضف هذا المستخدم إلى مجموعة ‎sudo‎: ‎usermod -aG sudo deploy‎. تحقق من نجاح الإضافة: يجب أن يعرض ‎groups deploy‎ النتيجة ‎deploy sudo‎.

03

نسخ مفتاح ‎SSH‎ إلى المستخدم الجديد

من جهازك المحلي، انسخ مفتاحك العام إلى حساب ‎deploy‎: ‎ssh-copy-id [email protected]‎. إذا كان ‎ssh-copy-id‎ غير متاح، انسخ يدويًا بالاتصال بصفتك ‎deploy‎، ثم شغّل: ‎mkdir -p ~/.ssh && chmod 700 ~/.ssh‎ والصق مفتاحك العام في ‎~/.ssh/authorized_keys‎ مع ‎chmod 600 ~/.ssh/authorized_keys‎. اختبر الاتصال فورًا في تبويب جديد: ‎ssh [email protected]‎ — لا تغلق جلسة ‎root‎ حتى يتأكد هذا الاتصال.

04

تصليب إعدادات ‎SSH‎

عدّل ملف تكوين الـ‎SSH daemon‎: ‎nano /etc/ssh/sshd_config‎. عدّل أو أضف هذه التوجيهات: ‎PermitRootLogin no‎ لمنع وصول ‎root‎ المباشر، ‎PasswordAuthentication no‎ لتعطيل المصادقة بكلمة المرور، واختياريًا ‎Port 2222‎ لتغيير منفذ الاستماع. أعد تحميل الإعداد: ‎systemctl reload sshd‎. اختبر فورًا الاتصال بالمستخدم الجديد من طرفية أخرى قبل إغلاق جلستك الحالية.

05

إعداد جدار الحماية ‎UFW‎

ثبّت ‎UFW‎ إذا لزم: ‎apt install ufw -y‎. عيّن السياسة الافتراضية: ‎ufw default deny incoming‎ و‎ufw default allow outgoing‎. اسمح بالمنافذ التي تحتاجها — إذا غيّرت منفذ ‎SSH‎: ‎ufw allow 2222/tcp‎، وإلا ‎ufw allow 22/tcp‎. أضف منافذ الويب: ‎ufw allow 80/tcp‎ و‎ufw allow 443/tcp‎. فعّل جدار الحماية: ‎ufw enable‎. أكّد بـ‎Y‎ عند الطلب. تحقق من الحالة: ‎ufw status verbose‎.

06

تثبيت وتكوين ‎fail2ban‎

ثبّت ‎fail2ban‎: ‎apt install fail2ban -y‎. أنشئ ملف إعداد محليًا لمنع الكتابة فوق إعداداتك عند التحديثات: ‎cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local‎. عدّل ‎jail.local‎ لتفعيل حماية ‎SSH‎: في قسم ‎[sshd]‎، تأكد من وجود ‎enabled = true‎ واضبط ‎bantime = 1h‎ و‎findtime = 10m‎ و‎maxretry = 5‎. أعد التشغيل وفعّل الخدمة: ‎systemctl enable --now fail2ban‎. تحقق من نشاط الـ‎jail‎ الخاص بـ‎SSH‎: ‎fail2ban-client status sshd‎.

07

تفعيل التحديثات الأمنية التلقائية

ثبّت حزمة ‎unattended-upgrades‎: ‎apt install unattended-upgrades -y‎. شغّل مساعد الإعداد: ‎dpkg-reconfigure -plow unattended-upgrades‎ وأجب بـ‎Yes‎. للتحقق، راجع ‎/etc/apt/apt.conf.d/20auto-upgrades‎: يجب أن يتضمن السطرين ‎APT::Periodic::Update-Package-Lists "1";‎ و‎APT::Periodic::Unattended-Upgrade "1";‎. تأكد أيضًا من نشاط ‎systemd-timesyncd‎ للحفاظ على دقة الساعة: ‎systemctl status systemd-timesyncd‎.

نصيحة حرجة: اختبر دائمًا اتصال ‎SSH‎ بمستخدمك الجديد في طرفية ثانية قبل إغلاق جلسة ‎root‎. إذا أغلقت جلسة ‎root‎ دون التحقق من نجاح المصادقة بالمفتاح لـ‎deploy‎، فقد تجد نفسك محجوبًا نهائيًا عن خادمك. في حالة الشك، استخدم وحدة تحكم ‎KVM/VNC‎ المتاحة في لوحة تحكم ‎ServOrbit‎.

المضي قُدُمًا بعد التصليب الأولي

بمجرد اكتمال الخطوات السبع، يكون خادمك أكثر أمانًا بكثير مما كان عليه لحظة التسليم. لكن الأمن عملية مستمرة لا حالة ثابتة. يمكن لأدوات تكميلية عدة تعزيز وضعك الأمني أكثر حسب السياق. للبيئات التي يجب أن تستوفي متطلبات الامتثال (‎GDPR‎، ‎PCI-DSS‎، ‎ISO 27001‎)، ثبّت ‎auditd‎: ‎apt install auditd -y‎ ثم ‎systemctl enable --now auditd‎. يسجّل هذا الديمون جميع نداءات النظام الحساسة — تنفيذ الأوامر والتعديلات على الملفات والاتصالات — ويُيسّر عمليات التدقيق التنظيمية. لحماية أكثر تقدمًا من شبكات الروبوت وعمليات الفحص المنسقة، يُعدّ ‎CrowdSec‎ بديلًا ممتازًا لـ‎fail2ban‎ بذكائه الجماعي ولوحات مراقبته الحديثة.

‎fail2ban‎ مقابل ‎CrowdSec‎: أيهما تختار؟

المعيار‎fail2ban‎‎CrowdSec‎
سهولة التثبيتبسيط جدًا (‎apt‎)بسيط (سكريبت رسمي)
الذكاء الجماعيلا (محلي فقط)نعم (قاعدة بيانات مشتركة)
واجهة المراقبة‎CLI‎ فقطلوحة ويب مدمجة
استهلاك المواردمنخفض جدًامنخفض إلى متوسط
الأنسب لـخوادم بسيطة ومبتدئينبنية تحتية متعددة الخوادم والامتثال

استكشاف الأخطاء: مشاكل شائعة بعد التصليب

حتى مع إجراء دقيق، قد تجد نفسك محجوبًا أو تواجه سلوكًا غير متوقع. إليك الحالات الثلاث الأكثر شيوعًا وكيفية حلها. الحالة الأولى: احتُجزت خارج ‎SSH‎. اتصل عبر وحدة تحكم ‎KVM‎ أو ‎VNC‎ في لوحة ‎ServOrbit‎، التي توفر وصولًا مباشرًا للخادم بمعزل عن ‎SSH‎. بعد الاتصال عبر وحدة التحكم، يمكنك إصلاح إعداد ‎sshd‎ أو إضافة مفتاحك في ‎authorized_keys‎ أو إعادة تعيين كلمة مرور. الحالة الثانية: حظر ‎fail2ban‎ عنوان ‎IP‎ الخاص بك. أزل الحظر من وحدة التحكم أو من ‎IP‎ آخر: ‎fail2ban-client set sshd unbanip YOUR_IP‎. لمنع تكراره، أضف ‎IP‎ الثابت الخاص بك في قسم ‎[DEFAULT]‎ من ‎jail.local‎: ‎ignoreip = 127.0.0.1/8 YOUR_IP‎. الحالة الثالثة: غيّرت منفذ ‎SSH‎ لكن نسيت فتحه في ‎UFW‎ قبل إعادة تشغيل ‎sshd‎. أعد الاتصال عبر وحدة التحكم، أضف القاعدة المفقودة ‎ufw allow 2222/tcp‎ وشغّل ‎ufw reload‎.

الخلاصة

في أقل من ساعة، حوّلت خادمًا هشًا إلى أساس متين: وصول ‎root‎ عبر ‎SSH‎ معطّل، فقط المفاتيح المشفرة تتيح تسجيل الدخول، جدار حماية يصفّي كل حركة بيانات غير مصرّح بها، ‎fail2ban‎ يحجب المهاجمين تلقائيًا، وتُطبَّق رقع الأمان دون تدخل يدوي. تمثّل هذه الخطوات السبع الحدّ الأدنى المطلق لأي خادم مكشوف على الإنترنت. لا تحلّ محل أمان مستوى التطبيق (‎HTTPS‎، رؤوس الأمان، التحقق من المدخلات) لكنها تُغلق أكثر متجهات الهجوم استغلالًا على خوادم ‎VPS Linux‎. احرص على توثيقها في دليل فريقك وتطبيقها منهجيًا على كل خادم جديد تُهيّئه.

‎VPS Linux‎ جاهز للتصليب في 60 ثانية

جميع خوادم ‎ServOrbit VPS‎ تُسلَّم بنظام ‎Ubuntu 22.04‎ أو ‎Debian 12‎، مع وصول ‎SSH‎ بصلاحيات ‎root‎ فوري ووحدة تحكم ‎KVM‎ مدمجة. طبّق هذا الدليل فور التسليم وابدأ على أسس متينة.

بحاجة إلى مساعدة؟

تصفّح مركز المساعدة والأسئلة الشائعة، أو راسل فريقنا — الدعم بـ العربية والفرنسية والإنجليزية.