Przejdź do głównej zawartości

Konfiguracja NAT i firewalla w RouterOS (MikroTik)

Cel

Po wykonaniu kroków maszyny w sieci biuro-lan mają dostęp do internetu przez gw01 (NAT masquerade). Ruch przychodzący z WAN jest filtrowany przez firewall RouterOS – nieautoryzowany ruch z internetu jest blokowany.


Wymagania wstępne

  • Skonfigurowany gw01 z adresem 192.168.50.1/24 na ether2 (A-01)
  • Skonfigurowany DHCP i DNS na gw01 (A-02)
  • Adapter ether1 podłączony do NAT VirtualBox (WAN – dostęp do internetu)

Kroki

1. NAT masquerade (ruch LAN → Internet)

/ip firewall nat add chain=srcnat out-interface=ether1 action=masquerade comment="LAN-to-WAN masquerade"

Weryfikacja:

/ip firewall nat print
# Oczekiwane: chain=srcnat out-interface=ether1 action=masquerade

2. Reguły firewalla – ochrona WAN

Dodaj reguły w następującej kolejności (kolejność ma znaczenie w RouterOS):

# --- Reguły INPUT (ruch do samego routera) ---

# Akceptuj ustanowione i powiązane połączenia
/ip firewall filter add chain=input connection-state=established,related action=accept comment="accept established,related"

# Akceptuj ruch ICMP (ping do routera)
/ip firewall filter add chain=input protocol=icmp action=accept comment="accept ICMP"

# Porzuć niepoprawne pakiety
/ip firewall filter add chain=input connection-state=invalid action=drop comment="drop invalid"

# Zezwól na ruch z LAN (ether2) do routera (SSH, Winbox, DNS, DHCP)
/ip firewall filter add chain=input in-interface=ether2 action=accept comment="accept from LAN"

# Blokuj nieautoryzowany ruch z WAN do routera
/ip firewall filter add chain=input in-interface=ether1 action=drop comment="drop from WAN"


# --- Reguły FORWARD (ruch przez router) ---

# Akceptuj ustanowione i powiązane połączenia
/ip firewall filter add chain=forward connection-state=established,related action=accept comment="accept established,related"

# Porzuć niepoprawne pakiety
/ip firewall filter add chain=forward connection-state=invalid action=drop comment="drop invalid"

# Zezwól na ruch z LAN do WAN
/ip firewall filter add chain=forward in-interface=ether2 out-interface=ether1 action=accept comment="LAN to WAN"

# Zezwól na ruch między VM w LAN
/ip firewall filter add chain=forward in-interface=ether2 out-interface=ether2 action=accept comment="LAN to LAN"

3. Konfiguracja klienta NTP

/system ntp client set enabled=yes servers=0.pl.pool.ntp.org,1.pl.pool.ntp.org

Weryfikacja:

/system ntp client print
# status: synchronized

4. Eksport konfiguracji (do pliku backup)

/export file=gw01-config-backup

Plik gw01-config-backup.rsc pojawi się w pamięci RouterOS. Możesz go pobrać przez WinBox (Files) lub SCP.


Weryfikacja

# Reguły NAT
/ip firewall nat print

# Reguły firewalla (lista z numerami)
/ip firewall filter print

# Test internetu
/ping address=8.8.8.8 count=3

Z VM w sieci biuro-lan:

ping 8.8.8.8
# Oczekiwane: odpowiedź (NAT działa)

curl -s https://ifconfig.me
# Zwraca publiczny adres IP hosta (VirtualBox)

Typowe błędy i rozwiązania

ObjawPrzyczynaRozwiązanie
Ping do internetu nie działa mimo reguły masqueradeBrak trasy domyślnej lub błędny adapter WAN/ip route print – sprawdź trasę 0.0.0.0/0 przez ether1; /ip address print – sprawdź, czy ether1 ma adres z VirtualBox NAT
Firewall blokuje ruch LANZłe kolejność reguł – reguła DROP przed ACCEPT/ip firewall filter print – reguły accept dla ether2 muszą być przed regułami drop; przesuń regułę numerem 0 jeśli potrzeba
SSH z LAN do routera blokowaneBrak reguły accept from LAN lub zły interfejsSprawdź, czy reguła in-interface=ether2 action=accept jest na liście i czy ether2 to prawidłowy interfejs LAN
NTP nie synchronizujeBrak dostępu do internetu lub serwery NTP niedostępneSprawdź /system ntp client printstatus; przetestuj ping do 0.pl.pool.ntp.org

Powiązane artykuły