How to install mod_evasive (block DDoS Apache)

Mod_evasive คือ module เสริม ชนิดหนึ่งของ apache ซึ่งทำหน้าที่ ตรวจจับ การ request ผ่าน service apache โดย มีขั้นตอนการทำงาน คือ ถ้า IP ใด มีการ request เข้ามาขอบริการ เป็นจำนวนมาก ผิดปรกติ แล้ว mod ตัวนี้ จะทำการ ban IP ดังกล่าว ซึ่งจะเป็นการช่วยป้องกันการ DDoS attack ผ่าน apache ได้

วิธีติดตั้ง Mod_evasive ผ่านระบบ DirectAdmin (OS: Debian)
cd /usr/local/directadmin/custombuild
wget http://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz
tar xvfz mod_evasive_1.10.1.tar.gz
cd mod_evasive
apxs -cia mod_evasive20.c
mkdir /var/log/mod_evasive
chmod -R 777 /var/log/mod_evasive
vim /etc/httpd/conf/httpd.conf
จากนั้น เอา config ข้างล่างนี้ไปใส่บรรทัดล่างสุดของ httpd.conf
(หรือจะทำ Include /etc/httpd/conf/extra/mod_evasive.conf ก็ได้)
<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 3600
DOSWhitelist 127.0.0.1
DOSLogDir /var/log/mod_evasive
</IfModule>
restart httpd + ลองทดสอบยิง ddos ว่าป้องกันได้รึเปล่า (# คอมเมนต์ whitelist ก่อน/หลังเทสด้วย)
/etc/init.d/httpd restart
perl /usr/local/directadmin/custombuild/mod_evasive/test.pl
อ่านวิธีใช้เพิ่มเติมที่ README ในโฟลเดอร์มันนั่นล่ะ

Blog | , , ,
Line it!