같은 상자에 iptables와 오징어가 있습니다. 필터 테이블에서 규칙을 변경할 때 HTTP 트래픽이 투명 프록시를 통과하지 않는 것 같습니다.
프록시를 통해 리디렉션되고 인터넷으로 전달될 때 http 트래픽을 필터링하는 가장 좋은 점은 무엇입니까?
토폴로지:
Internet < eth0 < eth1
eth1.10
라우팅 테이블
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.0.2.2 0.0.0.0 UG 0 0 0 eth0
10.0.2.0 * 255.255.255.0 U 0 0 0 eth0
192.168.1.0 * 255.255.255.0 U 0 0 0 eth1
192.168.10.0 * 255.255.255.0 U 0 0 0 eth1.10
netstat:
tcp 0 0 192.168.10.254:3128 0.0.0.0:* LISTEN
오징어:
http_port 192.168.10.254:3128 intercept
acl hq src 192.168.10.0/24
acl http port 80
http_access allow hq
http_access deny
NAT 테이블:
-A PREROUTING -i eth1.10 -p tcp --dport 80 -j DNAT --to-destination 192.168.10.254:3128
-A POSTROUTING -o eth0 -j MASQUERADE
필터 테이블
:INPUT ACCEPT
:FORWARD ACCEPT
:OUTPUT ACCEPT
이 방법은 기본 정책이 ACCEPT이기 때문에 작동합니다. 다음은 오징어에서 작동하지 않는 필터 규칙입니다.
필터 테이블
:INPUT DROP
:FORWARD DROP
:OUTPUT DROP
-A INPUT -s 192.168.10.0/24 -i eth1.10 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth1.10 -p udp --dport 53 -j ACCEPT
-A INPUT -i eth0 -p udp --sport 53 -j ACCEPT
-A FORWARD -i eth1.10 -o eth0 -j ACCEPT
-A FORWARD -i eth0 -o eth1.10 -j ACCEPT
-A OUTPUT -o eth1.10 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -o eth1.10 -p udp --sport 53 -j ACCEPT
-A OUTPUT -o eth0 -p udp --dport 53 -j ACCEPT
더 많은 정보가 필요하면 알려주세요. 감사합니다.