apache geoip 설정

Linux 2015. 9. 30. 10:50


GeoIP를이용한 아파지 특정 국가차단방법

 

1. 먼저 GeoIP C Libary를 설치

http://www.maxmind.com/app/c

./configure

make

make check

make install

 

 

 

2. mod_geoip2 다운로드

 

apache 2.x download : http://www.maxmind.com/download/geoip/api/mod_geoip2/

 

mod_geoip2 압축풀고 아파치에 모듈삽입

/usr/local/apache2/bin/apxs(아파치위치) -i -a -L/usr/local/lib -I/usr/local/include -lGeoIP -c mod_geoip.c

perl: warning: Setting locale failed.

에러나면 yum -y install ncurses* 으로 설치

그다음 또 오류날텐데

/usr/local/apache/bin/apxs -i -c mod_geoip.c 이걸로했음 오류나서

 

 

apache 1.3.x download : http://www.maxmind.com/download/geoip/api/mod_geoip/

 

mod_geoip2 압축풀고 아파치에 모듈삽입

/usr/local/apache/bin/apxs -i -a -L/usr/local/lib -I/usr/local/include -lGeoIP -c mod_geoip.c

 

반드시 위와 같이 올려야 함.

 

 

 

3. GeoIP 데이터 다운로드

http://www.maxmind.com/download/geoip/database/

GeoLiteCity.dat.gz

압축풀고(gzip -d GeoLiteCity.dat.gz) 아파치폴더(httpd/conf)로 이동

 

 

 

4. httpd.conf 에 모듈활성화

LoadModule geoip_module modules/mod_geoip.so

<IfModule mod_geoip.c>

GeoIPEnable On

GeoIPDBFile /특정폴더/GeoLiteCity.dat

</IfModule>

팁: 특정폴더란?? GeoLiteCity.dat 이 파일이 위치하는 디렉토리 위치 설정

 

 

 

5. 차단방법 예제

ex1) 211.111.13.135 아이피는 허용

httpd.conf

<Directory /차단적용디렉토리>

SetEnvIf GEOIP_COUNTRY_CODE CN BlockCountry

SetEnvIf GEOIP_COUNTRY_CODE US BlockCountry

Order deny,allow

Deny from env=BlockCountry

Allow from 211.111.13.135

</Directory>

위의 설정을 할 경우 웹서버만 특정나라에서 접속을 못하게 된다.

'Linux' 카테고리의 다른 글

centos6 samba 설치  (0) 2015.10.30
php-fpm status 확인 페이지 설정방법  (0) 2015.10.13
nagios centos6 install  (0) 2015.09.16
nginx modsecurity install  (2) 2015.09.12
nginx ssl setup  (0) 2015.09.10
Posted by pysany
,