Skip to main content

Tűzfal - Router

MikroTik Tűzfalszabályok - Lépésről-lépésre (Magyarul)


1. Layer7 protokoll meghatározása

/ip firewall layer7-protocol
add name=layer7-bittorrent-exp regexp="^(\\x13bittorrent protocol|azver\\x01\$|get /scrape\\\?info_hash=get /announce\\\?info_hash=|get /client/bitcomet/|GET /data\\\?fid=)|d1:ad2:id20:|\\x08'7P\\)[RP]"
  • Célja: Létrehoz egy Layer7 protokoll detektálót, amely BitTorrent forgalmat ismer fel a hálózati adatcsomagok tartalmának mintázatai alapján.
  • Hogyan működik:
    • A szabály reguláris kifejezéseket használ, amelyek a BitTorrent protokoll sajátosságaira keresnek:
      • Minták: bittorrent protocol, get /scrape, azver\\x01.
  • Felhasználás:
    • Ezt később tűzfalszabályokkal lehet kombinálni, hogy a torrent forgalmat blokkolják, korlátozzák, vagy logolják.

2. Címlisták

A /ip firewall address-list részen IP-címtartományok kerülnek csoportosításra, hogy egyszerűbb legyen a szabályok kezelése.

NotPublic lista

add address=0.0.0.0/8 comment=RFC6890 list=NotPublic
add address=10.0.0.0/8 comment=RFC6890 list=NotPublic
add address=100.64.0.0/10 comment=RFC6890 list=NotPublic
add address=127.0.0.0/8 comment=RFC6890 list=NotPublic
add address=169.254.0.0/16 comment=RFC6890 list=NotPublic
add address=172.16.0.0/12 comment=RFC6890 list=NotPublic
add address=192.0.0.0/24 comment=RFC6890 list=NotPublic
add address=192.0.2.0/24 comment=RFC6890 list=NotPublic
add address=192.168.0.0/16 comment=RFC6890 list=NotPublic
add address=192.88.99.0/24 comment=RFC3068 list=NotPublic
add address=198.18.0.0/15 comment=RFC6890 list=NotPublic
add address=198.51.100.0/24 comment=RFC6890 list=NotPublic
add address=203.0.113.0/24 comment=RFC6890 list=NotPublic
add address=224.0.0.0/4 comment=RFC4601 list=NotPublic
add address=240.0.0.0/4 comment=RFC6890 list=NotPublic
  • Célja: Olyan IP-tartományokat csoportosít, amelyek nem publikusak vagy fenntartottak, az RFC szabványok alapján.
  • Felhasználás:
    • A nem publikus forgalom blokkolása, például:
      • Privát tartományok: 10.0.0.0/8, 192.168.0.0/16.
      • Loopback címek: 127.0.0.0/8.
      • Link-local címek: 169.254.0.0/16.
      • Dokumentációra fenntartott címek: 192.0.2.0/24, 198.51.100.0/24.

cc lista (megbízható IP-k)

add address=185.5.228.150 comment=mod list=cc
add address=37.220.139.35 comment=mod list=cc
add address=37.220.139.36 comment=mod list=cc
add address=62.77.210.69 comment="Centrum Computer" list=cc
  • Célja: Meghatározott IP-címek csoportosítása, amelyek megbízhatónak minősülnek (pl. ügyfél vagy távoli menedzsment IP-k).
  • Felhasználás:
    • Engedélyezi ezekről az IP-címekről az adminisztratív hozzáféréseket (pl. WinBox, SSH).

all-internal lista (belső hálózatok)

add address=10.60.0.0/24 list=all-internal
add address=192.168.170.0/24 list=all-internal
add address=192.168.1.0/24 list=all-internal
  • Célja: A belső hálózatok csoportosítása, amelyek megbízhatónak minősülnek.
  • Felhasználás:
    • Engedélyezi a forgalmat ezen hálózatok között, vagy az internet elérését ezekből a tartományokból.

guest-nw lista (vendéghálózat)

add address=192.168.170.0/24 list=guest-nw
  • Célja: A vendéghálózat IP-címének csoportosítása.
  • Felhasználás:
    • Korlátozza a vendéghálózatról a belső hálózathoz való hozzáférést.

Egyéb címek

add address=10.60.60.0/24 comment="Wireguard Clients" list=all-internal
add address=10.60.70.0/24 list=domus
  • WireGuard kliensek (10.60.60.0/24):
    • A VPN-felhasználók címtartományának meghatározása.
  • Domus hálózat (10.60.70.0/24):
    • A "Domus" helyszín alhálózatának megjelölése, hogy külön szabályok vonatkozhassanak rá.

3. Tűzfalszabályok

A /ip firewall filter szabályok határozzák meg, hogy a különböző forgalmak milyen módon kerülnek kezelése a routeren keresztül.

  • 1. WAN → NGINX engedélyezés:

    add action=accept chain=forward comment="accept from WAN to NGINX" connection-nat-state=dstnat dst-address=10.60.0.50 dst-port=80,443 in-interface-list=WAN protocol=tcp
    
  • 2. WAN → NAS FTP blokkolás:

    add action=drop chain=forward comment="accept from WAN to NAS FTP" connection-nat-state=dstnat dst-address=10.60.0.49 dst-port=20,21,5536-56559 in-interface-list=WAN protocol=tcp
    
  • 3. LAN → NAS FTP engedélyezés:

    add action=accept chain=forward comment="accept from LAN to NAS FTP" connection-nat-state=dstnat dst-address=10.60.0.49 dst-port=20,21,5536-56559 in-interface-list=LAN protocol=tcp
    
  • 4. Merlin SSH szabályok:

    add action=accept chain=forward comment="Merlin ssh" dst-address=192.168.1.201 dst-port=3140 in-interface-list=WAN protocol=tcp src-address=62.77.210.69
    add action=accept chain=forward comment="merlin ssh" dst-address=62.77.210.69 dst-port=3140 in-interface-list=WAN protocol=tcp src-address=192.168.1.201
    
  • 5. WireGuard szabályok:

    add action=accept chain=input comment="Wireguard Roadwarriors 2 connect." dst-port=13231 protocol=udp
    add action=accept chain=input comment="Wireguard Domus 2 connect." dst-port=13232 protocol=udp src-address=81.16.194.47
    add action=accept chain=forward comment="Wireguard Debrecen 3 connect" dst-port=13233 in-interface-list=WAN protocol=udp src-address=141.98.251.219
    add action=accept chain=forward comment="Wireguard RWs 2 LAN" dst-address=10.60.0.0/24 src-address=10.60.60.0/24
    add action=accept chain=forward comment="Wireguard LAN 2 RWs" dst-address=10.60.60.0/24 src-address=10.60.0.0/24
    add action=accept chain=forward comment="Wireguard Domus -> HQ" dst-address=10.60.0.0/24 src-address=10.60.70.0/24
    add action=accept chain=forward comment="Wireguard HQ -> Domus" dst-address=10.60.70.0/24 src-address=10.60.0.0/24
    
  • 6. Vendéghálózat korlátozása:

    add action=drop chain=forward comment="Guest block" dst-address=10.60.0.0/24 src-address=192.168.170.0/24
    
  • 7. Portscan védelem:

    add action=add-src-to-address-list address-list=portscanners address-list-timeout=4w chain=portscandetect comment="portscan - portscanners to list" protocol=tcp psd=21,3s,3,1
    add action=add-src-to-address-list address-list=portscanners address-list-timeout=4w chain=portscandetect comment="portscan - NMAP FIN Stealth scan" protocol=tcp tcp-flags=fin,!syn,!rst,!psh,!ack,!urg
    add action=add-src-to-address-list address-list=portscanners address-list-timeout=4w chain=portscandetect comment="portscan - SYN/FIN scan" protocol=tcp tcp-flags=fin,syn
    add action=add-src-to-address-list address-list=portscanners address-list-timeout=4w chain=portscandetect comment="portscan - SYN/RST scan" protocol=tcp tcp-flags=syn,rst