본문 바로가기
서버구축 (WEB,DB)

mod_rpaf (proxy 및 Virtual IP 이용시)

by 날으는물고기 2009. 8. 24.

mod_rpaf (proxy 및 Virtual IP 이용시)

php 함수에서 x-forwarded-for 구문을 수정하는 대신 mod_rpaf 를 이용하면
간단하게 모듈만 올림으로써 IP 추적이 가능하게 된다.

가상서버내에서 클라이언트 IP 를 정상적으로 변환시켜 주는 모듈입니다.
이 모듈을 쓰지 않으면 메인서버의 게이트웨이 IP 가 찍히게 됩니다.
이 모듈을 사용하시게 되면 아파치 로그뿐만 아니라 프로그램상에서도
정상적으로 클라이언트 IP 추적이 가능합니다.

URL: http://stderr.net/apache/rpaf/

설치방법:
# wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz
# apt-get install apache2-threaded-dev (apxs2 설치, prefork 일 경우는 apache2-prefork-dev)
# apt-get install make (필요한 경우)
# apt-get install gcc (필요한 경우)
# make rpaf-2.0 (아파치 1.3 은 make rpaf)
# make install-2.0 (아파치 1.3 은 make install)

아차피 설정파일(apache2.conf)에

LoadModule rpaf_module /usr/lib/apache2/modules/mod_rpaf-2.0.so

RPAFenable On
RPAFsethostname On
RPAFproxy_ips 10.0.0.128
RPAFheader X-Forwarded-For

추가해 줍니다. 10.0.0.128 은 가상서버 게이트웨이 IP 입니다.
아파치 로그에 찍히는 아이피로 해 주시면 됩니다.
요렇게 하시고 아파치 로그등에서 확인해 보시면 정상적으로 IP 가 찍히는 걸 확인하실 수 있습니다.

페도라에서는

# yum install httpd-devel
# apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c

물론 gcc, make 등은 설치되어 있어야 합니다. 이렇게 컴파일하고 설치까지 하시면

/etc/httpd/modules/mod_rpaf-2.0.so

파일이 생성이 됩니다.

아파치 설정은 /etc/httpd/conf/httpd.conf 파일에 아래의 설정내용대로 설정하시면 됩니다.

LoadModule rpaf_module /etc/httpd/modules/mod_rpaf-2.0.so

RPAFenable On
RPAFsethostname On
RPAFproxy_ips 10.0.0.128
RPAFheader X-Forwarded-For


출처 : http://blog.naver.com/saint7710

728x90

댓글