Skip to content

조회 수 10342 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

Kernel 2.6.22 geoip, connlimit적용
SMILESERV
Jump to: navigation, 찾기
1. patch-o-matic-ng, iptables, 커널 소스, geoip-match-patch 다운로드

  patch-o-match-ng  --> ftp.netfilter.org/pub/patch-o-matic-ng/snapshot/
  IPTABLES  --> ftp.netfilter.org/pub/iptables
  KERNEL  --> ftp.kernel.org/pub/linux/kernel
  geoip-match.patch -->http://bjerkeset.com/patches/geoip-match-2.6.22.patch.gz
  * 되도록 /usr/src로 해당 파일들을 위치시키는 것이 오류가 나지 않음
     커널 make시에 용량이 커지므로 /usr 파티션 용량이 모자랄경우 다른 파티션에 커널 이미지를 풀고
     ln -s 커널이미지경로 /usr/src/linux로 심볼릭 링크를 걸어준다.

 

2. geoip, connlimit 커널에 패치

tar xfz patch-o-matic-ng-XXXXXX.tar.gz

cd patch-o-matic-ng

IPTABLES_DIR=/usr/src/iptables KERNEL_DIR=/usr/src/linux ./runme --download --> patch-o-matic에서 geoip 및 기타 다른 패키지를 자동으로 다운로드 하여 설치

IPTABLES_DIR=/usr/src/iptables KERNEL_DIR=/usr/src/linux ./runme geoip --> 커널에 geoip 패치

IPTABLES_DIR=/usr/src/iptables KERNEL_DIR=/usr/src/linux ./runme connlimit --> 커널에 connlimit 패치

cd /usr/src/linux/net/ipv4/netfilter/

cp /usr/src/geoip-match-2.6.22.patch /usr/src/linux/net/ipv4/netfilter/

patch -p1 < geoip-match.patch --> 위 명령 실행시 패치 할 원본 파일을 묻게되며 원본 파일은 ipt_geoip.c를 입력해야 하며 커널 2.6.22는 ipt_geoip.c를 패치해 주어야 make에서 오류가 발생하지 않음

 


3. 커널 컴파일 --> 커널 컴파일 관련 모든 명령은 커널소스 디렉토리 내에서 실행해야함

3-1 make memuconfig 아래 항목에서 geoip 및 connlimit선택, connlimit의 경우 해당 Netfilter Configuration 하위 메뉴에 있는 모든 메뉴를 선택해 주어야 make상에서 오류가 발생하지 않음 -> Device Drivers -> Networking support -> Networking support -> Networking options -> Network packet filtering (replaces ipchains) -> IP: Netfilter Configuration -> [*] geoip match support

3-2 make --> 커널 버전 변동없이 geoip만 추가 할 경우는 아래의 순서로 컴파일을 진행함

     make oldconfig
     make modules
     make modules_install
3-3 make modules

3-4 make modules_install

3-5 make install

 


4. 국가 DB 최신 정보로 업데이트

geoip 모듈은 /var/geoip 경로의 DB파일 참조함
- CSV 파일 변환 wget http://people.netfilter.org/peejix/geoip/tools/csv2bin-20041103.tar.gz tar zxfp csv2bin-20041103.tar.gz cd csv2bin make


- 국가별 DB 다운로드 wget http://www.maxmind.com/download/geoip/database/GeoIPCountryCSV.zip unzip GeoIPCountryCSV.zip ./csv2bin ../GeoIPCountryWhois.csv mkdir /var/geoip cp geoipdb.bin /var/geoip/ cp geoipdb.idx /var/geoip/

cp /usr/src/iptables/iptables /sbin -> iptables 소스파일의 iptables를 /sbin으로 복사


5. IPTABLES geoip 룰 적용

  예제)
  - 일본과 미국에서의 웹 접속을 차단하고 다른 곳에서의 접속은 허용할 때
  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 ACCEPT
  iptables -A INPUT -p tcp --dport 21 -j DROP
  또는 iptables -A INPUT -p tcp --dport 21 -m geoip ! --src-cc KR -j DROP


List of Articles
번호 제목 글쓴이 날짜 조회 수
28 파일 퍼미션 설정을 통한 로컬 공격 방지 l2zeo 2010.03.08 8168
27 LINUX 해킹당했을 때 대처요령 l2zeo 2010.03.08 8731
26 iptables 리눅스? NETFILTER관련 1 l2zeo 2010.03.08 10122
25 해킹이 의심될 때 사용되는 명령어들 l2zeo 2010.03.08 9864
24 Cisco/Tip/라우터,스위치에서 패킷 캡쳐하기 file l2zeo 2010.03.23 16126
23 리눅스 - iptables NAT rule ADMINPLAY 2010.03.24 9669
22 안티 루트킷 사용 예 l2zeo 2010.03.28 11573
21 리눅스 보안 - 권한설정에 주의해야할 명령어들은 ? l2zeo 2010.03.31 27743
20 매직키를 이용한 응급복구법 l2zeo 2010.03.31 32083
19 /etc/passwd 구조 l2zeo 2010.03.31 34919
18 보안 체킹 프로그램 - portsentry file ADMINPLAY 2010.04.27 16167
17 [적용] iptables 접속 차단 스크립트 ADMINPLAY 2010.05.03 25645
16 해킹 당했는지 알아보는 방법 ADMINPLAY 2010.05.03 19977
15 php.ini 보안 설정 ADMINPLAY 2010.05.03 20373
14 웹어플리케이션 보안 ADMINPLAY 2010.05.03 17148
13 denyhosts (ssh, ftp 등의 접근 차단) ADMINPLAY 2010.05.03 21359
12 php 수호신 설치 ADMINPLAY 2010.05.03 20824
11 PHP 보안관련 설정 권고사항 ADMINPLAY 2010.05.19 20208
10 iptables를 이용한 SSH brute force 공격방어 l2zeo 2010.05.29 19687
9 modsecurity-2.5 configure: *** apr library not found. ADMINPLAY 2010.09.12 21132
Board Pagination Prev 1 2 3 4 5 Next
/ 5

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234