-
Verifiquei a regra cfe pediu com iptables-save:
Aparentemente a regra foi carregada sem problemas.
:PREROUTING ACCEPT [449455:40656649]
:POSTROUTING ACCEPT [626638:40122780]
:OUTPUT ACCEPT [617898:39603173]
-A PREROUTING -d 200.X.X.X -p tcp -m tcp --dport 8000 -j DNAT --to-destination 192.168.1.2:80
-A POSTROUTING -d 192.168.1.2 -p tcp -m tcp --sport 80 -j SNAT --to-source 10.1.1.2:8000
COMMIT
# Completed on Tue Nov 11 13:01:07 2008
- Abaixo segue parte de meu script de firewall 'rc.firewall' com as demais regras...
------------------
#!/bin/bash
#============================
# [ - INPUT ]
#============================
# - PERMITE RETORNO DE CONEXOES JA ESTABELECIDAS
$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# - PROTECAO CONTRA ATAQUES/PACOTES INVALIDOS
$IPTABLES -A INPUT -p tcp -m state --state NEW ! --syn -j DROP
$IPTABLES -A INPUT -m state --state INVALID -j DROP
# - BLOCK TCP SYNFLOODS
$IPTABLES -A INPUT -p tcp -m tcp --tcp-flags ALL FIN,URG,PSH -j DROP
$IPTABLES -A INPUT -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -j DROP
$IPTABLES -A INPUT -p tcp -m tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
$IPTABLES -A INPUT -p tcp -m tcp --tcp-flags ALL NONE -j DROP
$IPTABLES -A INPUT -p tcp -m tcp --sport 0 --tcp-flags FIN,SYN,RST,ACK SYN -j DROP
# - BLOCK BROADCAST AND MULTICAST PACKETS
$IPTABLES -A INPUT -m pkttype --pkt-type broadcast -j DROP
$IPTABLES -A INPUT -m pkttype --pkt-type multicast -j DROP
# - DEFINE ACESSO A INTERFACE LO
$IPTABLES -A INPUT -i lo -j ACCEPT
# - BLOQUEIO BRUTE FORCE [SSH]
$IPTABLES -A INPUT -i eth0 -p tcp --dport 22000 --tcp-flags SYN,RST,ACK SYN -m recent --set --name SSH
$IPTABLES -A INPUT -i eth0 -p tcp --dport 22000 --tcp-flags SYN,RST,ACK SYN -m recent --update --seconds 120 --hitcount 3 --name SSH -j REJECT
# - PERMITE ACESSO EXT AOS SERVICOS [FTP-DATA-SMTP-DNS-WWW-POP3-IDENT-IMAP-SSL-MYSQL-SSH ]
$IPTABLES -A INPUT -p tcp -m multiport --dports 20,21,25,53,80,110,113,143,443,3306,22000 -j ACCEPT
# - DNS [ BIND ]
$IPTABLES -A INPUT -p tcp -m tcp --sport 53 -j ACCEPT
$IPTABLES -A INPUT -p udp -m udp --dport 53 -j ACCEPT
$IPTABLES -A INPUT -p udp -m udp --sport 53 -j ACCEPT
# - LIBERA ACESSO LOCALNET AO PROXY [ SQUID ]
$IPTABLES -A INPUT -s $LOCALNET -p tcp -m tcp --dport 3128 -j ACCEPT
# - SAMBA
$IPTABLES -A INPUT -s $LOCALNET -p tcp -m tcp --dport 445 -j ACCEPT
# - NTOP
$IPTABLES -A INPUT -s $LOCALNET -p udp -m udp --dport 445 -j ACCEPT
#$IPTABLES -A INPUT -p tcp -m tcp --dport 3000 -j ACCEPT
# - OPENFIRE INSTANT MESSENGER
#$IPTABLES -A INPUT -p tcp -m tcp --dport 5222 -j ACCEPT #client
#$IPTABLES -A INPUT -p tcp -m tcp --dport 5223 -j ACCEPT #ssl
#$IPTABLES -A INPUT -p tcp -m tcp --dport 5269 -j ACCEPT #servidor a servidor
#$IPTABLES -A INPUT -p tcp -m tcp --dport 5275 -j ACCEPT #componente
#$IPTABLES -A INPUT -p tcp -m tcp --dport 7777 -j ACCEPT #trans. arq.
#$IPTABLES -A INPUT -p tcp -m tcp --sport 7777 -j ACCEPT #trans. arq.
#$IPTABLES -A INPUT -p tcp -m tcp --dport 9090 -j ACCEPT #admin
#$IPTABLES -A INPUT -p tcp -m tcp --dport 9091 -j ACCEPT #admin segura
# - OPENVPN [ CADA PORTA CORRESPONDE A UM TÚNEL ]
$IPTABLES -A INPUT -p udp -m udp --dport 5000 -j ACCEPT
$IPTABLES -A INPUT -p udp -m udp --sport 5000 -j ACCEPT
$IPTABLES -A INPUT -p udp -m udp --dport 5001 -j ACCEPT
$IPTABLES -A INPUT -p udp -m udp --sport 5001 -j ACCEPT
# - PERMITE QUE PACOTES VINDO DE UMA INTERFACE
# TUN/TAP ENTREM NA REDE - [ OPENVPN ]
$IPTABLES -A INPUT -i tun+ -j ACCEPT
$IPTABLES -A FORWARD -i tun+ -j ACCEPT
$IPTABLES -A INPUT -i tap+ -j ACCEPT
$IPTABLES -A FORWARD -i tap+ -j ACCEPT
# - LIBERA PACOTES ICMP PARA MTR [ TRACEROUTE ]
$IPTABLES -A INPUT -p icmp --icmp-type 0 -j ACCEPT
$IPTABLES -A INPUT -p icmp --icmp-type 8 -m limit --limit 1/second -j ACCEPT
$IPTABLES -A INPUT -p icmp --icmp-type 11 -j ACCEPT
$IPTABLES -A INPUT -p icmp --icmp-type 12 -j ACCEPT
#============================
# [ - FORWARD ]
#============================
# - PERMITE RETORNO DE CONEXOES ESTABELECIDAS [ NAT-DNAT-SNAT ]
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# - BLOQUEIO DE PACOTES INVALIDOS
$IPTABLES -A FORWARD -m state --state INVALID -j DROP
# - IMPEDE QUE PACOTES OBTENHAM INFORMACOES DA REDE INTERNA
$IPTABLES -A FORWARD --protocol tcp --tcp-flags ALL SYN,ACK -j DROP
# - CRAFTED PACKETS
$IPTABLES -A FORWARD -p tcp -m tcp --tcp-flags ALL FIN,URG,PSH -j DROP
$IPTABLES -A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -j DROP
$IPTABLES -A FORWARD -p tcp -m tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
$IPTABLES -A FORWARD -p tcp -m tcp --tcp-flags ALL NONE -j DROP
$IPTABLES -A FORWARD -p tcp -m tcp --sport 0 --tcp-flags FIN,SYN,RST,ACK SYN -j DROP
# - BLOCK BROADCAST AND MULTICAST PACKETS
$IPTABLES -A FORWARD -m pkttype --pkt-type broadcast -j DROP
$IPTABLES -A FORWARD -m pkttype --pkt-type multicast -j DROP
# - ACESSO A SERVIDORES DE NOMES EXTERNOS
$IPTABLES -A FORWARD -s $LOCALNET -p udp -m udp --dport 53 -j ACCEPT
$IPTABLES -A FORWARD -s $LOCALNET -p tcp -m tcp --dport 53 -j ACCEPT
# - SSL [PORTA 443]
$IPTABLES -A FORWARD -p tcp -m tcp --dport 443 -j ACCEPT
$IPTABLES -A FORWARD -p tcp -m tcp --sport 443 -j ACCEPT
# - PERMITE ACESSO DA LAN A SERVIDORES WWW
$IPTABLES -A FORWARD -s $LOCALNET -p tcp -m tcp --dport 80 -j ACCEPT
$IPTABLES -A FORWARD -p tcp -m tcp -d $LOCALNET --sport 80 -j ACCEPT
# - PERMITE ACESSO A SERVICOS DE MAIL EXTERNOS
$IPTABLES -A FORWARD -s $LOCALNET -p tcp -m multiport --dports 25,110 -j ACCEPT
# - DEFINE ACESSO EXTERNO A TS - TERMINAL SERVICES
$IPTABLES -A FORWARD -s $LOCALNET -p tcp -m tcp --dport 3389 -j ACCEPT
$IPTABLES -A FORWARD -s $LOCALNET -d $CONECTSOCIAL -j ACCEPT
# - RECEITANET
$IPTABLES -A FORWARD -s $LOCALNET -p tcp -m tcp --dport 3456 -j ACCEPT
# - RAISNET
$IPTABLES -A FORWARD -s $LOCALNET -p tcp -m tcp --dport 3007 -j ACCEPT
# - CAT
$IPTABLES -A FORWARD -s $LOCALNET -p tcp -m tcp --dport 5017 -j ACCEPT
# - MARINHA MERCANTE
$IPTABLES -A FORWARD -s $LOCALNET -p tcp -m tcp -d $MERCANTE --dport 1443 -j ACCEPT
# - LIBERA ICMP LOCALNET
$IPTABLES -A FORWARD -p icmp -m icmp --icmp-type 0 -j ACCEPT
$IPTABLES -A FORWARD -p icmp -m icmp --icmp-type 8 -j ACCEPT
# - ACESSO A REDIRECIONAMENTOS DE SITES + VPN-PPTP / FTP+ABIGS-FRTSOLO
$IPTABLES -A FORWARD -s $LOCALNET -p tcp -m multiport --dports 800,1723,8010,8080,21000,23000 -j ACCEPT
#============================
# [ - OUTPUT ]
#============================
# - PERMITE RETORNO DE CONEXOES ESTABELECIDAS [ STATEFUL INSPECTION ]
$IPTABLES -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# - DEF. ACESSO A LOOPBACK
$IPTABLES -A OUTPUT -o lo -j ACCEPT
# - PREC. CONTRA BUGS NA TRAD. END. REDE [ NAT ]
$IPTABLES -A OUTPUT -m state -p icmp --state INVALID -j DROP
#==============================
# [ - NAT / REDIRECIONAMENTOS ]
#==============================
# - PROXY TRANSPARENTE [!CONECTIVIDADE SOCIAL ]
$IPTABLES -t nat -A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -d ! 200.201.0.0/16 -j REDIRECT --to-port 3128
# - NAT
$IPTABLES -t nat -A POSTROUTING -s $LOCALNET -o eth0 -j SNAT --to-source $ETH0
# - REDIRECIONAMENTO DE PORTA - TS
$IPTABLES -t nat -A PREROUTING -p tcp -m tcp -d $ETH0/32 --dport 3389 -j DNAT --to $S2000:3389
$IPTABLES -A FORWARD -p tcp -m tcp -d $S2000/32 --dport 3389 -j ACCEPT
# - REDIRECIONAMENTO SSH - DEBIAN
$IPTABLES -t nat -A PREROUTING -p tcp -m tcp -d $ETH0/32 --dport 2200 -j DNAT --to $EXPRESSO:2200
$IPTABLES -A FORWARD -p tcp -m tcp -d $EXPRESSO/32 --dport 2200 -j ACCEPT
# - EXPRESSO LIVRE
$IPTABLES -t nat -A PREROUTING -p tcp -m tcp -d $ETH0/32 --dport 8000 -j DNAT --to $EXPRESSO:80
$IPTABLES -A FORWARD -p tcp -m tcp -d $EXPRESSO/32 --dport 80 -j ACCEPT
# - JABBER EXPRESSO
$IPTABLES -t nat -A PREROUTING -p tcp -m tcp -d $ETH0/32 --dport 5222 -j DNAT --to $EXPRESSO:5222
$IPTABLES -A FORWARD -p tcp -m tcp -d $EXPRESSO/32 --dport 5222 -j ACCEPT
# - JABBER EXPRESSO SSL
$IPTABLES -t nat -A PREROUTING -p tcp -m tcp -d $ETH0/32 --dport 5223 -j DNAT --to $EXPRESSO:5223
$IPTABLES -A FORWARD -p tcp -m tcp -d $EXPRESSO/32 --dport 5223 -j ACCEPT
# - ORACLE DATABASE
$IPTABLES -t nat -A PREROUTING -p tcp -m tcp -d $ETH0/32 --dport 1211 -j DNAT --to $S2000:1211
$IPTABLES -A FORWARD -p tcp -m tcp -d $S2000/32 --dport 1211 -j ACCEPT
# - REGRA QUE ESTAMOS TESTANDO
$IPTABLES -t nat -A PREROUTING -p tcp -m tcp -d 200.x.x.x --dport 8000 -j DNAT --to 192.168.1.2:80
$IPTABLES -t nat -A POSTROUTING -p tcp -m tcp -d 192.168.1.2/32 --sport 80 -j SNAT --to 200.x.x.x:8000
-
Adiciona a linha que permite o forward da porta 8000
$IPTABLES -A FORWARD -p tcp --dport 8000 -j ACCEPT
Vamos deixar ela um pouco aberta só pra testes, depois fechamos mais as regras.
A máquina de destino, que ta escutando na porta 8000, é windows ou linux? Você sabe fazer captura de pacotes??
-
Já havia feito este teste e refiz novamente..
Nao funcionou.... tá dificil viu =(
-
Se usa proxy, tente desmarcar a opção "Não usar proxy para endereços locais" no navegador
-
O proxy é transparente (via iptables)... no browser é setado nada...
Tentei varias regras e nada funcionou...
Alguém possui este tipo de redirecionamento funcionamento???