Verejna IP adresa

<small>Z PVwiki</small>

Firewall je možno sestavit různými způsoby, ale cílem je vždy chránit síť/uživatele před nechtěným přístupem zvenčí a neautorizovaným přístupem zevnitř sítě ven, tzn. stanovit pravidla komunikace mezi dvema sítěmi. Jednou z možností, jak firewall sestavit, je použít soubor příkazů iptables, který správně směruje, zahazuje či odmítá datagramy s ohledem na použitý protokol, rozhraní, zdroj, cíl atd. Jednou z věcí, kterou je občas potřeba na firewallu nastavit, je zřízení veřejné IP adresy pro zařízení uvnitř sítě. Zde je příklad sestavení pravidel nad iptables.


#IP adresy verejneho rozhrani WAN

INET_IP="62.209.21.16" INET_IFACE="eth1"


# IP a broadcast adresa a rozhrani vnitrni site

LAN1_IP="10.133.245.3/29" LAN1_BCAST="10.133.245.7/29" LAN1_IFACE="eth0"



Pak nastavení public IP ve firewallu v prislusnych blocich:

  1. ifconfig eth1:5 62.209.21.24 netmask 255.255.255.255 broadcast 62.209.21.24

  2. IP_DKUBA="10.133.67.145"

  3. SNAT_DKUBA="62.209.21.24"

  4. $IPTABLES -t nat -A PREROUTING -d $SNAT_DKUBA -j DNAT --to $IP_DKUBA

  5. $IPTABLES -t nat -A POSTROUTING -s $IP_DKUBA -o $INET_IFACE -j SNAT --to $SNAT_DKUBA

  6. $IPTABLES -A FORWARD -i $INET_IFACE -o $LAN1_IFACE -d $IP_DKUBA -j ACCEPT



Popis:

  1. definujeme veřejnou adresu na veřejném rozhraní WAN

  2. definujeme proměnnou - LAN adresu uživatele

  3. definujeme proměnnou - veřejnou IP adresu uživatele

  4. definujeme NAT v příchzím směru (z veřejné adresy pošli na LAN adresu )

  5. definujeme NAT v odchozím směru (z LAN adresy se prezentuj navenek veřejnou adresou )

  6. povolíme přeposílání dat z veřejného rozhraní (eth1) přes LAN rozhraní (eth0) pro cílovou LAN adresu uživatele (10.133.67.145)



Náš firewall se ale startuje se strojem, proto pravidla zadat rucne z prikazove radky. Do doby do restartu stroje se uplatni rucne zadana pravidla, po restartu se natahnou z firewallu. Promenne nahradit realnymi udaji:


ifconfig eth1:4 62.209.21.24 netmask 255.255.255.255 broadcast 62.209.21.24

iptables -t nat -A PREROUTING -d 62.209.21.24 -j DNAT --to 10.133.67.145

iptables -t nat -A POSTROUTING -s 10.133.67.145 -o eth1 -j SNAT --to 62.209.21.24

iptables -A FORWARD -i eth1 -o eth0 -d 10.133.67.145 -j ACCEPT


Protože však některé služby (bind, quagga) špatně snáší nebo rovnou nerozdýchají online změnu IP, je třeba na závěr dotčené důležité služby restartovat:

  • v případě přidání IP na virtuál stačí jen bind: /etc/init.d/bind restart
  • v případě změny IP na iface je nutný i restart zebry (ono to neumře hned!): /etc/init.d/zebra restart (gentoo) nebo /etc/init.d/quagga restart (debian)
Osobní nástroje