Скрипт, который анализирует логи Mikrotik. Если попадается сообщение о подключении с неправильным паролем - добавляется правило в access-list, которое запрещает данному клиенту (по MAC) подключатся к всем нашим беспроводным интерфейсам.
:local pop 4 :local mac :local wifi [/log find message~"disconnected, unicast key exchange timeout"]foreach i in=$wifi do={ :set mac [:pick [/log get $i message ] 0 ([:len [/log get $i message ]]-50)] #:log warning $mac if ([:len [/log find message~($mac . "@wlan1: disconnected, unicast key exchange timeout")] ] >= $pop) do={ if ([/interface wireless access-list find mac-address=$mac] = "" ) do={ /interface wireless access-list add mac-address=$mac authentication=no interface=all } } } #:log warning "FINISH"
Скрипт в планировщик с запуском каждые N минут. Для того, чтобы в бан не попадали разрешённые устройства - заранее добавляем их в Access List.
RouterOS не поддерживает WPS PIN, только WPS PBC
зато есть возможность PMKID-атаки, так как наверняка не все знают об этом, что есть возможность это отключить
Какие методы защиты?
/interface wireless security-profiles set disable-pmkid=yes