Portál AbcLinuxu, 10. května 2025 11:14

Dotaz: IPTABLES - DNAT na tu samou sit

9.3.2006 16:08 Scendel | blog: Linux_FreeBSD
IPTABLES - DNAT na tu samou sit
Přečteno: 1741×
Odpovědět | Admin
Dobry den,

uz se asi tyden po vecerech snazim rozbehnout nasledujici snad klasicky pripad.Mam jednu verejnou IP,pod ni lokalni sit pomoci iptables a maskarady.Uvnitr site mam webovy server a na nej pomoci DNAT presmerovany vsechny pozadavky co jdou na port 80.Vse funguje,stanice muzou na net,server je viditelny z internetu,ale bohuzel z lokalni site se na lokalni web server dostanu jen pres lokalni IP adresu.Precetl jsem a vyzkousel uz dost ruznych navodu,ale stejne se mi porad nedari.Na strankach IPTABLES je tento postup,kdyz se provadi portforwarding zpet na tu samou sit :

iptables -t nat -A PREROUTING -d $verejna_IP -p tcp --dport 80 -j DNAT --to $webserver_IP

a nasledne "snatovani" :

iptables -t nat -A POSTROUTING -d $webserver_IP -s 192.168.1.0/24 -p tcp --dport 80 -j SNAT --to $nat_IP

Moje FW pravidla:

#!/bin/sh
IPTABLES=/sbin/iptables
modprobe iptables_nat
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp

echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter
echo "1" > /proc/sys/net/ipv4/conf/all/accept_source_route

$IPTABLES -A INPUT -j DROP
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -F OUTPUT
$IPTABLES -A FORWARD -i eth0 -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT

#prerouting na web server
$IPTABLES -t nat -A PREROUTING -i eth0 -p tcp -d $verejna-IP --dport 80 -j DNAT --to $webserver_IP:80
$IPTABLES -t nat -A POSTROUTING -d $webserver_IP -s 192.168.10.0/24 -p tcp --port 80 -j SNAT --to $gw

#dalsi pokusy (nesel mi zadny)
$IPTABLES -t nat -A POSTROUTING -p tcp --dst $webserver_IP --dport 80 -j SNAT --to $gw
$IPTABLES -t nat -A OUTPUT --dst $verejna_IP -p tcp --dport 80 - DNAT --to-destination $webserver_IP
$IPTABLES -A FORWARD -i eth0 -p tcp -d $webserver_IP --dport 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


$IPTABLES -t nat -A POSTROUTING -o eth0 -j MASQUERADE


Dale jsem se snazil cerpat z :
http://iptables-tutorial.frozentux.net/iptables-tutorial.html#DNATTARGET

iptables v 1.2.11
Debian Stable,kernel 2.4.27-2-386

Budu velice rad,za kazdou radu,ktera me snad dovede uz konecne k uspechu.Predem dekuji a preji pekny den.

Scendel
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

25.9.2006 13:01 Jirka
Rozbalit Rozbalit vše Re: IPTABLES - DNAT na tu samou sit
Odpovědět | | Sbalit | Link | Blokovat | Admin
Proc se snazis dostat na vnitrni server pres branu? Neni jednodussi postavit si jednoduche DNS aby na nazev serveru dostali zevnitr klienti vnitrni adresu a z venku verejnou?
25.9.2006 14:47 Radek Hladik | skóre: 20
Rozbalit Rozbalit vše Re: IPTABLES - DNAT na tu samou sit
Odpovědět | | Sbalit | Link | Blokovat | Admin
Na prvni pohled v tom nevidim zadnou chybku, ale to nic neznamena :) Kazdopadne bych doporucil nasledujici rady:

1) Pred kazdym drop dat log, ja na to mam udelany maly chain logdrop, ktery paket zaloguje a dropne. Taky bych zkusebne vypnul ten rp filter a accept source route. Nejsem si jisty, ale mohla by to byt pricina, proc to nechodi.

2) Zjistit pomoci tcpdumpu, co kam chodi a jake to ma adresy. tcpdump se pouziva priblizne takhle:
tcpdump -i eth0 port 80
misto eth0 je samozrejme potreba dat sitovku, ktera se ma analyzovat. Misto port 80 se da psat i treba host 192.168.1.1 a daji se pouzivat and or not atd... Takze je mozne pouzit port 80 and host 192.168.1.1. Tcpdump potom vypisuje vsechny pakety, ktere zadane podmince odpovidaji, takze je mozne videt, co kudy leze a jake to ma adresy.

3) vzit si tuzku a papir (ano i v 21. stoleti :-) ) namalovat si co kudy chodi a snazit se v tom najit chybu. Hlavne je potreba si dat pozor na to, ze je potreba, aby spravne prochazely pakety v obou smerech a mely vzdy spravne IP adresy.
25.9.2006 17:45 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: IPTABLES - DNAT na tu samou sit
Odpovědět | | Sbalit | Link | Blokovat | Admin

1. Nedělejte to.

2. Nedělejte to.

3. Nedělejte to.

4. Neuposlechnete-li doporučení 1-3, můžete si za své problémy sám, ale zkuste si aspoň přečíst FAQ, kde je váš problém popsán (když už jste nedodržel pravidla fóra a nepodíval se, zda už zde nebyla stejná otázka řešena dříve).

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.