debian 계열 Linux에서 apache2 웹서버를 운영한다면, 간단한 방법으로 DDoS 공격을 차단 할 수 있다.
mod_evasive 를 사용하는 방법이다. mod_evasive는 따로 설치해 주어야 하며, debian 계열에서는 간단하게 설치가 가능하다.
1. 설치
# apt-get install libapache2-mod-evasive
2. 설정
/etc/apache2/mods-available/mod-evasive.conf 화일에 아래 내용을 추가한다. 경우에 따라, 화일 이름이 evasive.conf 일 수도 있다.
# vi /etc/apache2/mods-available/mod-evasive.conf <IfModule mod_evasive20.c> #DOSHashTableSize 3097 DOSHashTableSize 1024 #DOSPageCount 2 DOSPageCount 2 #DOSSiteCount 50 DOSSiteCount 50 #DOSPageInterval 1 DOSPageInterval 1 #DOSSiteInterval 1 DOSSiteInterval 1 #DOSBlockingPeriod 10 DOSBlockingPeriod 10 #DOSEmailNotify you@yourdomain.com #DOSSystemCommand "su - someuser -c '/sbin/... %s ...'" #DOSLogDir "/var/log/mod_evasive" DOSLogDir "/var/log/mod_evasive" </IfModule>
3. log 디렉토리 설정
# mkdir -p /var/log/mod_evasive # chown -R www-data:www-data /var/log/mod_evasive
4. 모듈을 활성화 해주고 apache서버를 재실행한다.
# a2enmod mod-evasive Enabling module mod-evasive. To activate the new configuration, you need to run: service apache2 restart # service apache2 restart * Restarting web server apache2
5. 테스트
사이트에 접속해서 F5를 계속 누르면, Forbidden 메시지가 보인다. 다만, 단순 웹페이지는 잘 작동하는것을 확인했다.