Thứ Sáu, 7 tháng 2, 2014

Server Optimized: Anti DDos cho Linux Webserver



Nói về vấn đề DDos, có lẽ sẽ rất khó để chắc chắn rằng làm thế nào chúng ta có thể an toàn 100% trước vấn nạn này. Bởi có rất nhiều phương thức tấn công như dos,ddos, flood, Slowloris …cũng như đi kèm với nó là các cường độ khác nhau. Bởi vậy các giải pháp TechBlog trình bày bên dưới sẽ chỉ có thể giúp bạn trong một số trường hợp nhất định mà thôi. Tuy vậy nó cũng sẽ phần nào giúp bạn kiện toàn bảo mật cho webserver của bạn.







1. Hạn chế DDos: Dos Deflate

Tiến hành cài đặt Firewall Dos Deflate:

#cd download #wget <a href="http://www.inetbase.com/scripts/ddos/install.sh" target="_blank">http://www.inetbase.com/scripts/ddos/install.sh</a> #chmod 0700 install.sh #./install.sh

Sau khi cài đặt thành công, ta có thể cấu hình Firewall bằng cách dùng lệnh:

#nano /user/local/ddos/ddos.conf

Đây là file cấu hình của Firewall, nội dung cơ bản sẽ như sau:

FREQ=1 // tắt/ bật Firewall (0=tắt, 1=bật)
NO_OF_CONNECTIONS=50 // max connect từ 1 IP đến server
APF_BAN=1
KILL=1 // tắt/bật (0=tắt, 1= bật)
EMAIL_TO="administrator@techblog.vn"
BAN_PERIOD=600 // thời gian ban IP là 600 giây


2. Apache Antiddos Mod: mod_dosevasive

Cài đặt mod_dosevasive:

#up2date -i httpd-devel
#cd /usr/src
#wget http://www.zdziarski.com/projects/mod_evasive/mod_evasive_1.10.1.tar.gz
#tar xfz mod_evasive_1.10.1.tar.gz
#cd mod_evasive
#$APACHE_ROOT/bin/apxs -cia mod_evasive20.c


Tìm và thêm vào file httpd.conf đoạn sau:

<IfModule mod_dosevasive20.c>
DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 300
</IfModule>



Sau đó lưu lại và restart apache bằng lệnh:

#service httpd restart
or #/etc/init.d/httpd restart

3. Cài đặt và cấu hình Iptables:

Về thông tin giới thiệu, cài đặt, cách sử dụng TechBlog đã có trình bày cụ thể tại bài viết Cấu hình Firewall Iptables trên CentOS / Redhat. Trong trường hợp anti ddos, chúng ta chỉ quan tâm một số rules cơ bản như sau:

#Limit the number of incoming tcp connections
#Interface 0 incoming syn-flood protection
#iptables -N syn_flood
#iptables -A INPUT -p tcp --syn -j syn_flood
#iptables -A syn_flood -m limit --limit 1/s --limit-burst 3 -j RETURN
#iptables -A syn_flood -j DROP


4. Cài đặt mod_antiloris cho Apache:
mod_antiloris có tác dụng giới hạn connection của mỗi IP khi request đến webserver.

#wget ftp://ftp.monshouwer.eu/pub/linux/mod_antiloris/mod_antiloris-0.3.tar.bz2
#tar -jxvf mod_antiloris-0.3.tar.bz2
#cd mod_antiloris-0.3
#sudo /wwwroot/apache2/bin/apxs -a -i -c mod_antiloris.c
#sudo /etc/inid.d/http restart


Vậy là về cơ bản chúng ta đã có trang bị một số cấu hình, firewall để chống lại DDos. Nhưng hãy cố gắng theo dõi hệ thống của mình thường xuyên để có thể đưa ra những giải pháp thích hợp tùy từng thời điểm.



Không có nhận xét nào:

Đăng nhận xét