CentOS-4를 위한 iptables geoip 패치

centos4기준으로 iptables connlimit  패키징 하면서  geoip 패치도 같이 만들어 보았다.

패키징 해놓은것으로 <FONT color=#0000ff>libipt_geoip.so</FONT> , <FONT color=#0000ff>ipt_geoip.ko</FONT>을 한큐에 올릴수 있고,

csv로 geoip데이터를 컨버팅 해주는 유틸 설치 까지 끝낼수 있다.

뭐.. 암튼.. iptables  geoip패치를 하게 되면 국가별 차단룰 만드는게 간단해져서 컨트롤이  쉬워지는 장점이 있다.

**[사전작업]
**<FONT color=#333333>작업에 앞서 사전작업이 필요하다…. 사전작업 이래봐야 별거 없다 ㅋㅋ…
현재 설치되어 있는 iptables의 src.rpm 구해서 아래와 같이만 해놓으면  된다..</FONT><FONT color=#ff0000>

<FONT color=#ff0000>rpm -ivh iptables-1.2.11-3.2.RHEL4.src.rpm
rpmbuild -bp /usr/src/redhat/SPECS/iptables.spec –target=`uname -r`
ln -s /usr/src/redhat/BUILD/iptables-1.2.11/   /usr/src/iptables
</FONT>

</FONT>

이것으로 .사전작업은 끝 ㅋㅋ..

centos4는 디폴트가 1.2.11버전일것이다.

이제~ 패키징해 놓은 압축파일 받아다가 폴더 안에 있는 geo.sh만 실행 해주면 끝난다.

**다운로드 -> ** **[**POM-NG\_geoip\_CentOS-4.tar.gz **][1]**사용자 삽입 이미지 별문제 없었다면 libipt_geoip.so , ipt_geoip.ko 올라온거 확인 될거고, csv2bin등..
geoip_tools이 인스톨되어 있을것이다.

이제 국가별ip데이터를 받아다가 iptables가 인식할수 있게 컨버팅만 해주면 된다
ip데이터는 여기서~ http://geolite.maxmind.com/download/geoip/database/GeoIPCountryCSV.zip

컨버팅은 csv2bin을 이용하면 된다. 방법은 아래 스샷 참고.  사용자 삽입 이미지그리고 국가별룰이 올라오는지 확인~

간단 사용법은 iptables -m geoip –help으로 알아 볼 수 있다.

 ip데이터는 주기적으로 변동되므로 각자 알아서 스케줄을 돌려, 갱신해주면 되겠다.

커널 업데이트등 현재 사용하는 커널을 변경하게되면  인스톨 스크립트를 다시 돌려줘야 커널에 맞게끔 모듈이 올라온다.

귀차니즘 안녕~~

관련 사이트
http://people.netfilter.org/peejix/geoip/howto/geoip-HOWTO.html#toc1
</A>http://geolite.maxmind.com

Written on February 5, 2011