Gå til innhold
Secret Knock

MikroTik-portbanking fra iPhone, iPad og Mac

RouterOS har ingen knock-daemon, men brannmuren kan dele opp en bankesekvens gjennom adresselister: Hver pakke som samsvarer, legger kilden på en liste, og den siste listen åpner Winbox eller SSH. Secret Knock sender begge typer MikroTik-banking — porter og pingstørrelser.

Bank med porter

Tre tilkoblingsforsøk i riktig rekkefølge flytter adressen fra liste til liste. Bare en adresse på den siste listen når Winbox (8291). Plasser disse reglene over enhver regel som forkaster innkommende trafikk.

/ip firewall filter
add chain=input protocol=tcp dst-port=4311 action=add-src-to-address-list \
    address-list=knock-1 address-list-timeout=10s comment="knock 1"
add chain=input protocol=tcp dst-port=5822 src-address-list=knock-1 \
    action=add-src-to-address-list address-list=knock-2 address-list-timeout=10s comment="knock 2"
add chain=input protocol=udp dst-port=6133 src-address-list=knock-2 \
    action=add-src-to-address-list address-list=knocked address-list-timeout=1h comment="knock 3"
add chain=input protocol=tcp dst-port=8291 src-address-list=knocked action=accept comment="Winbox after the knock"
add chain=input protocol=tcp dst-port=8291 action=drop comment="Winbox for everyone else"
RouterOS-terminal

Bank med pingstørrelser

RouterOS kan også samsvare med størrelsen på ICMP-ekkoforespørsler. packet-size er hele IPv4-pakken: 20 byte med IP-hode, 8 byte med ICMP-hode og pingdataene, slik at 100 byte med data kommer frem som 128. I pingredigereren i Secret Knock angir du datastørrelsen. Den viser de resulterende pakkestørrelsene for ICMP, IPv4 og IPv6, og advarer over 1280 byte, der pakker kan bli fragmentert.

/ip firewall filter
add chain=input protocol=icmp packet-size=128 action=add-src-to-address-list \
    address-list=ping-1 address-list-timeout=10s comment="ping 100 bytes of data"
add chain=input protocol=icmp packet-size=308 src-address-list=ping-1 \
    action=add-src-to-address-list address-list=knocked address-list-timeout=1h comment="ping 280 bytes of data"
add chain=input protocol=tcp dst-port=8291 src-address-list=knocked action=accept
add chain=input protocol=tcp dst-port=8291 action=drop
RouterOS-terminal

Legg til døren i appen

  1. 1Ny dør › Start med en mal › MikroTik-portsekvens eller MikroTik-pingstørrelser. Begge angir Winbox (8291) som porten som skal kontrolleres.
  2. 2Angi portene dine eller datastørrelsene og antallet for pingene dine.
  3. 3Bank, vent på Dør på gløtt, og åpne deretter Winbox.

Alle eksempler på GitHub → Alle konfigurasjonene på denne siden, klare til å kopiere: github.com/mobilcomm/secretknock-examples (public domain).

Spørsmål

Hvorfor åpnes ikke porten etter MikroTik-bankingen min?

Kontroller rekkefølgen på reglene (bankereglene må komme før forkastingsregelen), tidsavbruddene for address-list, og at ruteren ser adressen du banker fra — Secret Knock viser den på appens startskjerm.

Veiledninger for oppsettet ditt