فحص البرامج الضارة والـ Rootkit: دليل rkhunter و ClamAV
احمِ خادم Linux من البرامج الضارة والـ Rootkit. تثبيت rkhunter و ClamAV، إعداد الفحص، تفسير النتائج، الفحص المجدول والاستجابة للحوادث.
10 خطوات أساسية لتأمين خادم Linux: مصادقة مفتاح SSH، جدار الحماية، Fail2ban، التحديثات التلقائية، حماية DDoS والمزيد. دليل مع الأوامر والشروحات.
عند إعداد خادم Linux جديد، لا يكون التكوين الافتراضي محسّناً للأمان. كل خادم متصل بالإنترنت يصبح هدفاً لأدوات المسح الآلي في غضون دقائق. يشرح هذا الدليل الخطوات العشر الأساسية التي تحتاج إلى تنفيذها لتأمين خادمك، مع الأوامر.
كن حذراً لعدم فقدان الوصول إلى خادمك أثناء تطبيق هذه الخطوات. خاصةً عند تغيير تكوين SSH، احتفظ بجلستك الحالية مفتوحة واختبر بنافذة طرفية جديدة.
تسجيل الدخول عبر SSH بكلمة مرور عرضة لهجمات القوة الغاشمة. استخدام زوج مفاتيح SSH أكثر أماناً بكثير.
# إنشاء مفتاح Ed25519
ssh-keygen -t ed25519 -C "server-name@rexe"
# أو إذا أردت استخدام RSA
ssh-keygen -t rsa -b 4096 -C "server-name@rexe"
# تشغيل من الجهاز المحلي
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@server-ip
# تحرير /etc/ssh/sshd_config
sudo nano /etc/ssh/sshd_config
# تغيير هذه الأسطر:
PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin no
# إعادة تشغيل خدمة SSH
sudo systemctl restart sshd
# تثبيت UFW
sudo apt install ufw -y
# تعيين السياسات الافتراضية
sudo ufw default deny incoming
sudo ufw default allow outgoing
# السماح بـ SSH
sudo ufw allow 22/tcp
# منافذ خادم الويب
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
# تفعيل UFW
sudo ufw enable
# تثبيت Fail2ban
sudo apt install fail2ban -y
# إنشاء ملف التكوين
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
[DEFAULT]
bantime = 3600
findtime = 600
maxretry = 5
[sshd]
enabled = true
maxretry = 3
bantime = 86400
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure -plow unattended-upgrades
# قائمة الخدمات الجارية
sudo systemctl list-units --type=service --state=running
# فحص المنافذ المفتوحة
sudo ss -tlnp
# إيقاف وتعطيل الخدمات غير الضرورية
sudo systemctl stop bluetooth
sudo systemctl disable bluetooth
sudo apt install libpam-pwquality -y
minlen = 12
ucredit = -1
lcredit = -1
dcredit = -1
ocredit = -1
sudo apt install libpam-google-authenticator -y
google-authenticator
# نسخ احتياطي محلي مع rsync
rsync -avz --delete /var/www/ /backup/www/
# مهمة cron للنسخ الاحتياطي التلقائي
0 2 * * * rsync -avz /var/www/ /backup/www/
# نسخ احتياطي لقاعدة البيانات
mysqldump -u root -p --all-databases | gzip > /backup/db_$(date +%Y%m%d).sql.gz
طبّق قاعدة النسخ الاحتياطي 3-2-1: 3 نسخ، 2 وسائط مختلفة، موقع مختلف واحد.
tail -f /var/log/auth.log
tail -f /var/log/syslog
grep "Failed password" /var/log/auth.log | tail -20
# حماية من SYN flood
sudo iptables -A INPUT -p tcp --syn -m limit \
--limit 1/s --limit-burst 3 -j ACCEPT
sudo iptables -A INPUT -p tcp --syn -j DROP
# حد عدد الاتصالات (لكل IP)
sudo iptables -A INPUT -p tcp --dport 80 -m connlimit \
--connlimit-above 50 -j REJECT
قد تكون الحماية من DDoS المستندة إلى البرمجيات غير كافية ضد الهجمات واسعة النطاق. توفر البنية التحتية لـ Path.net من REXE تصفية DDoS على مستوى الشبكة، مما يُنظّف حركة مرور الهجوم قبل وصولها إلى خادمك.
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d example.com -d www.example.com
server {
listen 443 ssl http2;
ssl_protocols TLSv1.2 TLSv1.3;
add_header Strict-Transport-Security "max-age=63072000" always;
add_header X-Frame-Options DENY;
add_header X-Content-Type-Options nosniff;
}
اتبع هذه الخطوات عند الاتصال الأول: 1) تحديث النظام (apt update && apt upgrade)، 2) إنشاء مستخدم sudo جديد، 3) إعداد مصادقة مفتاح SSH، 4) تعطيل تسجيل دخول root عبر SSH، 5) تكوين جدار حماية UFW، 6) تثبيت Fail2ban.
نعم، يعمل Fail2ban وUFW معاً بشكل مثالي. يكتشف Fail2ban محاولات تسجيل الدخول الفاشلة ويحظر عناوين IP المهاجمين تلقائياً عبر UFW.
جزئياً. تغيير منفذ SSH يحجب الغالبية العظمى من أدوات المسح الآلي. ومع ذلك، يُعتبر هذا 'أمان من خلال الغموض' ولا يحل محل التدابير الأمنية الحقيقية. مصادقة مفتاح SSH وFail2ban أكثر فعالية بكثير.
علامات النشاط المشبوه: محاولات تسجيل دخول فاشلة كثيرة في /var/log/auth.log، استخدام CPU/RAM مرتفع بشكل غير متوقع، اتصالات شبكة مجهولة، مهام cron مجهولة، ملفات نظام معدّلة.
أولاً حدّد نوع الهجوم ومصدره. إذا استمر الهجوم، أبلغ فريق دعم REXE فوراً. تقوم حماية DDoS من REXE عبر Path.net بتصفية الهجمات على مستوى الشبكة.
احمِ خادم Linux من البرامج الضارة والـ Rootkit. تثبيت rkhunter و ClamAV، إعداد الفحص، تفسير النتائج، الفحص المجدول والاستجابة للحوادث.
احمِ خادمك من هجمات SSH Brute-Force باستخدام Fail2Ban. التثبيت، إعداد jail.local، جيلات Nginx/Apache، القائمة البيضاء للـ IP، مراقبة الحظر وتنبيهات البريد الإلكتروني.
أنشئ خادم WireGuard VPN: توليد المفاتيح، إعداد الخادم والعميل، توجيه IP، قواعد جدار الحماية وإعداد عملاء Windows/Linux/Android.