운영중입니다

geoip 설치 및 사용 방법2_1 (CentOS7) 본문

리눅스보안

geoip 설치 및 사용 방법2_1 (CentOS7)

https443 2025. 7. 18. 12:10

https://https443.tistory.com/13

 

geoip 설치 및 사용 방법 (CentOS5)

https://https443.tistory.com/11 oops-firewall 설치 및 사용 방법✅ oops-firewall 이란? oops-firewall은 IPTABLES 기반의 리눅스 방화벽 설정을 손쉽게 구성할 수 있도록 도와주는 경량형 방화벽 관리 스크립트텍스

https443.tistory.com

 

이전 내용에 다룬 CentOS5 버전과 약간의 차이가 있어 추가 작성.


CentOS7, Apache 사용 기준


1. 설치 방법

#0. 시스템 초기 설정 - 필수 업데이트 및 저장소 추가
yum update 
# 초기 서버에서는 사용, 실 사용 중인 서버에서는 사용x

#1. EPEL 저장소 설치 (GeoIP 패키지 사용 위해 필요)
yum install epel-release -y

#2. GeoIP 패키지 및 Apache용 모듈 설치
yum install geoip geoip-devel mod_geoip -y


위 단계까지 진행하면 geoiplookup <IP> 명령어로 국가(Country) 정보 조회가 가능

그러나 GeoIPCity.dat, GeoIPASNum.dat 파일이 없으면 도시(City)AS 번호(ASN) 조회는 불가

 

CentOS5의 경우 패키지 설치 후 조회시 City, ASNum 까지 확인 가능
CentOS7의 경우 패키지 설치 후 조회시 Country 만 확인 가능

 

* GeoIP 데이터 구성 비교 테이블

항목설명예시제공 데이터 (대표 필드)주요 사용처
Country IP 주소가 속한 국가 정보 KR, US, JP country_iso_code, geoname_id 국가 차단, 방문자 위치 추정
City IP 주소가 속한 도시 정보 (좌표 포함) Seoul, Tokyo city_name, latitude, longitude, postal_code 위치 기반 서비스, 광고 타게팅
ASNum
(Autonomous System Number)
IP 주소가 속한 네트워크 소유자 정보 (인터넷 사업자 등) AS9318 (SKB), AS15169 (Google) autonomous_system_number, autonomous_system_organization 트래픽 분석, 보안, 통신사 정보 파악

 

*   GeoIPASNum.dat, GeoIPCity.dat 파일이 있어야 City, ASNum 조회가 가능하나 현재는 해당 파일을 내려 받기가 불가능.
아래 내용은 .dat 파일들이 이미 존재한다는 가정하에 작성


2. iptables 확장을 위한 환경 구성 (선택 사항)

#1. 유틸리티 및 컴파일 도구 설치

yum install gcc vim wget perl perl-CPAN iptables-devel git unzip perl-Text-CSV_XS -y

#2. 현재 커널에 맞는 헤더 설치 (커널 모듈 빌드용)

uname -r                             # 현재 커널 버전 확인
yum install kernel-devel-$(uname -r) -y

#3. Perl CPAN 모듈 설치

perl -MCPAN -e shell
cpan[1]> install NetAddr::IP
cpan[2]> install Getopt::Long
exit

현재 커널에 맞는 커널 헤더 (모듈 빌드용) 확인 및 설치
Perl CPAN 모듈 설치_1

 

Perl CPAN 모듈 설치_2

 

Perl CPAN 모듈 설치_3

3. xtables-addons 설치 (iptables에서 GeoIP match 기능 사용 가능)

cd /usr/local/src/
wget https://inai.de/files/xtables-addons/xtables-addons-2.15.tar.xz
tar xvf xtables-addons-2.15.tar.xz
cd xtables-addons-2.15

# TARPIT 등 원하지 않으면 주석처리
vi mconfig
#build_TARPIT=m   ← 주석 처리

./configure
make -j && make install