Эффективная "базовая" защита RDP. Часть 2.

Учитывая нашу предыдущую беседу о важности паролей и логинов, предлагаю рассмотреть еще один способ усилить защиту нашего открыто доступного RDP в сети Интернет за минимальное время, не более полутора часов.

Для достижения этой цели, предлагаю рассмотреть возможность внедрения широко известной программы IPBAN от Jeff Johnson: https://github.com/jjxtra. Основное преимущество - она бесплатная (или, по максимуму, имеет небольшие затраты), а её использование весьма просто.

Единственное, на что стоит обратить внимание - при моих наблюдениях, вне зависимости от того, указываю ли 3 попытки для блокировки или 5, блокировка начинается уже после пятой попытки (возможно, это связано с версией, которую использовал - 1.8.0). Однако, возможно, это даже лучше: если предположить, что пользователю предоставляется 3 попытки, а оставшиеся 2 могут быть использованы для обращения к системному администратору с запросом на сброс пароля.

Для начала необходимо скачать программу в соответствии с операционной системой: 

https://github.com/DigitalRuby/IPBan/releases 

Пока архив загружается, настраиваем локальную политику безопасности. Для этого можно воспользоваться поиском в панели задач, введя "локаль..." или "secpol.msc" (если поиск недоступен, можно воспользоваться сочетанием клавиш WIN+R, затем ввести secpol.msc и нажать Enter). Затем переходим во вкладку "Локальная политика" и выбираем "Политика аудита". В локальных политиках включаем аудит входа в систему и аудит событий входа в систему, отмечая "Успех" и "Отказ" для обеих политик, после чего нажимаем "ОК":


Скачанный архив уже должен быть доступен. Распакуйте его на любом диске, предпочтительно в корневой директории, чтобы упростить путь к установке. Предпочел извлечь его в папку с именем "ipb" на диске C:

Теперь запускаем командную строку от имени администратора вставляем команду:

sc.exe create IPBAN type=own start=delayed-auto binPath=c:\ipb\DigitalRuby.IPBan.exe DisplayName=IPBAN

Важно! Обратите внимание, что процесс настройки описан для Windows Server 2019, но IPBAN также должен корректно работать на Server 2012 и более поздних версиях. Если у вас установлена версия 2008/2008R2, то процесс может быть сложнее, и на старых версиях IPBAN может не работать так адекватно. Пожалуйста, учитывайте, что у меня нет возможности проверить настройку на версии 2008, так как самый старый сервер у меня на 2012. Применяйте эти инструкции на свой страх и риск.

Ещё раз подчеркиваю, что нижеприведенные действия применимы ТОЛЬКО к версиям 2008/2008R2, и не рекомендуется запрещать NTLM на более новых версиях ОС Windows Server.

Перед началом внесения изменений, настоятельно рекомендую убедиться, что у вас есть физический доступ к серверу или проверьте работоспособность сторонних программ для удаленного подключения, таких как Anydesk, TeamViewer или аналоги.

В командной строке с правами администратора, введите следующую команду:

sc create IPBAN binPath= c:\ipb\DigitalRuby.IPBan.exe DisplayName= "IPBAN"

Далее, необходимо запретить использование протокола NTLM и ограничить доступ к общим папкам на сервере для систем Windows XP и Windows 7.

Откройте редактор групповых политик, набрав в командной строке gpedit.msc, и перейдите по следующему пути:

Конфигурация компьютера > Конфигурация Windows > Политики безопасности > Локальные политики > Параметры безопасности > Сетевая безопасность: ограничения NTLM: входящий трафик

Выбираем опцию "Запретить все учетные записи" и надеемся, что это не вызовет неполадок.

Теперь можно вернуться к более новым операционным системам или продолжить настройку на "старом" сервере.

После ввода команды и нажатия Enter, результат должен быть следующим (не забудьте заменить путь на ваш, у меня C:\ipb):

Теперь необходимо настроить параметры IPBAN в соответствии с нашими потребностями. Для этого открываем файл ipban.config (находится по пути C:\ipb\ipban.config) в текстовом редакторе и последовательно выполняем следующие шаги.

1. Добавим исключение для нашей локальной сети (например, сеть 192.168.1.*). Найдем строку, содержащую <add key="Whitelist" value= и добавим следующее:

<add key="Whitelist" value="192.168.1.0/24"/> 
2. Укажем количество попыток для входа в систему. В данном случае , устанавливаем 3 попытки (обратите внимание, что в реальности у меня работает 6 попыток, но для более точной и надежной работы можно воспользоваться платными программами с хорошей поддержкой). Найдем строку FailedLoginAttemptsBeforeBan и укажем количество попыток перед блокировкой:

<add key="FailedLoginAttemptsBeforeBanUserNameWhitelist" value="3"/>

3. По умолчанию бан длится сутки, но если вы хотите изменить это, найдите параметр ExpireTime и установите нужный период блокировки. В данном примере, установлю 10 часов:

<add key="ExpireTime" value="00:10:00:00"/>

Сохраните внесенные изменения в файл ipban.config. Теперь осталось запустить созданную службу и, при необходимости, добавить ее в автозапуск. Перед запуском убедитесь, что активен брандмауэр Windows. Если используется сторонний брандмауэр, например, встроенный в антивирусное программное обеспечение, IPBan может не работать.

Для этого выполните следующие шаги:

1. Откройте "Службы" (Services). Найдите в списке службу "IPBan". Если вы видите ее в списке, выполните следующий шаг. Если нет, убедитесь, что вы правильно создали службу и указали правильный путь к исполняемому файлу.

2. Для первого запуска рекомендуется просто запустить службу IPBan. После запуска следите за ее работой и убедитесь, что она функционирует корректно. Если в течение нескольких дней не возникнет проблем, можно решить добавить службу в автозапуск.

Выберите соответствующий пункт автозапуска в зависимости от вашей операционной системы и настроек.


Как только служба успешно запущена, автоматически будут созданы соответствующие правила в брандмауэре Windows. Вы сможете просматривать список заблокированных IP-адресов и при необходимости удалить ненужные записи. Это полезно в случае, если возникнет ситуация с "особым сотрудником", и вы захотите снять блокировку с его IP-адреса, не ожидая окончания заданного периода блокировки.

Данная заметка, является переосмыслением, переработкой и систематизацией статьи-оригинал, которая также попала на Хабр в полностью переработанном виде.

Дополнительный материал по теме, с которым стоит ознакомиться:

Отправить комментарий

Новые Старые