Eu configurei um tproxy transparente do squid . Tudo funciona bem.
Agora eu preciso que todo o tráfego que vai para um IP externo (internet) não passe pelo proxy.
Preciso modificar as regras do iptables, ebetables ou alterar a configuração do squid?
Eu encontrei este tutorial , mas ele não usa as regras do tproxy.
Regras do iptables:
iptables -F -t mangle
iptables -X -t mangle
iptables -t mangle -N DIVERT
iptables -t mangle -A PREROUTING -p tcp -m socket -j DIVERT
iptables -t mangle -A DIVERT -j MARK --set-mark 1
iptables -t mangle -A DIVERT -j ACCEPT
iptables -t mangle -A PREROUTING -p tcp --dport 80 -j TPROXY --tproxy-mark 0x1/0x1 --on-port 3129
regras ebtables:
ebtables -t broute -A BROUTING -i eth1 -p ipv4 --ip-proto tcp --ip-dport 80 -j redirect --redirect-target DROP
ebtables -t broute -A BROUTING -i eth0 -p ipv4 --ip-proto tcp --ip-sport 80 -j redirect --redirect-target DROP
Parece que eu preciso inserir as regras de desvio antes da primeira regra de ebtables. Isso está correto?
Estas regras funcionam?
ebtables -t broute -A BROUTING -i eth1 -p ipv4 --ip-proto -d IP_dest -j ACCEPT
ebtables -t broute -A BROUTING -i eth0 -p ipv4 --ip-proto -s IP_dest -j ACCEPT