반응형
GeoIP 설치 및 사용법
1)테스트 환경
* iptables >= 1.4.3
* kernel-source >= 2.6.29
* libmnl
* Linux kernel >= 2.6.3
2)패키지 설치
yum install gcc gcc-c++ make automake unzip zip xz kernel-devel-`uname -r` iptables* kernel-* libmnl*
rpm -i http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpm
yum install perl-Text-CSV_XS
wget http://www.maxmind.com/download/geoip/database/GeoIPCountryCSV.zip
unzip GeoIPCountryCSV.zip
GeoIPCountryWhois.csv 파일 생성됨
wget http://people.netfilter.org/peejix/geoip/tools/csv2bin-20041103.tar.gz
tar zxvfp csv2bin-20041103.tar.gz
cd csv2bin
make
./csv2bin ../GeoIPCountryWhois.csv
* 커널부분을 업데이트 하면 재부팅해서 새로운 커널로 올라와야 xtables-addon 이 설치가 된다.
재부팅을 하지 않은상태로 아래 내용을 진행하면 커널소스를 찾지 못한다는 내용으로 진행이 불가하다.
reboot
xtables-addons.sourceforge.net/
최신버전 다운로드 할것
wget http://downloads.sourceforge.net/project/xtables-addons/Xtables-addons/1.37/xtables-addons-1.37.tar.xz
unxz xtables-addons-1.37.tar.xz
tar xvfp xtables-addons-1.37.tar
cd xtables-addons-1.37/
./configure
make && make install
cd geoip/
./xt_geoip_build ../../GeoIPCountryWhois.csv
mkdir -p /usr/share/xt_geoip/
cp -r {BE,LE} /usr/share/xt_geoip/
3)확인
iptables -I INPUT -m geoip --src-cc CN -j DROP
iptables -L 명령어로 확인해서 geoip가 정상적으로 올라와서 중국의 ip를 drop 시키고 있다면 성공
iptables 명령어로 룰을 넣게되면 꼭 /etc/init.d/iptables save 를 사용해서 룰을 /etc/sysconfig/iptables 에 저장해두길 바란다.
* 참고사항
# 일본과 미국에서의 웹 접속을 차단하고 다른 곳에서의 접속은 허용하고자할때
iptables -A INPUT -p tcp --dport 80 -m geoip --src-cc JP,US -j DROP
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# 한국에서의 ftp만 허용하고 나머지 국가에서의 접속은 차단하고자할때
iptables -A INPUT -p tcp --dport 21 -m geoip ! --src-cc KR -j DROP
[원본] http://skibis.tistory.com/11
반응형
'Linux' 카테고리의 다른 글
리눅스 온도체크(lm_sensors), sensor (0) | 2017.09.06 |
---|---|
디스크 dd Copy를 이용한 Backup 방법 (0) | 2017.09.06 |
centos 5.11 Reository Error 해결 (0) | 2017.09.05 |
리눅스 공백으로 시작하는 파일 변경 (0) | 2017.06.30 |
BackupPC 설치 및 운용 (0) | 2017.06.29 |
댓글