ادارة السيرفرات مسؤولية كبيرة تقع على عاتق اي شخص لدية موقع أو استضافة لأن هو من يتحكم بهذا السيرفر وحمايته نجنبة من الوقوع بين ايدي اطفال الهكر
اليوم موضوعنا يخص غلق البورتات في السيرفر
طبعا واحد يقول كيف ؟
لديك خيارين الاول عن طريق جدران الحماية مثل csf
الطريقة الثانية بواسطة iptables وهو الاقوى
حيت يتم اضافة قانون خاص بالتعامل في البورتات عن طريق الجدار iptables
سنستخدم الفايروال المدمج مع اللينكس iptables لصد كثير من انواع الهجوم المختلفه
الحمايه من هجمات syn
iptables -A INPUT -p tcp --dport 2077 -j DROP
اغلق جميع البورتات واترك فقط
80
53
443
2087
2083
وهذا يخفف عليك كثيرا
iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
الحمايه من هجمات ip fragmentation
iptables -A INPUT -f -j DROP
الحمايه من هجمات xmas
iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
الحمايه من هجمات null
iptables -A INPIT -p tcp --tcp-flags ALL NONE -j DROP
لايقاف فحص البورتات بnmap
iptables -A INPUT -p tcp –tcp-flags ALL FIN -j DROP
iptables -A INPUT -p tcp –tcp-flags ALL NONE -j DROP
iptables -A INPUT -p tcp –tcp-flags ALL ALL -j DROP
iptables -A INPUT -p tcp –tcp-flags ALL FIN,PSH,URG -j DROP
الحمايه من هجمات icmp حيث سيقوم هذا باغلاق استعلامات البينج لفحص الاتصال
iptables -A OUTPUT -p icmp --icmp-type XXXX-request -j DROP
تحديد عدد الاتصالات للبورت 80
iptables -A INPUT -p tcp --dport 80 -m state --state NEW -m limit --limit 50/minute --limit-burst 300 -j ACCEPT
الحمايه من هجومbrute force على ssh
قم بتغيير البورت 22 الى البورت تريده اذا كنت قد قمت بتغيير بورت ssh الافتراضى
قم بتغيير eth0 الى venet0 اذا كنت فى بى اس
iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW -m recent --set --XXXX SSH
iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 8 --rttl --XXXX SSH -j DROP
الحمايه من هجمات ip spoofing
اذا كنت فى بى اس ثم بتغيير eth0 الى venet0 مع تغيير 0.0.0.0/8 الى معدل ايبيهاتك
iptables -A INPUT -i eth0 -s 0.0.0.0/8 -j DROP
نكمل
إنتشرت هذة الأيام ثغرة جداً جداً خطيرة في قواعد بيانات MySQL وقواعد البيانات المشتقة منها مثل MariaDB.
هذة الثغرة تسمح لأي شخص على الإنترنت بالوصول إلى جميع محتويات قاعدة بيانات الموقع\السيرفر الخاص بك بصلاحية المستخدم الجذري root. مما يعني أنه سوف يتمكن من معرفة محتويات قاعدة البيانات، التلاعب بها، أخذ نسخة منها أو حتى حذفها نهائياً.
المتضررون من هذة الثغرة كثر، لذلك يجب تنفيذ أحد هذة الخطوات التالية “الآن” لحماية قواعد بياناتك(أنظمة يونكس ولينكس فقط):
1- كمستخدم جذري root، نفذ هذا الأمر لإغلاق منفذ Port قاعدة البيانات بواسطة الجدار الناري IpTables:
iptables -A INPUT -s localhost -j ACCEPT
iptables -A INPUT -s 0/0 -p tcp --dport 3306 -j DROP
في حالة وجود حاجة للإتصال بقاعدة البيانات من سيرفر أخر، قم بإستبدال 0/0 بعنوان الأي بي الخاص بك ليصبح الأمر هكذا:
iptables -A INPUT -s localhost -j ACCEPT
iptables -A INPUT -s 12.34.56.78 -p tcp --dport 3306 -j ACCEPT
iptables -A INPUT -s 0/0 -p tcp --dport 3306 -j DROP
2- إذا كان لايوجد لديك أي سيرفر خارجي يريد الإتصال بقاعدة البيانات الخاصة بك بتاتاً، قم بإلغاء خيار الشبكة من خيارات قواعد بيانات MySQL كالتالي:
- إفتح ملف my.cnf الخاص بخيارات MySQL، وهو موجود تحت /etc/mysql في أنظمة لينكس ديبيان والمشتفة منها مثل أوبونتو أو موجود تحت /etc/my.cnf في أنظمة لينكس ريدهات والمشتقة منها مثل سنتوس أو فيدورا.
- أضف أو عدل هذا السطر ليتم إلغاء الإتصال الخارجي ليصبح هكذا:
bind-address = 127.0.0.1
- قم بحفظ قوانين و تعديلات الجداري الناري
service iptables save
service iptables restart
- قم بإعادة تشغيل قاعدة البيانات:
service mysql restart
هذا هو الحل المبدئي، لذلك سارع بتحديث قاعدة البيانات الخاصة بك! علماً بأنه يمكن تفادي هذه الثغرة من الأساس بإتباع
هذه التدوينة المفصلة عن حماية قواعد بيانات MySQL.
| روابط هذه التدوينة قابلة للنسخ واللصق | |
| URL | |
| HTML | |
| BBCode | |
kamindoz
