port forward com iptables e debian [closed]

1

Eu tenho um lan, um servidor e uma VM

lan: 192.168.50.0/24
linux server: 192.168.50.3
linux VM guest: 192.168.50.1 (with apache)

Eu quero que o servidor linux redirecione todos os pedidos do lan e da porta 80 para 192.168.50.1:80

Eu uso isso sem resultados: - /

iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j DNAT --to-destination 192.168.50.1:80
iptables -A FORWARD -p tcp -d 192.168.50.1 --dport 80 -j ACCEPT
iptables -A POSTROUTING -t nat -s 192.168.50.1 -o eth0 -j MASQUERADE

ip_forward is 1
    
por Pol Hallen 18.12.2016 / 12:17

1 resposta

2

Na sua configuração, o encaminhamento de porta normalmente não é necessário. (Há um número muito pequeno de situações que exigem o que é conhecido como NAT Hairpin, onde NAT é usado internamente, mas isso não parece ser o caso do que você descreveu)

O encaminhamento de porta é usado quando os hosts internos, não roteáveis globalmente (RFC1918) compartilham um número limitado (geralmente apenas um) endereço IP roteável publicamente (conhecido como não-RFC1918). Native Address Translation, NAT (aka Masquerading) é usado para fazer este trabalho. Seu prefixo de endereço, 192.168.x.x é parte do RFC1918.

O encaminhamento de porta é usado na sutalização em que os clientes na Internet pública precisam acessar os hosts por trás do NAT por meio de um firewall.

No seu caso, todos os seus hosts são RFC1918 e estão na mesma rede, portanto, NAT não é necessário. Você só precisa configurar corretamente a rede IP.

As regras PREROUTING e POSTROUTING na tabela NAT são para tradução de endereço nativo, que você não precisa.

Supondo que você tenha a VM configurada como uma ponte e sua topologia de rede esteja correta, seus hosts compartilham a mesma LAN do IPV4 (192.168.50.0/24). Por causa disso, não há necessidade de ter um roteador em seu sistema, portanto, a regra FORWARD não é necessária. As regras de encaminhamento só fazem sentido em um roteador em que o encaminhamento de IP está ativado.

A menos que você tenha desconfigurado sua rede, ou tenha omitido informações da sua pergunta, a resposta simples é que todos os seus clientes no intervalo de IP 192.168.50.2 a 192.168.50.254 devem ser capazes de acessar 192.168.50.1 sem qualquer necessidade de envolver iptables .

    
por 18.12.2016 / 14:34