컴퓨터/노트북/인터넷
IT 컴퓨터 기기를 좋아하는 사람들의 모임방
시스템 : 데비안, 우분투
evasive 모듈 설치
# apt-get install libapache2-mod-evasive
설치가 완료되면 자동으로 모듈이 올라가고 아파치가 재시작 됩니다.
모듈이 안올라갈 경우 심볼링크로 링크를 걸어 줍니다.
심볼링크 생성
# cd /etc/apache2/mods-enabled
# ln -s ../mods-available/mod-evasive.load ./mod-evasive.load
apache2.conf 맨 아래 추가
<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSPageCount 5
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 30
DOSLogDir "/var/log/mod_evasive.log"
DOSWhitelist 127.0.0.1
</IfModule>추가 완료후 /etc/init.d/apache2 restart 로 아파치 재시작
mod_evasive 옵션
- DOSHashTableSize
각 자식 해쉬테이블 마다 탑레벨 노드의 수를 지정한다.
수치가 높으면 높을수록 더 많은 퍼포먼스가 나타나지만 테이블스페이스에 메모리를 남기게 된다
접속량이 많으면 이 수치를 높혀도 된다.
- DOSPageCount
이것은 같은 페이지 또는 URI, 인터벌당 요청수에 대한 카운트 수이다.
지정된 값이 초과되면 클라이언트에 대한 IP 정보가 블러킹리스트에 추가된다.
- DOSSiteCount
지정된 시간동안 같은 페이지를 지정된 수 보다 초과될경우 IP 정보가 블러킹리스트에 추가된다.
- DOSPageInterval
페이지 카운트 시발점, 디폴트는 1초이다.
- DOSSiteInterval
사이트 카운트 시발점, 디폴트는 역시 1초이다.
- DOSBlockingPeriod
클라이언트가 블랙리스트에 추가되어 블러킹되는 총 시간.
이때 클라이언트는 403 (Forbidden) 에러를 출력하게 된다.
- DOSEmailNotify
이 값이 지정되면, IP가 블러킹될때마다 지정된 이메일로 발동된다.
주의 : 메일러는 mod_dosevasive.c 에 정확하게 지정되야 한다. 디폴트는 "/bin/mail -t %s" 이다.
- DOSLogDir
로그 파일 경로
- DOSSystemCommand
이 값이 지정되면, 시스템은 아이피가 블러킹될때마다 명령행을 실행한다.
- DOSWhitelist
차단에서 제외될 호스트
DOSWhitelist 127.0.0.1
DOSWhitelist 127.0.0.* - (와일드카드는(*) 필요하다면 최대 8진수(xxx.*.*.*)까지 사용할 수 있다.)