Debian 5 vs iptables

Fórumok

Üdv Mindenkinek!
A helyzet az, hogy már írtam szintén ezzel a problémmámmal kapcsolatban már írtam ide és kaptam is helpet csak most megint rohadtul elakadtam.
Van 3 szerver, egy sambás, fájlszervernek meg 2 proxy (Debian+squid). A szitu az, hogy a proxyk látják a fájlszervert, de a hozzájuk csatlakoztatott gépek nem. Erre kaptam innen az ötletet, miszerint iptablesel megoldható.
Amit eddig csináltam:
Ip forward:
echo 1 > /proc/sys/net/ipv4/ip_forward

iptablesben:

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 137 -j DNAT --to-destination 192.168.1.10

iptables -t nat -A PREROUTING -i eth0 -p udp --dport 137 -j DNAT --to-destination 192.168.1.10

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 138 -j DNAT --to-destination 192.168.1.10

iptables -t nat -A PREROUTING -i eth0 -p udp --dport 138 -j DNAT --to-destination 192.168.1.10

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 139 -j DNAT --to-destination 192.168.1.10

iptables -t nat -A PREROUTING -i eth0 -p udp --dport 139 -j DNAT --to-destination 192.168.1.10

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 445 -j DNAT --to-destination 192.168.1.10

iptables -t nat -A PREROUTING -i eth0 -p udp --dport 445 -j DNAT --to-destination 192.168.1.10

illetve egy log ami a 139es portot lesi:

iptables -A INPUT -p tcp --dport 139 -j LOG --log-level warning --log-prefix="IPTABLES INPUT"

Hát kb ennyi. A helyzet az, hogy a sambára átdobja a proxy, mert a logjában megjelenik, csak nem jön vissza a csomag. Csak ezek a szabályok vannak az IPTABLESben. Az is gond volt, hogy reboot után nem voltak meg a szabályok. Nagyon nagyon kezdő vaok iptablesben! :)

Valakinek ötlet? Naon hálás lennék a segítségért,előre is köszi mindent.
NuKe

U.I.: Kipróbáltam virtuális környezetben 2 deb között csak 1-1 hálókártyával és ott se jött be ez a megoldás.

Hozzászólások

Azt gondolom tudod, hogy a squidnak meg a sambának elég kevés köze van egymáshoz?

jobb lenne, ha leírnád részletesen a környezetet meg a bajodat, hamarabb kapnál segítséget.

Valószínűleg a tűzfalnak semmi köze a problémához, sokkal inkább a routingnak, úgyhogy írd le azt, hogy hogy néz ki a hálózat és mit szeretnél elérni, hid el meg fogod kapni a segítséget

----
概略情報

Lássuk, van 2 emelet, emeletenként 1 proxy szolgáltatja a netet. Az elsőn 4 terem szóval az első proxyban van összesen 5 hálózati kártya. Mindegyik kártya egy termbe van bekötve. Az 5ből egy a közvetlen belső hálózatra van kapcsolva, ez látja normálisan a többi szervert és ez van rákötve a netre is.
A másik proxy szintén ugyan így néz ki. A fájlszerverben csak 2 hálókártya van. Az egyikkel a netre csatlakozik a másik meg igazából csak van.

A lényeg az volna, hogy az adott termekből ellehessen érni a fájlszervert a proxykon keresztül, de ez azokról a hálózati kártyákról melyekre a termek vannak kötve sajnos nem elérhető, ezért van minden csomag aminek a célja a 137,138,139,445-ös (samba által használt portok, UDP/TCP)portok legyenek átdobva a fájlszerverre.

http://img215.imageshack.us/i/csn.png/

Asszem ennyi. Ja és a fenti iptables parancsok mindegyik hálózati kártyára rálettek rakva (eth0-eth4).

Ha már így van összerakva ez a hálózat, akkor csak annyit kellene tenni, hogy az ábrán nem látható, az eth0-kon ülő gateway-en - ha a Samba default gateway-e ez - kellene route-olni az első emeleti géptermek IP tartományait a Proxy1 eth0 címére, a második emeleti géptermek IP tartományait a Proxy2 eth0 címére. Ha nem, akkor magán a Samban is meg lehet ezt tenni. Valamint a Proxy1-en és Proxy2-n át kell engedni a Samba felé menő (és onnan jövő) megfelelő forgalmat. A Samban be kellene állítani egy WINS-et, és az összes gépterem összes kliensén pedig azt, hogy használják is - remélhetőleg DHCP van, és akkor egyszerű a dolog.

"minden csomag aminek célja a samba routoljam a proxyk eth0-ra"
Nem. Te is írtad ("a sambára átdobja a proxy"), hogy a gépterem->Samba útvonal működik, csak a visszirány nem. A Sambával kell tudatni, hogy a proxyk mögött lévő tartományokat merre találja. Vagy a proxyk és a Samba közös alapértelmezett átjáróján is meg lehet ezt tenni ugyanezt.

"Akkor rossz láncot is használtam?"
A kérdésnek több megközelítése is lehetséges, lehet natolni (source és destination is), de megoldható csak routinggal is. A routing a legegyszerűbb, oda nem kell semmilyen NAT, csak a tűzfalszabályokon kell átengedni a forgalmat, ha WINS-t használsz. Ezt javasolnám. (Egyébként az eth0-n nem is lenne jó ez a DNAT, amennyiben a 192.168.1.10 a Samba címe lenne.)

A lehetőségeid:
a) megfelelő route-ok az átjárón; WINS
b) megfelelő route-ok a Sambán; WINS
c) source + destination NAT; (broadcastra is)
d) ezekből kialakított vegyes megoldás

WINS csak akkor kell, ha név szerint is szeretnéd megszólítani a szervert.

Kayapo nyert.

"emeletenként 1 proxy szolgáltatja a netet"

Miért nem elég egy?

Egyszerűsödne a topológia.