إعداد Fail2Ban: دليل حماية SSH من هجمات Brute-Force
احمِ خادمك من هجمات SSH Brute-Force باستخدام Fail2Ban. التثبيت، إعداد jail.local، جيلات Nginx/Apache، القائمة البيضاء للـ IP، مراقبة الحظر وتنبيهات البريد الإلكتروني.
احمِ خادم Linux من البرامج الضارة والـ Rootkit. تثبيت rkhunter و ClamAV، إعداد الفحص، تفسير النتائج، الفحص المجدول والاستجابة للحوادث.
على الرغم من أن خوادم Linux تتعرض للهجمات بشكل أقل من أنظمة Windows، إلا أنها ليست محصنة ضد هجمات البرامج الضارة والـ Rootkit. يعد الفحص الأمني المنتظم أمرًا بالغ الأهمية، خاصة للخوادم المتصلة بالإنترنت. سيرشدك هذا الدليل لبناء بنية تحتية شاملة لفحص الأمان باستخدام rkhunter و ClamAV.
rkhunter (Rootkit Hunter) هو أداة أمان مفتوحة المصدر مصممة للكشف عن الـ Rootkit والـ Backdoor والثغرات المحلية في أنظمة Linux. يتحقق من قيم الهاش والأذونات وتوقيعات الـ Rootkit المعروفة لملفات النظام.
# Ubuntu/Debian
sudo apt update
sudo apt install rkhunter -y
# CentOS/AlmaLinux/Rocky Linux
sudo dnf install rkhunter -y
# أو من مستودع EPEL:
sudo dnf install epel-release -y
sudo dnf install rkhunter -y
# تحديث قاعدة بيانات التوقيعات
sudo rkhunter --update
# تسجيل قيم الهاش الأولية لملفات النظام
# نفّذ هذا على نظام نظيف!
sudo rkhunter --propupd
شغّل --propupd فقط عندما تكون متأكدًا من أن نظامك نظيف. هذا الأمر يحفظ هاشات الملفات الحالية كقيم مرجعية.
# فحص كامل للنظام
sudo rkhunter --check
# الوضع غير التفاعلي (لـ cron)
sudo rkhunter --check --skip-keypress
# إظهار التحذيرات فقط
sudo rkhunter --check --rwo
# إخراج مفصّل
sudo rkhunter --check --verbose-logging
# عرض ملف السجل
sudo cat /var/log/rkhunter.log
يُظهر إخراج rkhunter ثلاث حالات:
# تصفية التحذيرات فقط
sudo grep -i warning /var/log/rkhunter.log
# عرض تقرير ملخص
sudo tail -50 /var/log/rkhunter.log
بعض التحذيرات قد تكون إيجابيات كاذبة. الأدوات المُجمَّعة مخصصًا أو ملفات النظام المعدّلة يمكن أن تُطلق تحذيرات. تحقق يدويًا من كل تحذير.
ClamAV هو محرك مكافحة فيروسات مفتوح المصدر. يُستخدم على نطاق واسع على خوادم Linux لفحص الملفات ومرفقات البريد الإلكتروني ومحتوى الويب.
# Ubuntu/Debian
sudo apt update
sudo apt install clamav clamav-daemon -y
# CentOS/AlmaLinux
sudo dnf install clamav clamd clamav-update -y
# إيقاف خدمة ClamAV (للتحديث)
sudo systemctl stop clamav-freshclam
# تحديث قاعدة البيانات يدويًا
sudo freshclam
# إعادة تشغيل الخدمة
sudo systemctl start clamav-freshclam
sudo systemctl enable clamav-freshclam
# فحص مجلد واحد
sudo clamscan -r /home
# فحص كامل للنظام (قد يكون بطيئًا)
sudo clamscan -r / --exclude-dir="^/sys" --exclude-dir="^/proc" --exclude-dir="^/dev"
# إظهار الملفات المصابة فقط
sudo clamscan -r /var/www --infected
# نقل الملفات المصابة إلى الحجر الصحي
sudo clamscan -r /home --infected --move=/quarantine
# حفظ نتائج الفحص في ملف
sudo clamscan -r / --log=/var/log/clamav-scan.log --exclude-dir="^/sys" --exclude-dir="^/proc"
# إنشاء ملف cron
sudo nano /etc/cron.d/security-scan
# /etc/cron.d/security-scan
# فحص rkhunter كل ليلة الساعة 02:00
0 2 * * * root /usr/bin/rkhunter --check --skip-keypress --report-warnings-only 2>&1 | mail -s "[rkhunter] $(hostname) تقرير يومي" admin@example.com
# فحص ClamAV الكامل كل أحد الساعة 03:00
0 3 * * 0 root /usr/bin/clamscan -r / --exclude-dir="^/sys" --exclude-dir="^/proc" --exclude-dir="^/dev" --infected --log=/var/log/clamav-weekly.log
# تحديث قاعدة بيانات ClamAV يوميًا
0 1 * * * root /usr/bin/freshclam --quiet
إذا تم اكتشاف تهديد أثناء الفحص:
# فحص اتصالات الشبكة
sudo ss -tlnp
# إيجاد الاتصالات المشبوهة
sudo ss -anp | grep ESTABLISHED
# تقييد الوصول للشبكة عند الحاجة
sudo ufw default deny incoming
sudo ufw default deny outgoing
sudo ufw allow ssh # الحفاظ على وصول SSH
# حفظ العمليات الجارية
ps aux > /tmp/processes_$(date +%Y%m%d).txt
# إيجاد الملفات المعدّلة مؤخرًا
find / -mtime -1 -type f 2>/dev/null | grep -v proc | grep -v sys
# نقل الملفات المشبوهة إلى الحجر الصحي
mkdir -p /quarantine
mv /path/to/suspicious/file /quarantine/
# التحقق من ملفات النظام
sudo debsums -c # Debian/Ubuntu
sudo rpm -Va # CentOS/RHEL
عند اكتشاف إصابة خطيرة بـ Rootkit، الحل الأكثر أمانًا هو إعادة تثبيت الخادم من الصفر. نظرًا لأن الـ Rootkit يمكنه تعديل أدوات النظام، فإن التنظيف ليس موثوقًا دائمًا.
الفحص المنتظم للبرامج الضارة والـ Rootkit هو مكوّن أساسي لأمان الخادم. استخدام rkhunter و ClamAV معًا يُنشئ طبقة حماية شاملة. تتيح الفحوصات المجدولة وإشعارات البريد الإلكتروني الكشف المبكر عن التهديدات الأمنية.
بعض التحذيرات قد تكون إيجابيات كاذبة. تتغير هاشات الملفات خاصة بعد تحديثات النظام. بعد التحديث، شغّل 'sudo rkhunter --propupd' لتحديث القيم المرجعية. تحقق يدويًا من كل تحذير.
يمكن أن يستغرق من بضع ساعات إلى يوم كامل حسب حجم القرص وعدد الملفات. للفحوصات اليومية، ركّز على المجلدات الحيوية مثل /home و /var/www و /tmp. جدوِل الفحوصات الكاملة أسبوعيًا.
rkhunter يفحص ملفات النظام والإعدادات للكشف عن الـ Rootkit والـ Backdoor. ClamAV هو محرك مكافحة فيروسات قائم على التوقيعات يفحص محتوى الملفات. يكمّلان بعضهما البعض ويُنصح باستخدامهما معًا.
نعم، خاصة فحص النظام الكامل بـ ClamAV يزيد من استخدام CPU وإدخال/إخراج القرص. جدوِل الفحوصات في أوقات الذروة المنخفضة. يمكنك خفض الأولوية بأمر 'nice': 'sudo nice -n 19 clamscan -r /'
أولًا ضع الملف في الحجر الصحي (لا تحذفه). ابحث عن ماهية الملف — قد يكون إيجابيًا كاذبًا. إذا كان تهديدًا حقيقيًا، عزل النظام واجمع الأدلة وأعد تثبيت الخادم إذا لزم الأمر.
احمِ خادمك من هجمات SSH Brute-Force باستخدام Fail2Ban. التثبيت، إعداد jail.local، جيلات Nginx/Apache، القائمة البيضاء للـ IP، مراقبة الحظر وتنبيهات البريد الإلكتروني.
أنشئ خادم WireGuard VPN: توليد المفاتيح، إعداد الخادم والعميل، توجيه IP، قواعد جدار الحماية وإعداد عملاء Windows/Linux/Android.
مبادئ أمان شبكة Zero Trust والتطبيق العملي: لا تثق أبدًا تحقق دائمًا، التجزئة الدقيقة، الوصول القائم على الهوية والتطبيق بأدوات Linux الموجودة.