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
gw01z adresem192.168.50.1/24naether2(A-01) - Skonfigurowany DHCP i DNS na
gw01(A-02) - Adapter
ether1podłą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
| Objaw | Przyczyna | Rozwiązanie |
|---|---|---|
| Ping do internetu nie działa mimo reguły masquerade | Brak 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 LAN | Zł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 blokowane | Brak reguły accept from LAN lub zły interfejs | Sprawdź, czy reguła in-interface=ether2 action=accept jest na liście i czy ether2 to prawidłowy interfejs LAN |
| NTP nie synchronizuje | Brak dostępu do internetu lub serwery NTP niedostępne | Sprawdź /system ntp client print → status; przetestuj ping do 0.pl.pool.ntp.org |