Я пытаюсь заблокировать определенные ips от подключения к моему сервису. Некоторые люди атакуют мои сервисы, и я надеялся автоматически заблокировать их IP при обнаружении атаки. Вот как я это реализую:

command is  netsh advfirewall firewall delete rule name="packet flooder 172.20.10.9" remoteip=172.20.10.9

Deleted 2 rule(s).
Ok.

command is  netsh advfirewall firewall add rule name="packet flooder 172.20.10.9" dir=in action=block remoteip=172.20.10.9
Ok.

command is  netsh advfirewall firewall add rule name="packet flooder 172.20.10.9" dir=out action=block remoteip=172.20.10.9
Ok.

Я проверяю это с помощью атакующего на моем ПК, атакующего сервис на моем ПК. К сожалению, атака все еще проходит после обнаружения и включения правил.

Я ожидал, что как только атака будет обнаружена и правила добавлены в брандмауэр, следующая атака не будет работать, но это не так.

У моего сервиса есть правило, разрешающее все входящие подключения к нему.

Что я делаю неправильно? Почему это не работает? Это потому, что я тестирую это как локально? (служба и злоумышленник) Это потому, что я уже разрешил все входящие соединения, которые не учитывают специфический для блока IP-адрес? Это потому, что я удаляю правило перед его созданием? (Я пытаюсь убедиться, что это не дублируется)

Я использую последний сервер Windows.


ОБНОВИТЬ

0