Portál AbcLinuxu, 10. května 2025 02:31

Dotaz: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP

27.7.2007 10:32 deepx
IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Přečteno: 1047×
Odpovědět | Admin
Mám linuxový firewall s IPTABLES, dvě síťové karty, jedna do vnitřní sítě, druhá ven s pevnou veřejnou IP. Uvnitř sítě běží poštovní server, který je dostupný i z internetu přes veřejnou IP. Potřebuji, aby tento poštovní server byl dostupný na veřejné IP adrese i z vnitřní sítě. (notebook se jenou připojuje unitř sítě, jindy z internetu). Poradíte, jak nastavit IPTABLES, aby jednu IP adresu (porty 25 a 110) směroval z vnitřní sítě zpět do vnitřní sítě, ale na lokální adresu (10.0.0.2)?
Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

honzous avatar 27.7.2007 10:41 honzous | skóre: 17 | blog: /var/log/honzous.log
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Odpovědět | | Sbalit | Link | Blokovat | Admin
Myslim, ze si trosku protirecis. Tak ma byt pristupny na verejne nebo lokalni IP? :-)
Nevykej mi, ja ti taky nebudu vykat...↵ Mar 13 11:53:32 nevykat last message repeated 2324661 times
27.7.2007 10:48 Tom.š Ze.le.in | skóre: 21 | blog: tz
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Odpovědět | | Sbalit | Link | Blokovat | Admin
Vhodný -j DNAT v chainu PREROUTING tabulky nat jste zkusil?
_ijkl avatar 27.7.2007 10:48 _ijkl | skóre: 12 | blog: holden | Banská Bystrica
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Odpovědět | | Sbalit | Link | Blokovat | Admin
Mne funguje presne to co pozadujes:
iptables -t nat -A PREROUTING -i $vnutorny_iface -d $verejna_ip -p tcp --dport 25 -j DNAT --to 10.0.0.2:25
27.7.2007 10:52 maleprase | skóre: 28
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Odpovědět | | Sbalit | Link | Blokovat | Admin
tam je potreba zajistit krome toho pravidla s DNAT i to ze kdyz ma packet zdrojovou adresu z vnitrni site aby se prelozil na adresu interniho rozhrani

neco jako:
iptables -t NAT -A PREROUTING -p tcp -d verejna_ip --dport 25 -j DNAT --to-destionation 10.0.0.2
iptables -t nat -A POSTROUTING -p tcp -s vnitrni_sit -d 10.0.0.0.2 --dport 25 -j SNAT --to-source vnitrni_ip
verejna_ip je adresa na vnejsim rozhrani, vnitrni_ip na vnitrnim, vnitrni_sit je rozsah vnitrni site
27.7.2007 10:56 Tom.š Ze.le.in | skóre: 21 | blog: tz
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Pravda. Já měl pocit, že jsem to kdysi zkoušel a v té triviální implementaci byl problém (ale tehdy jsem nakonec stejně dal zvenku přístupný server i z jiných důvodů do samostatného segmentu sítě, a pak tohle nutné nebylo).
27.7.2007 11:41 Ripper | skóre: 31
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Odpovědět | | Sbalit | Link | Blokovat | Admin
Stačí do poštovního klienta dát do POP3 a SMTP veřejnou adresu toho poštovního serveru (pokud nemáte doménu).
27.7.2007 12:24 deepx
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zkusil jsem přidat dle rady, ale nepomohlo to. Potřebuji, aby ten poštovní server (10.0.0.3) byl přístupný z venku i zevnitř přes veřejnou IP (82.117.133.18). DNS záznam ta veřejná IP nemá.

Tady je celý IPTABLES i s těmi dvěma řádky co jsem přidal: Předem díky za jakoukoliv radu.

*nat
:PREROUTING ACCEPT [237:21154]
:POSTROUTING ACCEPT [63:5028]
:OUTPUT ACCEPT [63:5028]
-A PREROUTING -i eth0 -p tcp -m tcp --dport 443 -j DNAT --to-destination 10.0.0.3:443
-A PREROUTING -i eth0 -p tcp -m tcp --dport 444 -j DNAT --to-destination 10.0.0.3:444
-A PREROUTING -i eth0 -p tcp -m tcp --dport 25 -j DNAT --to-destination 10.0.0.3:25
-A PREROUTING -i eth0 -p tcp -m tcp --dport 110 -j DNAT --to-destination 10.0.0.3:110
-A PREROUTING -i eth0 -p tcp -m tcp --dport 143 -j DNAT --to-destination 10.0.0.3:143

-A PREROUTING -p tcp -m tcp -i eth1 -d 82.117.133.18 --dport 110 -j DNAT --to-destination 10.0.0.3:110
-A POSTROUTING -p tcp -m tcp -s 10.0.0.0/255.0.0.0 -o eth1 -d 10.0.0.3 --dport 110 -j SNAT --to-source 10.0.0.3:110

-A POSTROUTING -s 10.0.0.0/255.0.0.0 -o eth0 -j SNAT --to-source 82.117.133.18

COMMIT

*filter
:INPUT DROP [30:2365]
:FORWARD ACCEPT [29066:27524742]
:OUTPUT ACCEPT [11730:6985578]
-A INPUT -i lo -j ACCEPT 
-A INPUT -i eth1 -j ACCEPT 
-A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT 
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT 
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -m state --state NEW -j ACCEPT 
-A INPUT -i eth0 -p tcp -m tcp --dport 3128 -m state --state NEW -j ACCEPT 
-A INPUT -i eth0 -p icmp -j ACCEPT 
COMMIT
27.7.2007 12:51 outsider
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
To druhe pripsane pravidlo mate spatne. Ma tam byt --to-source <vnitrni adresa routeru>

Aspon teda doufam, ze jsem kolegu vyse pochopil spravne, a opravdu se u tech paketu ma prepisovat jak dst tak src adresa ... :-)
27.7.2007 14:22 deepx
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Ano, to bylo ono, má tam být vnitřní adresa routeru. Už to funguje přesně jak potřebuji, díky moc za rady.
27.7.2007 13:04 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Nejsem si jist, zda může SNAT a DNAT najednou na jedno spojení fungovat. Pokud vám nebude vadit, že máte poštovní server v jiné IP síti (a nebude tedy přímo dostupný z vnitřní sítě), přidělte mu IP adresu z jiného rozsahu (např. 10.0.1.0/24), druhou IP adresu z tohoto rozsahu nastavte jako alias pro příslušnou síťovou kartu routeru a pak už můžete použít obyčejný DNAT. Server se při odpovědi nebude pokoušet komunikovat přímo s klientem, ale půjde zase přes router, který tím pádem dokáže udělat přemapování zpět.

Mimochodem, v těch pravidlech máte podle mne chybu, v
-A POSTROUTING -p tcp -m tcp -s 10.0.0.0/255.0.0.0 -o eth1 -d 10.0.0.3 --dport 110 -j SNAT --to-source 10.0.0.3:110
by mělo být -o eth0, ne? Postrouting se aplikuje až po té, co se podle routovací tabulky rozhodlo, kam má paket přijít, a ten se má vrátit na eth0, do vnitřní sítě.
27.7.2007 12:43 deepx
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ještě tedy upřesnění, potřebuji aby bylo možné stáhnout poštu Outlookem, ve kterém mám nastaven jako pop3 server adresu 82.117.133.18, v případě že je notebook připojen v místní síti ale i pokud je připojen mimo firmu přes internet, aby nebylo vždy nutné měnit adresu pop3 serveru. Stačí mi tedy pop3 port 110.
27.7.2007 13:23 Pavel | skóre: 15 | blog: Pavlův blog | Praha
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Tak nevi, ale pokud mate z vnitrni site pristup ven do internetu a nijak ho neblokujete, tak prece neni potreba nic menit. V Outlooku nechate jako pop3 adresu 82.117.133.18 a normalne by dotaz mel projit ven do internetu a pak zpatky na Vas router a pote dovnitr. Mam to takhle nastaveny a neni potreba delat nejaky speciality navic...
27.7.2007 14:24 deepx
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Takhle mi to nefungovalo, dotaz zevnitř došel pouze na router a tam skončil. Ale už jsem to vyřešil, díky.
27.7.2007 18:39 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Ono to nemusi byt uplne pravda. Provider muze blokovat pakety se srcip==dstip. Nevim, nakolik tyto pakety podle ruznych RFC a spol. maji nebo nemaji byt blokovany , ale je to ma osobni zkusenost. Na firme jsme taky potrebovali mit servery pristupne z LAN na verejnych adresach (velice podobny pripad, jako ma puvodni tazatel). Provoz sel skrz nas router/firewall (Kerio na Winserveru) ven, prolezl asi 7 stroju a vratil se zpatky. Pak jsme zmenili providera a tohle prestalo fungovat. Provoz sel ven a asi po 2 hopech traceroute koncil.

Ale tak trochu si myslim, ze blokovat to je [spravne|lepsi|regulerni].

Dejf
Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
27.7.2007 19:06 Ondrej 'SanTiago' Zajicek
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Odpovědět | | Sbalit | Link | Blokovat | Admin
Naco IPTABLES? Pokud dany mailserver nemusi mit lokalni adresu, tak nejjednodussi by bylo dat mu tu verejnou adresu a na router pridat routu na ni.

Na router:
ip route add $verejna_ip_adresa_mailserveru dev $vnitrni_rozhrani_routeru
Na mailserver:
ip addr add $verejna_ip_adresa_mailserveru peer $privatni_ip_adresa_routeru dev eth0
ip route add default via $privatni_ip_adresa_routeru
27.7.2007 19:09 Ondrej 'SanTiago' Zajicek
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Tohle by melo fungovat za predpokladu ze verejna adresa mailserveru je jina, nez verejna adresa pouzivana pro NAT.
27.7.2007 22:13 martyone | skóre: 18
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pokud tam máte DNS, bude možná nejlepší řešit to přes DNS - jiná odpověď pro dotaz z venčí, jiná pro dotaz zevnitř.
27.7.2007 22:19 martyone | skóre: 18
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Jejda :-) nemáte :-( ..jsem si prvně nevšim - mám tady trocha stísněné prostředí ;-)
27.7.2007 22:31 deepx
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
Odpovědět | | Sbalit | Link | Blokovat | Admin
DNS nemame, jinak bych to resil pres nej. To s tim prirazenim verejne IP adresy serveru by asi nebylo to prave orechove, na tom mailserveru je soucasne interni fileserver a aplikacni server. Ale jak uz jsem psal, problem se vyresil v IPTABLES, nevidim problem v tomto reseni, pro muj ucel idealni, presne co jsem potreboval.
28.7.2007 20:35 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: IPTABLES - směrování zevnitř zpět dovnitř na jinou IP
A na závěr diskuse ještě oblíbený odkaz na FAQ (kde to mělo začít, ne skončit).

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.