poznámka · sítě

Přesměrování portů na firewallu přes NAT

Když má být služba běžící na privátní adrese dostupná z internetu, řeší se to přesměrováním portu na firewallu přes NAT.

Příklad: port 8080 veřejné IP vede na webový server 192.168.1.10:80.

  • Přepsat cíl příchozího spojení v tabulce nat:
iptables -t nat -A PREROUTING -i $WAN -p tcp --dport 8080 -j DNAT --to-destination 192.168.1.10:80
  • Ve FORWARD povolit nové spojení jen na přesměrovanou službu a navázaný provoz, ostatní nová příchozí spojení z vnějšího rozhraní zahodit. Pořadí pravidel je důležité – povolení musí stát před zahozením:
iptables -A FORWARD -i $WAN -p tcp -d 192.168.1.10 --dport 80 -m conntrack --ctstate NEW -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i $WAN -m conntrack --ctstate NEW -j DROP

Návratový provoz vlastní pravidlo v POSTROUTING nepotřebuje: odpověď přeloží zpět sledování spojení (conntrack). POSTROUTING s MASQUERADE je potřeba jen pro odchozí provoz z vnitřní sítě do internetu.

Z internetu je dostupná jen konkrétní služba na privátní IP; zbytek zůstává za firewallem.

_Původně publikováno v květnu 2010._

publikováno 05/2010aktualizováno 10/2026 tagy: iptables · nat · firewall sítě →

← zpět na Objevuj