Стукіт портами MikroTik з iPhone, iPad і Mac
RouterOS не має демона стуку, але його фаєрвол може поетапно обробляти стук через списки адрес: кожен відповідний пакет додає джерело до списку, а останній список відкриває Winbox або SSH. Secret Knock надсилає обидва типи стуку MikroTik — портами та розмірами ping-пакетів.
Стук портами
Три спроби з’єднання в заданому порядку переміщують адресу зі списку до списку; лише адреса в останньому списку отримує доступ до Winbox (8291). Розмістіть ці правила перед будь-яким правилом, що відкидає вхідний трафік.
/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" Стук розмірами ping-пакетів
RouterOS також може зіставляти розмір ICMP echo-запитів. packet-size — це весь пакет IPv4: 20 байтів заголовка IP, 8 байтів заголовка ICMP і дані ping, тож дані розміром 100 байтів надходять як 128. У редакторі ping у Secret Knock ви вводите розмір даних; програма показує підсумкові розміри пакетів ICMP, IPv4 та IPv6 і попереджає про розмір понад 1280 байтів, за якого пакети можуть фрагментуватися.
/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 Додайте двері в програмі
- 1Нові двері › Почати з шаблону › MikroTik — послідовність портів або MikroTik — розміри ping-пакетів. В обох шаблонах Winbox (8291) установлено як порт для перевірки.
- 2Введіть свої порти або розміри даних і кількість ваших ping-пакетів.
- 3Надішліть Стукіт, дочекайтеся статусу «Двері прочинено», а тоді відкрийте Winbox.
Усі приклади на GitHub → Усі конфігурації з цієї сторінки, готові до копіювання: github.com/mobilcomm/secretknock-examples (суспільне надбання).
Запитання
Чому мій стук MikroTik не відкриває доступ?
Перевірте порядок правил (правила стуку мають стояти перед правилом відкидання), час очікування address-list і те, чи маршрутизатор бачить адресу, з якої ви стукаєте — Secret Knock показує її на головному екрані.