Защита Windows server с помощью Mikrotik - нужен powershell
Добавлено: 02 мар 2021, 18:03
Добрый день уважаемое сообщество!
Обращаюсь к «всемирному разуму» для решения одной и может интересной именно для Вас задачей.
Задача: защита windows server с опубликованным доступам наружу.
У всех есть сервера, у большинства они имеют доступ из сети интернет. Мы будем рассматривать доступ к RDP по порту 3389, но данный проект, не ограничивается именно этим приложением и этим портом, его можно будет применять и на другие порты. Не будем тут обсуждать именно номер порта и так понятно, что он меняется. Но рано или поздно, хакеры его вычислять и начнут «долбать» сервер.
Конечно, многие мне тут скажут, что есть защита от Брутфорса правилами Mikrotika, ограничивать количество соединений от одного IP адреса по времени и так далее… Со всеми согласен и применяю такие решения на практике, они решают свои задачи но опять же не в полной мере, все равно, прилетают запросы на сервер.
Я буду рассматривать другую задача: мгновенная блокировка IP адреса на Mikrotik считывая журнал безопасности в Windows server (2012r2 – 2019).
Схема такова:
Хакер, подключается к серверу с фейковым логин и паролем, Windows server регистрирует данное событий и заносит в «журнал событий -> журнал windows -> безопасность» с кодом 4625. Привяываем к данному событию задачу которая выдаст нам IP адрес атакующего.
Отступление :
1. У многих не высвечивается ip адрес в журнале событий. Да, есть такое в windows server начиная с 2012 и по сей день, но это, если вы выставили его на прозрачном сервере. Если вы, поместите Mikrotik между интернетом и windows server, то чудесным образом, получаете IP адрес атакующего.
2. Бывает случайно сотрудник ввел не правильно пароль, это можно проигнорировать и установив количество неудачных попыток в течении ХХ минут.
Получаем список IP адресов в разных форматах в текстовом файле: или или же оставляем в скрипте для дальнейшей обработки.
Далее:
Из самой Винды, посредствам PowerShell скрипта, подключаемся к Mikrotik и заносим эти IP адреса в «/ip/firewall/address-list/» в группу которую ДРОПаем на уровне Firewall в самом Mikrotik.
Отступление :
1. Да, есть возможность на уровне Windows Firewall блокировать доступ к серверу из этих ip адресов. Но, мне как-то не очень хочется, чтобы хакеры вообще попадали за приделы Mikrotik. Тем более, что у некоторых есть и другие сервера.
Вот такая задача.
Выкладываю скрипт для windows server, который отлавливает делает выборку IP адресов из журнала. Что нужно ?
А нужно:
Скрипт powershell, который будет эту выборку брать, соединяться с Mikrotik ( можно по SSH или Telnet), и автоматически добавлять в Mikrotik «ip/firewall/address-list/» эти IP адреса для блокировки.
IP адреса можно брать как с файла TXT который находится на диске сервера или продолжать работать в самом скрипте (что было бы лучшем решением).
Обращаюсь к «всемирному разуму» для решения одной и может интересной именно для Вас задачей.
Задача: защита windows server с опубликованным доступам наружу.
У всех есть сервера, у большинства они имеют доступ из сети интернет. Мы будем рассматривать доступ к RDP по порту 3389, но данный проект, не ограничивается именно этим приложением и этим портом, его можно будет применять и на другие порты. Не будем тут обсуждать именно номер порта и так понятно, что он меняется. Но рано или поздно, хакеры его вычислять и начнут «долбать» сервер.
Конечно, многие мне тут скажут, что есть защита от Брутфорса правилами Mikrotika, ограничивать количество соединений от одного IP адреса по времени и так далее… Со всеми согласен и применяю такие решения на практике, они решают свои задачи но опять же не в полной мере, все равно, прилетают запросы на сервер.
Я буду рассматривать другую задача: мгновенная блокировка IP адреса на Mikrotik считывая журнал безопасности в Windows server (2012r2 – 2019).
Схема такова:
Хакер, подключается к серверу с фейковым логин и паролем, Windows server регистрирует данное событий и заносит в «журнал событий -> журнал windows -> безопасность» с кодом 4625. Привяываем к данному событию задачу которая выдаст нам IP адрес атакующего.
Отступление :
1. У многих не высвечивается ip адрес в журнале событий. Да, есть такое в windows server начиная с 2012 и по сей день, но это, если вы выставили его на прозрачном сервере. Если вы, поместите Mikrotik между интернетом и windows server, то чудесным образом, получаете IP адрес атакующего.
2. Бывает случайно сотрудник ввел не правильно пароль, это можно проигнорировать и установив количество неудачных попыток в течении ХХ минут.
Получаем список IP адресов в разных форматах в текстовом файле: или или же оставляем в скрипте для дальнейшей обработки.
Далее:
Из самой Винды, посредствам PowerShell скрипта, подключаемся к Mikrotik и заносим эти IP адреса в «/ip/firewall/address-list/» в группу которую ДРОПаем на уровне Firewall в самом Mikrotik.
Отступление :
1. Да, есть возможность на уровне Windows Firewall блокировать доступ к серверу из этих ip адресов. Но, мне как-то не очень хочется, чтобы хакеры вообще попадали за приделы Mikrotik. Тем более, что у некоторых есть и другие сервера.
Вот такая задача.
Выкладываю скрипт для windows server, который отлавливает делает выборку IP адресов из журнала. Что нужно ?
А нужно:
Скрипт powershell, который будет эту выборку брать, соединяться с Mikrotik ( можно по SSH или Telnet), и автоматически добавлять в Mikrotik «ip/firewall/address-list/» эти IP адреса для блокировки.
IP адреса можно брать как с файла TXT который находится на диске сервера или продолжать работать в самом скрипте (что было бы лучшем решением).