질문&답변
클라우드/리눅스에 관한 질문과 답변을 주고 받는 곳입니다.
리눅스 분류

Transparent Bridge-Proxy Mode 를 위한 brctl 과 ebtables & iptables 활용 방법

작성자 정보

  • 결명자 작성
  • 작성일

컨텐츠 정보

본문

안녕하세요~~ 홍석범님

소스로 된 웹방화벽을 Transparent Bridge-Proxy 형태로 구축해보려고 책에서 알려주신대로 브릿지 구성은 brctl 유틸리티를 이용해서 설정해 봤는데요,

(CentOS 5.3 커널 모듈은 2.6.18-128 버전이고, menuconfig 에서 802.1d 옵션 (*)과 Ebtables 지원모드(M)를 모두 활성화한 기본값으로 두었습니다.)

#brctl addbr br0
#brctl stp br0 on
#brctl addif br0 eth1
#brctl addif br0 eth2

#ifconfig eth1 promisc up
#ifconfig eth2 promisc up
#ifconfig br0 promisc up

이더넷 카드는 총 3개가 있는데, 하나(eth0)는 관리모드로 두고 나머지 두 개(eth1,eth2)는 아이피없이 브리지 구성을 하였습니다.

여기까진 설정이 잘 되었는데, 80 포트로 들어오는 패킷을 내부에서 분석하도록 하려고 나름대로 
ebtables 와 iptables 을 이용하였습니다.

#ebtables -t broute -A BROUTING -p ipv4 --ip-protocol 6 --ip-destination-port 80 -j redirecting --redirect-target ACCEPT

#iptables -r nat -A PREROUTING -i br0 -p tcp --dport 80 -j REDIRECT --to-port 80
또는
#iptables -r nat -A PREROUTING -i br0 -p tcp --dport 80 -j REDIRECT --to 127.0.0.1:80


위와 같이 설정하였는데, 브리지되던 80 포트 패킷이 내부서버의 아파치 데몬까지는 도달하지 않네요.ㅠ.ㅠ iptables 두번째 줄의 경우엔 iptables -t nat -nL 로 보면 맨 끝부분이 127까지만 보이는더군요...(옵션의 설정문제인지...ㅠ.ㅠ)

설정에 문제가 있을까요..? 저는 홍석범님께서 말씀하신 route add -host 127.0.0.1 dev lo 를 설정하지 않았는데, 그게 문제의 원인일까요..ㅠ.ㅠ

80포트를 제외한 나머지는 그냥 통과시키고, 80포트만 뽑아서 분석한 후 다시 내보내는 inline 방식을 구성하고 싶습니다.   

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,138 명
  • 현재 강좌수 :  36,196 개
  • 현재 접속자 :  717 명