o

특정국가 서버단 차단 또는 특정국가만 허용하기

이부분은 서버 root관리자 권한이 있는 서버나, 코어 호스팅 사용자만 적용이 가능합니다.
레드헷계열, yum 으로 APM를 운영전제하에 적겠습니다.

GeoIP 모듈설치
yum -y install GeoIP
yum -y install mod_geoip

두가지를 설치하고 나서
service httpd restart 로 아파치를 재실행후
phpinfo를 확인해보면 Environment 정보에 GEOIP_CONTINENT_CODE, GEOIP_COUNTRY_CODE, GEOIP_COUNTRY_NAME 항목들이 추가됩니다.
이정보는 이후에 $_SERVER['GEOIP_COUNTRY_CODE'] 으로 php상에서 바로 사용이 가능합니다.

/etc/httpd/conf.d 폴더안에 geoip.conf 파일이 자동으로 추가되어져 있는데
이 파일을 열어서 접근금지 시킬 국가를 설정 후 아파치를 재시작하게 되면 해당국에서 접속한
아이피에 대해서 아파치단에서 모두 차단되게 됩니다.

특정국 차단
<IfModule mod_geoip.c>
GeoIPEnable On
GeoIPDBFile /usr/share/GeoIP/GeoIP.dat MemoryCache
<Directory /home/ccsoft/www>
SetEnvIf GEOIP_COUNTRY_CODE CN go_out
SetEnvIf GEOIP_COUNTRY_CODE RU go_out
SetEnvIf GEOIP_COUNTRY_CODE TH go_out
<Limit GET POST>
Order allow,deny
Allow from all
Deny from env=go_out
</Limit>
</Location>
</IfModule>

특정국만 허용
<IfModule mod_geoip.c>
GeoIPEnable On
GeoIPDBFile /usr/share/GeoIP/GeoIP.dat MemoryCache
<Location /home/ccsoft/www>
SetEnvIf GEOIP_COUNTRY_CODE KR go_in
<Limit GET POST>
Order Deny,Allow
Deny from all
Allow from env=go_in
</Limit>
</Location>
</IfModule>
|

댓글 3개

호스팅 사용자는

https://github.com/maxmind/geoip-api-php

geoip lite 로 가능할것 같네요~
참고로 카페24에서는 기본 지원되는기능입니다. 호스팅 회사에 문의하셔도 좋을겁니다
댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 팁자료실

+
제목 글쓴이 날짜 조회
9년 전 조회 5,773
9년 전 조회 6,621
9년 전 조회 7,747
9년 전 조회 1만
9년 전 조회 6,242
9년 전 조회 1.2만
9년 전 조회 2만
9년 전 조회 1.2만
9년 전 조회 1만
9년 전 조회 6,164
9년 전 조회 1.2만
9년 전 조회 7,391
9년 전 조회 7,893
9년 전 조회 1.7만
9년 전 조회 8,067
9년 전 조회 8,814
9년 전 조회 9,368
9년 전 조회 7,028
9년 전 조회 1.8만
9년 전 조회 9,653
9년 전 조회 7,452
9년 전 조회 8,905
9년 전 조회 6,786
9년 전 조회 1.8만
9년 전 조회 1.9만
9년 전 조회 9,458
9년 전 조회 7,725
9년 전 조회 2.3만
9년 전 조회 7,140
9년 전 조회 9,565