Não é possível conseguir encaminhar portas com o Iptables

2

Na minha máquina "roteador" eu tenho o seguinte /etc/network/interfaces :

# The loopback network interface
auto lo eth0 eth1 eth2 eth3
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

# Subred 1
iface eth1 inet static
    address 192.168.10.1
    netmask 255.255.255.0

# Subred 2 (dhcp)
iface eth2 inet static
    address 192.168.20.1
    netmask 255.255.255.0

# Host-only
iface eth3 inet static
    address 192.168.56.10
    netmask 255.255.255.0
    broadcast 192.168.56.255

Em ~/.bashrc (pelo menos por enquanto, mais tarde poderia estar em /etc/network/interfaces ):

iptables -F
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A PREROUTING -p tcp -i eth0 --dport 80 -j DNAT --to-destination 192.168.10.20:80
iptables -t nat -A PREROUTING -p tcp -i eth0 --dport 22 -j DNAT --to-destination 192.168.20.46:22
iptables -A FORWARD -i eth0 -p tcp --dport 80 -d 192.168.10.20 -j ACCEPT
iptables -A FORWARD -i eth0 -p tcp --dport 22 -d 192.168.30.50 -j ACCEPT

E iptables -t nat-L me dá:

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
DNAT       tcp  --  anywhere             anywhere             tcp dpt:http to:192.168.10.20:80
DNAT       tcp  --  anywhere             anywhere             tcp dpt:ssh to:192.168.20.46:22

Ainda assim, não posso conectar-me ao servidor Web em 192.168.10.20 nem ao servidor ssh em 192.168.30.50 de fora da sub-rede. De dentro não há problema.

    
por MJ Galram 06.06.2015 / 08:31

1 resposta

3

Eu estava tentando todo esse tempo se conectar via eth3 e não havia redirecionado o tráfego a partir dele, apenas de eth0 . Um erro estúpido que levou dias para resolver ...

    
por MJ Galram 06.06.2015 / 16:01