Toto je původní verze internetového fóra ISPforum.cz do února 2020 bez možnosti registrace nových uživatelů. Aktivní verzi fóra naleznete na adrese https://telekomunikace.cz

blokovanie mac adries

Místo, kde žádná otázka není hloupá.
jany
Příspěvky: 319
Registrován: 16 years ago
Kontaktovat uživatele:

blokovanie mac adries

Příspěvekod jany » 6 years ago

Kedze som bol kritizovany za moj firewall (ako keby som ho ani nemal) tak som sa pokusil o nieco aj sam a nefunguje mi vsetko podla mojich predstav (predtym to fungovalo).
Tu je vypis

Kód: Vybrat vše

/ip firewall filter
add action=drop chain=input comment=zahodit_neplatne_spojenia connection-state=invalid
add action=drop chain=forward connection-state=invalid
add action=accept chain=input comment=povolit_icmp_spravy protocol=icmp
add action=accept chain=input comment=povolit_nadviazane_spojenia connection-state=established,related
add action=accept chain=forward connection-state=established,related
add action=drop chain=input comment=zahodit_dns_wan dst-port=53 in-interface=pppoe-out1 protocol=udp
add action=drop chain=input dst-port=53 in-interface=pppoe-out1 protocol=tcp
add action=accept chain=forward comment=openvpn_tcp dst-port=1194 protocol=tcp
...
add action=accept chain=forward comment=moj_pc out-interface=pppoe-out1 src-mac-address=AA:1D:7D:A9:A1:CC
add action=accept chain=forward comment=server_linux out-interface=pppoe-out1 src-mac-address=BB:50:99:36:9A:DD
...

add action=drop chain=forward comment=pravidlo_na_blokovanie_ip_adresy src-address=213.81.214.130
add action=accept chain=input comment=povolit_snmp dst-port=161 in-interface=!pppoe-out1 protocol=udp
add action=drop chain=forward comment=zahodit_vsetko_ostatne_z_wan_na_dstnat connection-nat-state=!dstnat connection-state=new in-interface=pppoe-out1
add action=drop chain=input comment=zahodit_vsetko_ostatne in-interface=pppoe-out1
Problem je s pravidlami medzi ... a ... (tych pravidiel je tam viac, ale na vysvetlenie stacia aj 2).
To pravidlo fungovalo tak, ze ak dana MAC bola vo firewalle, tak z tej MAC fungoval internet (napr. z PC kde je tato MAC AA:1D:7D:A9:A1:CC, tak fungoval internet).
Ak tato MAC vo firewalle nebola, tak internet na tej MAC nefungoval.
Ak by som chcel na danej MAC internet docasne vypnut, tak som to pravidlo disabloval (LAN sluzby fungovali normalne, ale Inet nefungoval).
Teraz som zistil, ze ak pravidlo disablujem, tak Inet funguje dalej.
Ano, staci ked na pravidlo namiesto accept pouzijem DROP, ale to nic neriesi, lebo to by som musel kazdeho kto sa pripoji do LAN hned dropovat.
Neviem dovod preco to prestalo fungovat. Nejake velke zmeny som vo fierwalle nerobil, akurat som pridal na koniec firewallu drop vsetkeho ostatneho
0 x

mirek.k
Příspěvky: 796
Registrován: 16 years ago

Příspěvekod mirek.k » 6 years ago

Na konec dej pravidlo, které zahodí vše z daného portu.
0 x

jany
Příspěvky: 319
Registrován: 16 years ago
Kontaktovat uživatele:

Příspěvekod jany » 6 years ago

thx, presne toto mi tam chybalo

Kód: Vybrat vše

add action=drop chain=forward out-interface=pppoe-out1

Mam to pre in-interface a tak ma to zmiatlo, ze je to OK
0 x

mirek.k
Příspěvky: 796
Registrován: 16 years ago

Příspěvekod mirek.k » 6 years ago

Proč out_interface? Blokovat by se mělo podle in_interface.
Takhle dovolíš poslat packet do internetu, ale už nazpět.
0 x

jany
Příspěvky: 319
Registrován: 16 years ago
Kontaktovat uživatele:

Příspěvekod jany » 6 years ago

ked som to skusil aplikovat na in-interface, tak internet stale fungoval
0 x

rsaf
Příspěvky: 1669
Registrován: 17 years ago

Příspěvekod rsaf » 6 years ago

Pošli někomu 20eur aby ti ten firewall naklikal tak jak to má být. Přidej 20 aby ti pak mailem anebo po telefonu podrobně vysvětlil co který řádek dělá.
Stále tam mícháš forward a input, což už se tady psalo... Je v tom pak chaos.
Chybí ti tam DROP pravidlo na ostatní provoz, něco jako
add action=drop chain=forward out-interface=pppoe-out1
0 x

jany
Příspěvky: 319
Registrován: 16 years ago
Kontaktovat uživatele:

Příspěvekod jany » 6 years ago

rsaf píše:Pošli někomu 20eur aby ti ten firewall naklikal tak jak to má být. Přidej 20 aby ti pak mailem anebo po telefonu podrobně vysvětlil co který řádek dělá.
Stále tam mícháš forward a input, což už se tady psalo... Je v tom pak chaos.
Chybí ti tam DROP pravidlo na ostatní provoz, něco jako
add action=drop chain=forward out-interface=pppoe-out1
Ja viem ze nie som odbornik, ale ty asi necitas vsetko viewtopic.php?p=227562#p227562
0 x

ludvik
Příspěvky: 4448
Registrován: 12 years ago

Příspěvekod ludvik » 6 years ago

Kód: Vybrat vše

/ip firewall filter
add action=accept chain=input connection-state=established,related
add action=accept chain=input protocol=icmp

#misto tohoto jednoho pravidla lze definovat presneji, co je povolene. Pro jednoduchost z LAN naprosto vsechno povoluji.
add action=accept chain=input in-interface=LAN

#na toto misto by se definovala pravidla povolujici pristup na sluzby tohoto routeru z WAN.

#zakazat naprosto vsechno ostatni, vyse nepovolene
add action=drop chain=input


add action=accept chain=forward connection-state=established,related
add action=drop chain=forward connection-state=invalid

#kontrola spravnych IP na LAN je VZDY dobry napad!
add action=drop chain=forward in-interface=LAN src-address=!TVOJE_SIT_NA_LAN

#pokud povolujeme primo stanice a nechceme resit i sluzby neni potreba pro ne definovat nic jineho, nez dle MAC
add action=accept chain=forward comment=moj_pc in-interface=LAN src-mac-address=AA:1D:7D:A9:A1:CC
add action=accept chain=forward comment=server_linux in-interface=LAN src-mac-address=BB:50:99:36:9A:DD

add action=drop chain=forward comment=pravidlo_na_blokovanie_ip_adresy src-address=213.81.214.130

add action=accept chain=forward connection-nat-state=dstnat connection-state=new

#zakazat naprosto vsechno ostatni, vyse nepovolene
add action=drop chain=forward

Lepší je si definovat LAN stranu. Ta bývá "stabilnější", než WAN které může být dynamické. A hlavně je WAN považováno za "nebezpečné", čili na to musíme koukat ne jako na WAN rozhraní, ale jako na "vše mimo LAN", omezíme si možnost chyby v konfiguraci.

Je nutné prostě pochopit, jak funguje stavový firewall. V tomto mém příkladu zákaz pravidla s MAC zakáže tomu počítači přístup na internet (přesněji forward přes tento router). Jenže díky prvnímu pravidlu "established, related" mu to nějaký čas pojede i potom - dokud probíhající konexe neskončí. To může vadit, nemusí.
Ale co je asi horší - ty počítače se na internet nedostanou, ale internet na ně ano. Opět díky tomu established - předposlední pravidlo povolí připojení pocházející z DSTNAT a ty následné pakety už padají do established, related.

Řešení tohoto problému nemusí být snadné.

Asi nejjednodušší by bylo používat DHCP server v kompletně statické konfiguraci. Tedy na rozhraní LAN mít "Arp reply-only" a v DHCP serveru "add arp for leases" a "address-pool static-only". Ono už je totiž potom vcelku jedno, jestli musíš ty MAC udržovat ve firewallu, nebo v DHCP serveru. Jenom zákaz může trvat déle - podle lease-time. Ve firewallu to pak v podstatě řešit nemusíš, povolíš si celý IP segment.
A ještě ti to v budoucnu může ušetřit práci, protože půjde používat dhcp-snooping a všelijaké guardy na switchi.

Pokud nechceš DHCP server, musíš kontrolu MAC dostat ještě před established,related. Input teď vynechávám:

Kód: Vybrat vše

add action=jump chain=forward in-interface=LAN jump-target=MAC

#timto mistem projdou z LAN jen povolene pocitace (resp. pakety nezakazane v chainu MAC)

add action=accept chain=forward connection-state=established,related
add action=drop chain=forward connection-state=invalid

#na toto misto muzeme definovat zakazy, co se tykaji vsech (napr. zakaz portu 17,19, 135-139)

#kontrola spravnych IP na LAN je VZDY dobry napad!
add action=accept chain=forward in-interface=LAN src-address=TVOJE_SIT_NA_LAN

add action=accept chain=forward connection-nat-state=dstnat connection-state=new

#a zakazat zbytek
add action=drop chain=forward

#v extra chainu zablokujeme co nechceme
add action=return chain=MAC comment=moj_pc src-mac-address=AA:1D:7D:A9:A1:CC
add action=return chain=MAC comment=server_linux src-mac-address=BB:50:99:36:9A:DD
add action=drop chain=MAC


Pořád je problém v tom, že první paket z internetu (je-li to DSTNAT) projde. Ale to už nemusí být úplně na závadu.
Třeba já to řeším raději tak, že počítače co mají DST-NAT povoluji explicitně pomocí IP (a address-list).

Pokud je potřeba pracovat se seznamem IP adres, je velice vhodné používat address-list. Pak stačí jen jedno pravidlo a i úpravy jsou jednodušší (a rychlejší, ale to v tomto případě už roli moc hrát nebude).
2 x
Jelikož je zde zakázáno se negativně vyjadřovat k provozním záležitostem, tak se holt musím vyjádřit takto: nové fórum tak jak je připravováno považuji za cestu do pekel. Nepřehledný maglajz z toho bude. Do podpisu se mi pozitiva již nevejdou.