Защита удаленного рабочего стола от подбора пароля server 2008

Инструкция по защите RDP подключения

В этой инструкции описаны рекомендуемые действия по защите Вашего сервера.

Переименуйте стандартную учетную запись администратора

Нажмите Win + X
и выберите «Управление компьютером»:

Затем выберите «Локальные пользователи» —→ «Пользователи» —→
кликните правой кнопкой мыши по имени пользователя «Администратор»
и выберите «Переименовать»:

Переименуйте пользователя и используйте это имя для последующих подключений к удаленному рабочему столу.

Блокировка RDP-подключений для учетных записей с пустым паролем

Усилить безопасность можно запретив подключаться к учетным записям с пустым паролем. Для этого нужно включить политику безопасности «Учетные записи»: разрешить использование пустых паролей только при консольном входе»:

  1. Откройте локальную политику безопасности (нажмите Win + R
    и введите команду secpol.msc
    )

  2. Перейдите в раздел «Локальные политики»
    –-> «Параметры безопасности».

         3. Дважды щелкните на политике «Учетные записи: разрешить использование пустых паролей…»

и убедитесь, что она включена:

Вещь полезная, поэтому не оставляйте этот параметр без внимания.

Смена стандартного порта Remote Desktop Protocol

Не лишним будет сменить стандартный порт на котором работает протокол RDP. Как это сделать уже описано в наших инструкциях: Windows Server 2012 и Windows Server 2016.

Защита от буртфорса

Чтобы блокировать множественные попытки подключения с неверными данными, можно отслеживать журнал событий и вручную блокировать атакующие IP адреса посредством брандмауэра Windows или воспользоваться готовым приложением. Последний случай мы рассмотрим подробнее. 

Для блокировки атакующих IP адресов будем использовать свободно распратраняющееся ПО — IPBan. Это приложение проверено и работает в Windows Server 2008 и всех последующие версях. Windows XP и Server 2003 — не роддерживаются.  Алгоритм его работы простой: программа мониторит журнал событий Windows, фиксирует неудачные попытки входа в систему и, после 5-ти попыток злоумышленника подобрать пароль, блокирует IP адрес на 24 часа.

Итак:

  1. Cкачайте архив с программой здесь;
  2. В нем находятся два архива IPBan-Linux-x64.zip
    и IPBan-Windows-x86.zip,
     нам нужен последний. Распакуйте архив IPBan-Windows-x86.zip
    в любое удобное место (в примере это корень диска C:
    );
  3. Так как файлы скачанные с интернета система автоматически блокирует в целях безопасности, для работы приложения необходимо разблокировать все файлы. Щелкните правой кнопкой мыши на все извлеченные файлы и выберите свойства. Обязательно выберите «разблокировать», если этот параметр доступен. Либо, откройте окно PowerShell (Win + R,
    введитеpowershell

    и «ОК»)
     и воспользуйтесь командой следующего вида: 

    get-childitem “местоположение папки” | unblock-file -confirm
    

    Например:

 

     4. Вам нужно внести следующие изменения в локальную политику безопасности, чтобы убедиться, что в логах системы отображаются IP-адреса. Октройте «Локальную политику безопасности» (Win + R,
введите secpol.msc
и «OK
«). Перейдите  в «Локальные политики» —> «Политика аудита» и включить регистрацию сбоев для «Аудита входа в систему» и «Аудита событий входа в систему»:

     5. Для Windows Server 2008 или эквивалентного вам следует отключить логины NTLM и разрешить только NTLM2-вход в систему. В Windows Server 2008 нет другого способа получить IP-адрес для входа в систему NTLM. Октройте «Локальную политику безопасности» (Win + R,
введите secpol.msc
и «OK
«). Перейдите  в «Локальные политики» —> «Параметры безопасности» —> «Сетевая безопасность: Ограничения NTLM: входящий трафик NTLM» и установите значение «Запретить все учетные записи»:

     6. Теперь необходимо создать службу IPBan, чтобы приложение запускалось при старте системы и работало в фоновом режиме. Запустите оснастку PowerShell (Win + R,
введитеpowershell

и «ОК»)
и выпоните команду типа:

sc.exe create IPBAN type= own start= auto binPath= c:"Каталог с программой"IPBan.exe DisplayName= IPBAN

Например:

 Перейдите в службы (Win + R,
введите services.msc
и «OK
«) и з
апустите службу IPBAN

, в дальнейшем она будет запускаться автоматически:

В «Диспетчере задач» можно убедиться, что служба запущена и работает:

Таким образом, программа следит за неудачными попытками авторизации и добавляет неугодные IP адреса в созданное правило для входящих подключений брандмауэра Windows:

Заблокированные IP адреса можно разблокировать вручную. Перейдите на вкладку «Область» в свойствах правила «IPBan_0» и удалите из списка нужный Вам IP адрес:

RDP — защищаемся от взлома

RDP — Remote Desktop Protocol (Удаленный Рабочий Стол)

В первую очередь, здесь пойдет речь о StandAlone Server. То есть, об отдельно — стоящем сервере. А не о контроллерах домена и корпоративных сетях. (там как раз требуются высококвалифицированные специалисты)

Ситуация, когда тебе в голову пришла некая идея и ты решил ее воплотить в жизнь. И для ее реализации тебе необходимо наличие Сервера, который ты арендуешь в неком дата-центре.

Выбрал подходящий тариф, заплатил деньги и вот у тебя уже есть Сервер, на котором установлено необходимое тебе ПО. В большинстве случаев, для таких пробных проектов достаточно Windows 2003 Server. Вполне бюджетно и эффективно.

Техподдержка тебе выдаст IP адрес, Логин и Пароль для RDP доступа, и ты начинаешь свое путешествие, полное …, ну вообщем — мало не покажется.

По умолчанию, можно сказать, что этот сервис в Windows настроен так, чтобы доставить пользователю немало хлопот и проблем.

Ты начинаешь видеть и потом, возможно понимать.

С одной стороны — разработчики программного обеспечения делают вид, что они делают свои системы для обычного человека, и ты начинаешь этому верить.

Но с другой стороны — эти же разработчики, предполагают, что клавиатуру может взять в руки только сертифицированный специалист. И чтобы сертификат был этого года.

Такой вот парадокс.

Давай я расскажу тебе как все выглядит на самом деле.

А на самом деле, орды кулхацкеров прочитав дюжину строк на форумах скачивают готовые списки серверов у которых открыт RDP порт. И начинают ломиться на твою машину. Кто в ручную, (но это редко), а в основном разными программами, запуская словари по перебору: логин — пароль. И никто их ни в чем не ограничивает. Им там даже тесно порой.

Причем, я вот смотрю на логи, и вижу, что в большинстве своем, это одни и те же словари.

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

Ты же о великом думаешь. Стратегически, о функционале. А тут — какие то тормоза не понятные.

Поэтому, ты начнешь оптимизировать память, удалять временные переменные, дефрагментировать диски и т.д.

И может быть даже внимательно посмотришь на вкладку «События» в оснастке управления.

Так, что давай, для начала — поправим эту ситуацию и приведем систему в нормальный рабочий вид.

Что мы сделаем:

  1. Запретим доступ к серверу с более чем 3000 IP адресов, которые собственно говоря ничем другим не занимаются, кроме доставлять людям проблемы. Импортируем Черный Список.

Если ты от нечего делать сделаешь запросы в сети о настройке RDP, то встретишь очень много советов (и я сам долго был уверен, что они весьма эффективны, пока не решил провести эксперимент)

Суть массовых рекомендаций сводится к тому, (и это выгляди вполне логично и разумно), что необходимо:

Признаюсь, я очень обрадовался, когда нашел такие статьи, и тут же все сделал как надо. Был уверен, что вот теперь можно сосредоточиться на самом проекте, и не беспокоиться сильно за безопасность.

Однако.

Как были десятки тысяч попыток в течении суток. (а я не сижу уткнувшись в монитор целый день, но раз в день захожу проверить работоспособность своих приложений) Так все и осталось.

Однажды, пришлось переносить один свой проект с одного сервера на другой, по причине выхода из строя RAID массива. И старый сервер, в течении некоторого времени был мне доступен, но на нем можно было без опасений попробовать провести опасные и не очень эксперименты. Поэтому — я решил на нем проверить.

Для этого, в течении нескольких минут пытался залогиниться с неправильным паролем, ожидая, что вот сейчас меня система аутентификации заблокирует. Фигушки. Ничего не произошло.

Я потратил пару дней на более детальное изучение этой проблемы. Погрузился в мануалы и скудные комментарии. Все как один уверяют на форумах — такой способ супер эффективный.

И вот, что я теперь тебе скажу:

  • во первых — этот способ работает только под контроллером домена (не знаешь — что это такое? Плюнь — это тебе не надо) а для standalone server — нужно погрузиться в специальные знания и выучить заклинания.

Выходя из дома и заперев дверь — сломаю замок. Отморожу уши — назло Бабушке.

Но думаю, что расставание с такими иллюзиями — стоило пары дней мучений.

С преамбулой покончили. Давай займемся делом.

1. Ограничим количество разрешенных одновременно открытых сеансов.

Находим и открываем оснастку «Terminal Services Configuration»:

В этой оснастке выбираем открываем в «свойствах» RDP-Tcp вкладку [Network Adapter], где и ограничиваем «Msximum Connections» до 2х, для всех сетевых адаптеров.

2. Включаем отображение неудачных попыток входа в оснастке «Events».

Находим и открываем оснастку «Local Security Settings»  и в ней — раздел: «Audit Policy»:

И изменяем значения свойств всех записей «Audit» — как показано на скриншоте. Надо будет затем перезагрузиться, чтобы изменения стали активны.

Можно подождать и через несколько часов посмотреть на теперь уже реальную картину, чтобы осмыслить в каком мире мы живем, и кто нас в действительности окружает.

3. Запрещаем доступ к серверу от 100% зловредных IP адресов. Импортируем Черный Список.

Тут у тебя 2 варианта:

  • Быстрый и сразу все.
  • Ручной, с пониманием, что именно ты делаешь.
Быстрый способ.
  1.  Заходишь на страницу Download BlackList и скачиваешь Пакетное обновление.
  2. Загружаешь файл пакетного обновления на свой Сервер.
  3. Открываешь оснастку «Local Security Settings», Меню [All Tasks], раздел «Import Policies» и указываешь на загруженный файл. Жмешь [OK]

После чего, у тебя должно получиться вот так:

 Ручной способ, с пониманием.
  1. Вначале, необходимо создать дополнительную политику. Открываешь оснастку «Local Security Settings».
  2. Выбираешь раздел «IP Security Policies on Local Computer» и правой кнопкой: «Create IP Security Policy…»  запускаешь Мастер настройки.
  3. Придумываешь имя для нового Правила. Например: «Block IP».
  4. Дальше, на все вопросы жми [Next] и в завершении у тебя будет форма для редактирования свойств Политики.
  5. Добавляем новое Правило. Жмем [Add]. и если стоит галочка Wizard, то запустится еще один Мастер, на вопросы которого нужно ответить.
  6. Tunnel Endpoint.  жми [Next]
  7. Network Type. Там уже стоит «All network connections».  жми [Next]
  8. IP Filter List. Добавляем новый Фильтр. Жмем [Add] и придумываем осмысленное Имя. Например: Block brute forcing IP. Список у него пока, что пустой. Сохраняем как есть.жми [Next].
  9.  Добавляем Filter Action. Создаем [Add] новое действие, например с названием: Block Access, выбрав метод = Block.жми [Next].
  10. В результате, у тебя получится новая Политика, с новым Фильтром.жми [OK]
  11. Осталось только активировать ее. Правой кнопкой мыши жми на новом Правиле и выбирай «Assign»После чего, новой Правило обретет зелененький индикатор.
  12. И вот только теперь — можно вводить в новое Правило «Block IP» новые IP адреса для блокировки. (Кликни по нему и дальше если ты все это проделал внимательно, то разберешься где нажать «Edit», а где «Add».

Читайте вторую часть об RDP: RDP — DDoS

Читайте третью часть об RDP: RDP — «Долговременная Распределенная Атака Супер — Короткими Уникальными Сеансами»

  • Ссылка на основную публикацию