NO LOGRO REDIRECCIONAR DNAT IPTABLES

Arturo Mardones arturo.mardones en coretech.cl
Lun Dic 27 09:15:26 CLST 2004


fernando villarroel wrote:

>Hola el asunto es el siguiente necesito redireccionar
>las peticiones al puerto 3306 (MySQL) a un pc de la
>LAN 192.168.1.4 que corre MySQL sobre un Win 98, El
>servidor donde tengo el firewall es un Debian y su
>Firewall es el siguiente:
>
>#!/bin/sh
>
>iptables -F
>iptables -X
>iptables -Z
>iptables -t nat -F
>
>iptables -F INPUT
>iptables -P INPUT DROP
>iptables -F OUTPUT
>iptables -P OUTPUT ACCEPT
>iptables -F FORWARD
>iptables -P FORWARD DROP
>iptables -t nat -P PREROUTING ACCEPT
>iptables -t nat -P POSTROUTING ACCEPT
>
>
>### Creamos chains de estado
>/sbin/iptables -N allowed-connection
>/sbin/iptables -F allowed-connection
>/sbin/iptables -A allowed-connection -m state --state
>ESTABLISHED,RELATED -j ACCEPT
>/sbin/iptables -A allowed-connection -m state --state
>NEW -i ppp0 -p tcp --dport 3306 -j ACCEPT
>/sbin/iptables -A allowed-connection -i ppp0 -p tcp -m
>state --state NEW --dport www -j ACCEPT
>/sbin/iptables -A allowed-connection -i ppp0 -p tcp -m
>state --state NEW --dport smtp -j ACCEPT
>/sbin/iptables -A allowed-connection -i eth1 -p tcp -m
>state --state NEW --dport 995 -j ACCEPT
>
>
>
>#Trafico que entra
>/sbin/iptables -N allow-ssh-traffic-in
>/sbin/iptables -F allow-ssh-traffic-in
>/sbin/iptables -A allow-ssh-traffic-in -i ppp0 -p tcp
>-m state --state NEW --dport ssh -j ACCEPT
>/sbin/iptables -A allow-ssh-traffic-in -p tcp --sport
>ssh -j ACCEPT
>
> ### Tráfico que sale
>/sbin/iptables -N allow-ssh-traffic-out
>/sbin/iptables -F allow-ssh-traffic-out
>/sbin/iptables -A allow-ssh-traffic-out -p tcp --dport
>ssh -j ACCEPT
>/sbin/iptables -A OUTPUT -m state --state NEW -o ppp0
>-p TCP --dport 25 -j ACCEPT
>
>
>/sbin/iptables -A INPUT -i ppp0 -p ICMP --icmp-type 8
>-j DROP
>
>/sbin/iptables -A INPUT -i lo -j ACCEPT
>/sbin/iptables -A INPUT -s 192.168.1.0/24 -i eth1 -j
>ACCEPT
>/sbin/iptables -A INPUT -s 192.168.0.0/16 -i vpn -j
>ACCEPT
>
>
>/sbin/iptables  -A INPUT -i ppp0 -p tcp --dport 655 -j
>ACCEPT
>/sbin/iptables  -A INPUT -i ppp0 -p udp --dport 655 -j
>ACCEPT
>
>/sbin/iptables -A INPUT -j allow-ssh-traffic-in
>/sbin/iptables -A INPUT -j allowed-connection
>/sbin/iptables -A INPUT -s 0.0.0.0  -i ppp0 -p tcp 
>--dport 5432 -j DROP
>/sbin/iptables -A INPUT -s 0.0.0.0  -i ppp0 -p udp 
>--dport 5432 -j DROP
>/sbin/iptables -A INPUT -p TCP -m state --state NEW !
>--syn -j DROP
>/sbin/iptables -A INPUT -j LOG --log-prefix
>"[iptables-test]"
>
>echo "...VPN"
>
>/sbin/iptables -A FORWARD -i ppp0 -o eth1 -d
>192.168.1.0/24 -j ACCEPT
>/sbin/iptables -A FORWARD -i eth1 -o ppp0 -s
>192.168.1.0/24 -j ACCEPT
>/sbin/iptables -A FORWARD -i vpn -o eth1 -s
>192.168.0.0/16 -d 192.168.1.0/24 -j ACCEPT
>/sbin/iptables -A FORWARD -i eth1 -o vpn -s
>192.168.1.0/24 -d 192.168.0.0/16 -j ACCEPT
>
>echo  "...hecho"
>
>/sbin/iptables -A FORWARD -o lo -j ACCEPT
>#/sbin/iptables -A FORWARD -j allow-ssh-traffic-in
>#/sbin/iptables -A FORWARD -j allowed-connection
>/sbin/iptables -A FORWARD -i eth1 -j ACCEPT
>/sbin/iptables -A FORWARD -i ppp0 -d 192.168.1.0/24 -j
>ACCEPT
>
>
>echo 1 > /proc/sys/net/ipv4/ip_forward
>/sbin/iptables -t nat -A POSTROUTING -s 192.168.1.0/24
>-o ppp0 -j MASQUERADE
>/sbin/iptables -t nat -A PREROUTING -s 0.0.0.0/0 -p
>tcp --dport 3306 -j DNAT --to-destination
>192.168.1.4:3306
>
>
>Les doy la tabla nat
>
>Chain PREROUTING (policy ACCEPT)
>target     prot opt source               destination
>DNAT       tcp  --  anywhere             anywhere     
>     tcp dpt:www to:192.168.1.4:3306
>
>Chain POSTROUTING (policy ACCEPT)
>target     prot opt source               destination
>MASQUERADE  all  --  192.168.1.0/24       anywhere
>
>Chain OUTPUT (policy ACCEPT)
>target     prot opt source               destination
>
>El problema es que no se por que no me lo redirecciona
>al pc 192.168.1.4.
>
>
>	
>	
>		
>______________________________________________ 
>Renovamos el Correo Yahoo!: ¡250 MB GRATIS! 
>Nuevos servicios, más seguridad 
>http://correo.yahoo.es
>  
>
Hola,

Oye en www.pello.info existen dos manuales de iptables bien buenos, uno 
es algo como iptables en 21 segundos y el otro es mucho mas completo, 
tiene scripts bastante buenos y explica harto el tipo.  tambien, en 
http://iptables-tutorial.frozentux.net/ tienes un realmente completo...

espero te sirvan!

saludos,

Arturo


Más información sobre la lista de distribución Linux