четвъртък, юни 03, 2010

Mikrotik L2 filtering

Целта на упражнението: да се забрани ползването на услугите предоставяни
от рутера (в случая RouterBoard RB705, но предполагам, че ще работи и за
други модели)
До 3 работещи варианта стигнах в крайна сметка
1.
interface bridge filter export
# jan/09/1970 01:36:42 by RouterOS 4.6
#
/interface bridge filter
add action=accept chain=input comment="" disabled=no mac-protocol=arp \
src-mac-address=00:2D:7D:C1:4F:01/FF:FF:FF:FF:FF:FF
add action=drop chain=input comment="" disabled=no mac-protocol=arp \
src-mac-address=FF:FF:FF:FF:FF:FF/FF:FF:FF:FF:FF:FF
(add action=drop chain=input comment="" disabled=no mac-protocol=arp \
src-mac-address=00:00:00:00:00:00/FF:FF:FF:FF:FF:FF)
Микротик firewall-a има експлитицно правило allow any any... т.е. ако
нещо изрично не е забранено, то ТО по подразбиране е разрешено
В този случай не сработиха последните правила (XOR) които според мен
трябваше да забранят всичко останало което не е match-нато в първото
правило.
Сиреч може да се използва при зададено условие: на всички е разрешено,
освен на тези на които изрично е забранено

2.
2.1. маркираме пакети и конекшъни
/ip firewall mangle export
# jan/10/1970 01:05:47 by RouterOS 4.6
#
/ip firewall mangle
add action=mark-connection chain=prerouting comment="" disabled=no \
new-connection-mark=allowedpassthrough=yes src-mac-address=\
00:1D:7D:C1:4F:01
add action=mark-packet chain=prerouting comment="" disabled=no \
new-packet-mark=allowedpassthrough=yes src-mac-address=00:1D:7D:C1:4F:01
2.2. block/allow на базата на маркировката от 2.1.
/ip firewall filter
add action=drop chain=forward comment="" connection-mark=!allowed
disabled=yes packet-mark=!allowed
Основният плюс тука, е че наличната "марка" може да се използва и за
други неща... Queue примерно...
3.
/ip firewall filter> export
# jan/04/1970 02:39:09 by RouterOS 4.5
#
/ip firewall filter
add action=accept chain=input comment="" disabled=no src-mac-address=\
00:19:66:09:64:14
add action=accept chain=input comment="" disabled=no src-mac-address=\
00:1D:7D:C1:6F:BE
add action=accept chain=input comment="" disabled=no src-mac-address=\
00:13:8F:3A:70:02
add action=drop chain=input comment="" disabled=no in-interface=\
ether2-local-master
(add action=drop chain=input comment="" disabled=no
src-address=192.168.88.0/24)
Първите 3 правила описват allowed PC закачени зад switch "модула" (2-5
порт по подразбиране с default config на RB750), като последните 2 (XOR)
забраняват всичко останало
Хитрото тук е, че се блок-ва трафика иницииран от "вътрешният интерфейс"
(т.е. този за който in-interface е споменат в правилото), но трафика
адресиран "от вън" към този МАС си е ОК. Може да се използва в при
зададено условие: на всички е забранено, освен на тези на които изрично
им е разрешено.

Няма коментари: