بسم الله الرحمن الرحيم

url

سوف نتحدث اليوم عن حماية  تقدمها اداة fail2ban والتي تعمل على مراقبة سجلات النظام في خوادم لينكس ومراقبة اي محاولة تسجيل دخول خاطئة والتحقق من تكرار العملية على السيرفر ثم يقوم السيرفر او البرنامج بحظر الايبي الذي يقوم بعملية التخمين ومحاولة كسر كلمة المرور  .

تنصيب fail2ban على السيرفر :

تنصيب البرنامج سهل جدا فقط  قم بتنفيذ الامر التالي على حسب نوع التوزيعه :
 
ubntu:

Centos:
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
CentOS 7:
rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-1.noarch.rpm
اذا كنت تستخدم توزيعة centos بعد تنفيذ الامر السابق الخاص بتوزيعتك قم تنفيذ الامر :
 
yum install fail2ban -y
 
بعد عملية التنصيب نقوم باعداد البرنامج , سوف نقوم بنسخ ملف الاعدادات بالامر التالي:
 

الان قمنا بنسخ ملف الاعدادات الى وقمنا بتسميته jail.local  سوف نقوم بعمل جميع تعديلاتنا عليه ان وجدت وسوف يكون هو الملف المسؤول على اعدادات البرنامج والذي يحتوي على مجموعه من الخيارات المهمة , اذا قمت بفتح الملف سوف تجد بعض هذه الخيارات كالتالي :

 

bantime : هذا الخيار يحتوي على المدة الزمنية التي سوف يبقى فيها الايبي محظور بشكل افتراضي يتم حظر
الايبي لفتره عشر دقائق .

 

maxretry : عدد المحاولات الخاطئة والتي سوف يقوم البرنامج بحظر الايبي بعدها مباشرة , هذا الخيار يعمل ايضا بمساعدة
خيار اخر findtime ويقوم بحساب الفتره الزمنية بين محاولة واخرى , لمعرفة اذا ما كانت الثلاث المحاولات الخاطئة
في نفس الفتره .

يمكن للبرنامج ايضا ارسال اليك رسالة الى الايميل بوجود هجوم على السيرفر او انه قام بحظر ايبي لشخص ما .

ls /etc/fail2ban/filter.d

بعد الانتهاء من اعداد ملف الاعدادات على السيرفر الاداة تعمل بشكل تلقائي على حماية خدمة ssh فقط وباقي الخدمات لا يتم تطبيق عليها اي حماية بشكل تلقائي يجب علينا اعداد البرنامج ليقوم بتطبيق الحماية عليها . خدمة ssh هي مجرد مثال لتوضيح فكره عمل البرنامج يمكن تطبيق نفس الفكره والحماية على الكثير من الخدمات والبرنامج يحتوي على العديد من الفلاتر التي يمكن استخدامها والموجوده في المسار

سوف تظهر لك العديد من الخدمات والبرمجيات التي يمكن اعداد البرنامج ليكتشف هجمات التخمين عليها .

هذه قائمة بالخدمات والبرامج التي تدعمها الاداة في الوقت الحالي :

3proxy
apache-auth
apache-badbots
apache-common
apache-modsecurity
apache-nohome
apache-noscript
apache-overflows
assp
asterisk
common
courierlogin
couriersmtp
cyrus-imap
dovecot
dropbear
ejabberd-auth
exim-common
exim
exim-spam
freeswitch
groupoffice
gssftpd
horde
lighttpd-auth
mysqld-auth
nagios
named-refused
nginx-http-auth
nsd
openwebmail
pam-generic
perdition
php-url-fopen
postfix.conf
postfix-sasl
proftpd
pure-ftpd
qmail
recidive
roundcube-auth
selinux-common
selinux-ssh
sendmail-auth
sendmail-reject
sieve
sogo-auth
solid-pop3d
squid
sshd
sshd-ddos
suhosin
uwimap-auth
vsftpd
webmin-auth
wuftpd
xinetd-fail

يمكنك تطبيق الحماية على اي خدمه من الخدمات التاليه وتبقى امنة من هجمات التخمين .

اعداد الحماية على خدام nginx .

على سبيل المثال نريد تطبيق الحماية على سيرفر nginx , نقوم بفتح ملف اعدادات الاداة jail.local سوف تجد اعدادات كل الفلاتر السابقة ويمكن استخدام اي واحده منها في حالتنا الان وعلى سبيل المثال لنفترض اننا نريد حماية عملية المصادقة لسيرفر nginx .

ونقوم بتفعيل الخدمه عن طريق تغيير false الى true ايضا قم بتغيير اللازم اذا كان اي اختلافات لديك في السيرفر مثل مسار ملف log والايميل الذي تريد ان يصل اليه التقرير او التنبيه كذلك عدد المحاولات والوقت .

بعد عملية التعديل يجب علينا عمل اعاده تشغيل للأداة من خلال الامر التالي :

service fail2ban restart

سوف تعمل الان الاداة ان شاء الله بشكل سليم .