다운로드 : http://www.zdziarski.com/projects/mod_evasive/mod_evasive_1.10.1.tar.gz
# 압축해제
$ tar xvzf mod_evasive_1.10.1.tar.gz
# 디렉토리 이동
$ cd mod_evasive
# 모듈 추가
$ /usr/local/apache2/bin/apxs -iac mod_evasive.c -> Apache.1.x
$ /usr/local/apache2/bin/apxs -iac mod_evasive20.c -> Apache.2.x
# 환경설정
$ vi /usr/local/apache/conf/httpd.conf
check LoadModule evasive_module modules/mod_evasive.so -> Apache.1.x
check LoadModule evasive20_module modules/mod_evasive20.so -> Apache.2.x
# 다음을 추가한다
<IfModule mod_evasive.c>
DOSHashTableSize 3097
DOSPageCount 3
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 30
DOSEmailNotify webmaster@abcd.com
DOSLogDir "/usr/local/apache/logs/mod_evasive.log"
</IfModule>
# 환경설정 검사
$ apachectl configtest
# 재시작
$ apachectl -k restart
설정에 대한 설명은 다음과 같다.
1. DOSPageCount: 몇개의 연속 pagehit 에 대해 차단 조치를 할 것인가에 대한 설정.
2. DOSSiteCount: 몇개의 연속 site 접속에 대해 차단 조치를 할 것인가에 대한 설정.
3. DOSPageInterval: pagehit 에 대한 "허용될 연속 접속 사이의 시간 간격"을 (초) 단위로 입력.
4. DOSSiteInterval: site 접속에 대한 "허용될 연속 접속 사이의 시간 간격"을 (초) 단위로 입력.
5. DOSBlockingPeriod: 차단된 호스트가 풀릴 때 까지의 시간을 (초) 단위로 입력.
6. DOSEmailNotify: 공격에 대한 정보를 보낼 메일 주소.
7. DOSLogDir: 로그파일 경로
8. DOSWhitelist: 차단에서 제외될 호스트
설정에 대한 설명은 어디서 인용을 했는데...기억이 나질 안네요...원작자에겐 정말 죄송합
니다.;;;
이렇게 셋팅을 하고나서 사이트 접속후 F5키를 누르고 있으면 403 Access Denied가 뜹니다. 나름... 괜찮지요...
그런데 문제점도 있습니다. js, css, swf등을 코딩할때 embed를 하게되는데...
이게 사이트 카운트로 인식해서 많이 포함된 웹페이지는 접속하자마자 403입니다..
위 샘플의 설정대로 하고 swf를 스크립트로 embed를 10개 했더니...
바로 Access Denied ...;; 해결 방법이 있으면 공유 좀 부탁드립니다.
출처 : PHPSCHOOL
'Server&OS > Apache' 카테고리의 다른 글
[서버운영] 중국 IP 대역 (0) | 2010.04.23 |
---|---|
[보안] php취약점 자동공격 봇 막기. (0) | 2010.04.23 |
httpd.conf파일 변경후 아파치 재기동 안하고 적용하기[httpd.conf리로드] (0) | 2009.09.04 |
아파치 웹서버 80포트로 접근이 안될때 (0) | 2009.09.02 |
[CentOS] Apache 설치하기. (0) | 2009.09.01 |