Gente, llevo días luchando con shorewall. El problema es que si bien puedo
abrir y cerrar puertos perfectamente no he podido hacer dnat a mi ftp ni a
nada de nada. Les dejo la data de mi configuraciòn y las cosas que ya he
descartado:

-Tengo  dos placas de red, una a la red local (eth0) y otra al modem adsl
(eth1); pero la que sale es internet es ppp0 que sale a traves de eth1... se
me ocurré que el conflicto puede venir de ahi pero no se...

-Mi configuración de shorewall:

/etc/shorewall/zones:
fw    firewall
net    ipv4
loc    ipv4
road    ipv4

/etc/shorewall/interfaces
net     ppp+            -            routefilter,routeback,norfc1918
loc    eth0            detect          routefilter
road    tun+            detect          routeback

/etc/shorewall/masq
ppp+            eth0

/etc/shorewall/policy
loc        net        ACCEPT
loc        $FW        ACCEPT        info
road            loc             ACCEPT
loc             all             REJECT          info
$FW        net        ACCEPT        info
$FW        loc        REJECT        info
$FW        all        REJECT        info
net        $FW        DROP        info
net        loc        DROP        info
net        all        DROP        info
all        all        REJECT        info

/etc/shorewall/rules
SECTION NEW
DNS/ACCEPT    $FW        net
SSH/ACCEPT    loc        $FW
SSH/ACCEPT    $FW        net
Ping/ACCEPT    loc        $FW
DNAT                net        loc:10.39.1.99:3389    tcp    3389
#FTP/DNAT         net        loc:10.39.1.100
#ACCEPT+        net        $FW                          tcp    21
DNAT               net        loc:10.39.1.100:21       tcp    21


- Aquì hago una iptables -t nat -L:

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination
net_dnat   all  --  anywhere             anywhere

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
ppp_masq   all  --  anywhere             anywhere

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Chain net_dnat (1 references)
target     prot opt source               destination
DNAT       tcp  --  anywhere             anywhere            tcp dpt:3389
to:10.39.1.99:3389
DNAT       tcp  --  anywhere             anywhere            tcp dpt:ftp
to:10.39.1.100

Chain ppp_masq (1 references)
target     prot opt source               destination
MASQUERADE  all  --  10.39.0.0/16         anywhere


-Uso debian Lenny

-Esto tira el log cuando quiero conectarme desde un ip externa al firewall
de mi red esperando que me responda el puerto 21 de una pc de mi red local:
May 25 01:45:02 backnet kernel: [181822.927737]
Shorewall:net2fw:DROP:IN=ppp0 OUT= MAC= SRC=200.145.214.213 DST=200.13.17.43
LEN=60 TOS=0x00 PREC=0x00 TTL=49 ID=14917 DF PROTO=TCP SPT=38528 DPT=21
WINDOW=5840 RES=0x00 SYN URGP=0

-Ya probé la opcion para pppoe CLAMPMSS=Yes, IP_FORWARDING=Yes, en el
shorewall.conf; como dije anda todo menos el dnat. Tambien probé de
actualizar a la version 4.2 que es una versión estable mas nueva que la que
trae debian en sus repos. Alguien tiene idea?

Desde ya graciass y mas gracias y perdon por lo largo.

P.D.: LA expo fue genial!!!!

-- 
David Avila

Responder a