Portál AbcLinuxu, 10. května 2025 06:15

Dotaz: NetBios a iptables na klientu

15.11.2012 22:13 dumbo
NetBios a iptables na klientu
Přečteno: 202×
Odpovědět | Admin
Zdravím, marně se snažím nastavit iptables, tak aby aby mi fungoval přístup k samba serveru přes NetBios jméno. Rád bych měl firewall nastaven tak, aby bylo poveleno, jen to, co potřebuju. Což se mi v tomto případě moc nedaří. V iptables mám přibližně toto:
-A INPUT -i lo -j ACCEPT 
-A INPUT -i eth1 -j eth1_in 
-A INPUT -i eth0 -j eth0_in 
-A OUTPUT -o lo -j ACCEPT 
-A OUTPUT -o eth1 -j eth1_out 
-A OUTPUT -o eth0 -j eth0_out 
-A eth0_in -j ACCEPT 
-A eth0_out -j ACCEPT 
-A eth1_in -i eth1 -p tcp -m tcp --dport 22 -j ACCEPT 
-A eth1_in -i eth1 -p tcp -m tcp --dport 21 -j ACCEPT 
-A eth1_in -i eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT 
-A eth1_in -i eth1 -p icmp -j ACCEPT 
-A eth1_in -i eth1 -p udp -m udp --dport 137 -j ACCEPT 
-A eth1_in -i eth1 -p udp -m udp --dport 138 -j ACCEPT 
-A eth1_in -i eth1 -p tcp -m tcp --dport 139 -j ACCEPT 
-A eth1_in -i eth1 -p tcp -m tcp --dport 445 -j ACCEPT 
-A eth1_in -i eth1 -p udp -m udp --dport 445 -j ACCEPT 
-A eth1_in -i eth1 -j ULOG 
-A eth1_in -i eth1 -j REJECT --reject-with icmp-port-unreachable 
-A eth1_out -o eth1 -j ACCEPT 
Ty pravidla pro smb povolují především server, který mám na stejném systému, ale teď mi jde o pravidla pro klienta, který má přistupovat na jiný server pomocí jeho netbios jména. Problém je v tom, že bych musel povolit provoz na základě zdrojového portu, což se mi moc nelíbí - v logu se objevují hlášky jako:
Nov 15 22:10:21 marv IN=eth1 OUT= MAC=...  SRC=192.168.1.10 DST=192.168.1.146 LEN=90 TOS=00 PREC=0x00 TTL=64 ID=0 DF PROTO=UDP SPT=137 DPT=36518 LEN=70 
Nov 15 22:10:24 marv IN=eth1 OUT= MAC=...  SRC=192.168.1.10 DST=192.168.1.146 LEN=90 TOS=00 PREC=0x00 TTL=64 ID=0 DF PROTO=UDP SPT=137 DPT=34697 LEN=70 
Nov 15 22:10:26 marv IN=eth1 OUT= MAC=...  SRC=192.168.1.10 DST=192.168.1.146 LEN=90 TOS=00 PREC=0x00 TTL=64 ID=0 DF PROTO=UDP SPT=137 DPT=34483 LEN=70
Předpokládal jsem, že tohle řeší RELATED,ESTABLISHED, ale v tomhle případě je to bez efektu.Tedy asi potřebuju nějakou chytřejší obdobu, ale nic se mi nedaří najít.

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

Odpovědi

pavlix avatar 15.11.2012 23:53 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: NetBios a iptables na klientu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jen názor, je to bordel. Podle mě je lepší ESTABLISHED,RELATED povolit už na nejnižší úrovni pro každý hlavní chain, který omezuju, což je typicky INPUT a FORWARD, v tvém případě navíc ještě netypický OUTPUT.
-A eth1_in -i eth1 -p udp -m udp --dport 137 -j ACCEPT 
Nov 15 22:10:21 marv IN=eth1 OUT= MAC=...  SRC=192.168.1.10 DST=192.168.1.146 LEN=90 TOS=00 PREC=0x00 TTL=64 ID=0 DF PROTO=UDP SPT=137 DPT=36518 LEN=70 
Chápu to správně, že poředpokládáš, že toto pravidlo umožní projít tomuto paketu (pokud není ESTABLISHED)? Pak se dobře podívej na to, který port je zdrojový a který cílový a zjistíš, že se ti kříží.

Které porty potřebuješ mít na netbios jména skutečně otevřené, to netuším, pokužívám vždy DNS jména.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
16.11.2012 10:24 dumbo
Rozbalit Rozbalit vše Re: NetBios a iptables na klientu
ESTABLISHED,RELATED přesunu před 21,22 zní to rozumně, dík za radu. OUTPUT neomezuju, ty chainy eth1_out a eth0_out, jsou tam, protože ty pravidla generuju skriptem, který se mi snáze psal takto (mám víc konfigurací, některé OUTPUT omezují). Možná to není idealní, ale nechme to, prosím, stranou, mého aktuálního problému se to netýká.
-A eth1_in -i eth1 -p udp -m udp --dport 137 -j ACCEPT 
Nov 15 22:10:21 marv IN=eth1 OUT= MAC=...  SRC=192.168.1.10 DST=192.168.1.146 LEN=90 TOS=00 PREC=0x00 TTL=64 ID=0 DF PROTO=UDP SPT=137 DPT=36518 LEN=70 
Chápu to správně, že poředpokládáš, že toto pravidlo umožní projít tomuto paketu (pokud není ESTABLISHED)? Pak se dobře podívej na to, který port je zdrojový a který cílový a zjistíš, že se ti kříží.
Tohle právě vím, toto pravidlo, je tam kvůli samba serveru, který beží na tomto stroji. Celé by to IMHO vyřešilo stejné pravidlo (resp. pravidla), které vy místo --dport obsahovalo --sport. To se mi ale moc nelíbí, protože bych tím vlastně povolil veškerý příchozí provoz.

Předpokládal jsem, že by tohle mohlo řešit pravidlo RELATED, ESTABLISHED, jelikož ten paket je related k předchozímu, který samba klient do sítě poslal. Ale tak to nefunguje.
pavlix avatar 16.11.2012 11:12 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: NetBios a iptables na klientu
To se mi ale moc nelíbí, protože bych tím vlastně povolil veškerý příchozí provoz.
Přesně tak.
Předpokládal jsem, že by tohle mohlo řešit pravidlo RELATED, ESTABLISHED, jelikož ten paket je related k předchozímu, který samba klient do sítě poslal. Ale tak to nefunguje.
RELATED se u těchto protokolů nejspíš vůbec neuplatní, to se týká jen některých speciálních modulů.

ESTABLISHED by ale zafungovat mělo, teď se na to dívám, že DPT je náhodný, tudíž to asi odpověď na něco je. Zkus příkaz conntrack, abys viděl, co v tabulce spojení skutečně máš, a tcpdump (či alternativa) ti pomůže sledovat odchozí pakety.
tcpdump -ni eth1 dport 137
Ten output eth1 ACCEPT jsem přehlédl. Někdy je fakt jednodušší řetěz OUTPUT vůbec nenaplňovat, když na něm nechceš omezovat vůbec nic, ale to je na tobě.

Tohle asi znáš, ale kdyby náhodou:
iptables -vL
Na tom jsou vidět počty paketů, které se na pravidlo chytily.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
16.11.2012 09:13 NN
Rozbalit Rozbalit vše Re: NetBios a iptables na klientu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Osobne bych dodal, ze RELATED,ESTABLISHED se dava pred filtrovani portu protoze vetsina paketu spadne do tohoto pravidla. Dale co ti brani pouzit celou sit/subnet pro klienty a filtrovat je jako source v pravidlech pro jednotlive porty ?
16.11.2012 10:26 dumbo
Rozbalit Rozbalit vše Re: NetBios a iptables na klientu
Je to notebook, který připojuju do různých sítí, musel bych řešit pravidla pro každou zvlášť. Jinak tohle řešení mě taky napadlo, ale hledám jiné.
pavlix avatar 16.11.2012 11:14 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: NetBios a iptables na klientu
Osobne bych dodal, ze RELATED,ESTABLISHED se dava pred filtrovani portu protoze vetsina paketu spadne do tohoto pravidla.
A taky se to lépe čte, než když je takhle R/E uprostřed.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.

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.