Windows server как настроить безопасность

Делаем Windows Server безопаснее

В этой статье автор хотел бы дать пару хороших советов по администрированию серверов на Windows, которые по какой-то причине не нашел в интернете.

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

1. Правильно вводим компьютер в AD

Не используйте пользователей с административными привилегиями для ввода компьютеров в Active Directory. Никто не гарантирует того, что на компьютере сотрудника уже не появился Keylogger. Имея же отдельную учетную запись. Злоумышленник похитивший учетные данные сможет только добавить в AD еще компьютеров.

1.1. Создаем нового пользователя

Для этого нужно перейти в ADUC (Active directory users and Computers). Нажать на пустое место в папке Users and Computers и создать пользователя. Для простоты назовем его JoinAdmin.

1.2. Делегируем полномочия

После того, как пользователь был создан, ему нужно назначить полномочия. Для этого нужно нажать ПКМ по папке «Users» и выбрать «Delegate Control». Жмём «Далее» и выбираем нашего админа.

Мы хотим чтобы пользователь выполнять только одну функцию, поэтому выбираем второй вариант.

Далее выбираем «Computer objects» и все его подпункты.

Используйте этого юзера и не беспокойтесь о том, что кто-то мог украсть пароль от администратора.

2. Controlled folder access

В Windows Server 2019 появилась очень недооцененная возможность — controlled folder access. Она запрещает доступ к записи программам, которых нет в белом списке на выбранных папках или разделах.

Её включение поможет защитить данные от вирусов-шифровальщиков даже если ваш сервер был заражен. Однако это не обезопасит ваши данные от похищения, их можно будет прочитать.

Включить функцию можно в центре безопасности Windows или через Powershell:

Добавляем разрешенные программы:

Разрешенные программы можно добавить через центр безопасности Windows, а через Powershell нужно вводить полный путь до исполняемых файлов через запятую.

Добавляем защищенные папки:

Папки добавляются ровно так же, как и программы. К примеру этой командой мы добавляем диск C: целиком:

3. SYSWOW64 и SMB

Все 32 битные программы работают на 64 битных через слой совместимости — SYSWOW64. Отключение этого компонента делает несовместимым все 32 битное ПО, в том числе и вирусы.

Сами по себе 32 битные приложения более уязвимые, 64-битные программы не поддаются атаке на переполнение буфера и через них гораздо труднее исполнить код который этими программами не предусмотрен. Если на сервере работают только встроенные компоненты или только 64 битные программы, обязательно удалите этот компонент.

А помните Wannacry, который гулял через SMB1? SMB первой версии до сих пор является стандартным компонентом Windows Server и установлен по умолчанию в каждой редакции.
Wannacry проникал через уязвимость EternalBlue, уязвимость пропатчили, но осадочек остался.
Эта команда удалить и SMB1 и SYSWOW64:

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

4. Отключите ping

По умолчанию компьютер под управлением Windows отвечает на ICMP только в локальной сети. Отключение ICMP немного повышает безопасность вашего сервера. Отчасти, это обусловлено тем, что на форумах кулхацкеров и других script kiddie существуют руководства, как нужно искать цели, которые можно брутфорсить.

Для того, чтобы показать что вы выиграете, если отключите ICMP, было создано два сервера. На обоих из них был открыт RDP, однако один из серверов не отвечал на ICMP.

Как можно видеть из скриншота, это остановило не всех, но многих. Собрать данные о том, насколько сильно хотят взломать вас, можно этим скриптом:

Вы все еще сможете мониторить ваш сервер, к примеру, проверяя доступность определенного порта:

5. Не все имена одинаково хороши

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

Если вы устанавливаете службы удаленных рабочих столов, настоятельно рекомендуем вам избегать этих имен. В сочетании со слабым паролем, можно гарантировать быстрый взлом учетной записи.

Для вашего удобства, список «плохих» имен был переписан в таблицу:

Попыток взлома Имя учетной записи
40 ИРИНА
41 HOME
42 SKLAD
42 sqlserver
42 SYS
42 KASSA2
43 ADMIN1
43 ПК
45 ГОСТЬ
46 Host
46 Audit
49 USER3
54 TEST1
55 BUH2
66 ПОЛЬЗОВАТЕЛЬ
66 MANAGER
75 ADM
77 .NET.v.4.5
80 BUH1
86 BACKUP
89 BUH
90 АДМИН
100 1
116 SERVER
122 User2
128 ÀنىÈيÈًٌٍÀٍÎً
147 TEST
219 USER1
308 USER
330 ADMIN
9299 ADMINISTRATOR
13972 АДМИНИСТРАТОР
Читайте также:  Почему не работают передние стеклоподъемники ваз 2110

Получить такой же список на вашем сервере можно этим скриптом:

6. Очевидные вещи

Ну а закончим мы статью очевидными вещами:

  1. Создайте шлюз – Для управления большой инфраструктурой лучше всего обезопасить себя имея единую точку входа. Подробне.
  2. Устанавливайте обновления. В особенности, на боевые сервера.
  3. Отключите службы, которыми вы не пользуетесь – это лишняя площадь для атаки.
  4. Используйте Server Core, он имеет наименьшую площадь атаки и наименьшее количество перезагрузок при установке обновлений
  5. Сервер удаленных рабочих столов на несколько пользователей – плохая идея. Придерживайтесь принципа один человек или служба – один сервер.
  6. Делайте резервные копии и обязательно тестируйте их. Бэкап, который не был протестирован не является бэкапом.

Надеемся, первые пять пунктов были для вас полезны и интересны.

Предлагаем обновлённый тариф UltraLite Windows VDS за 99 рублей с установленной Windows Server 2019 Core.

Источник

Чек-лист безопасного Windows Server

Вопрос безопасности сервера был и будет актуальным. Рассмотрим базовые правила обеспечения безопасности серверов под управлением ОС семейства Window Server.

Регулярно устанавливать обновления операционной системы и установленного программного обеспечения.

В быту существует мнение, что Windows не нуждается в обновлениях и их вообще лучше отключить, якобы “чтобы система не тормозила”. Это одна из самых главных ошибок. Обновления важно устанавливать своевременно, особенно критические. Упрощает эту задачу специальная утилита, с которой можно ознакомиться на официальном сайте Центра обновления Windows.

Также важно поддерживать в актуальном состоянии установленное сопутствующее программное обеспечение, в том числе СУБД, различные фреймворки и прочее.

Использовать ПО из проверенных источников.

Рекомендуем перед загрузкой установочного пакета программного обеспечения, в том числе и Open Source, убедиться в надежности источника. Нередко бывает так, что визуально похожий на официальный сайт ресурс, распространяет уже скомпрометированое ПО. В пакет установки может быть добавлен файл с вредоносным кодом.

Грамотно настроить межсетевой экран.

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

Чем меньше TCP/UDP портов доступно извне, тем меньше шансов провести атаку на сервер. В этом вопросе важно разобраться что блокировать. Если речь идет о web-сервере, то доступными необходимо оставить 80 и 443 TCP-порты (эти порты служба слушает по умолчанию).

Это были публичные порты, но не стоит забывать, что существуют порты, доступ к которым должен предоставляться по принципу “белого” списка, т.е. только определенному кругу лиц. Пример портов:

  • 3389 — RDP (Remote Desktop Protocol);
  • 135-139 — NetBIOS;
  • 445 — Samba (общий доступ к файлам и папкам);
  • 5000 — 5050 — FTP в пассивном режиме;
  • 1433 — 1434 — порты SQL;
  • 3306 — стандартный порт MySQL;
  • 53 — DNS

Создать правило не сложно. Открываем Пуск → Панель управления → Система и безопасность → Администрирование → Брандмауэр Windows в режиме повышенной безопасности.

В окне программы кликаем правой кнопкой мыши по “Правила для входящих подключений”. В открывшемся контекстном меню выбираем “Создать правило...”.

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

Использовать несколько аккаунтов администратора.

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

Использовать учетную запись пользователя с ограниченными правами.

Для выполнения повседневных задач не всегда требуется использовать учетную запись с правами администратора. Рекомендуем создать учетную запись с ограниченными правами. В случае если учетная запись будет скомпрометирована, злоумышленнику придется постараться чтобы получить права администратора. Также, подобная мера может помочь спасти сервер от собственных действий.

В случае несанкционированного доступа под учетной записью администратора, злоумышленник получит полный доступ к системе.

Ограничить общий доступ к файлам и папкам, включить защиту паролем.

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

Кроме использования парольной защиты, рекомендуем ограничить разных пользователей в уровне доступа как к файлам, так и папкам (чтение, запись, изменение).

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

При использовании физического сервера (не удаленного и не виртуального), рекомендуется включить запрос пароля пользователя при выходе из режима ожидания. Данный параметр настраивается в панели управления: Панель управления → Все элементы панели управления → Электропитание.

Читайте также:  Слот под озу не работает

Также важно установить лимиты бездействия пользователя, а “по возвращении” запросить пароль. Это исключит возможность входа другого лица от имени пользователя, в случае если тот отлучился или забыл закрыть RDP-сессию. Чтобы настроить этот пункт, следует воспользоваться настройкой локальных политик secpol.msc.

Использовать Мастер настройки безопасности.

Мастер настройки безопасности (SCW – Security Configuration Wizard) позволяет создавать XML-файлы политик безопасности, которые впоследствии, можно перенести на другие серверы. Эти политики включают в себя не только правила использования сервисов, но и общие параметры системы и правила Firewall.

Корректно настроить политики безопасности.

Кроме первоначальной настройки групповых политик Active Directory, периодически следует проводить их ревизию и повторную настройку. Это один из основных способов обеспечения безопасности Windows-инфраструктуры.

Для удобства управления групповыми политиками, можно воспользоваться не только встроенной в Windows Server утилитой «gpmc.msc», но и предлагаемую Microsoft утилиту «Упрощенные параметры настройки безопасности» (SCM-Security Compliance Manager).

Использовать локальные политики безопасности.

Кроме использования групповых политик безопасности Active Directory следует использовать и локальные политики, которые затрагивают права как удаленных пользователей, так и локальные аккаунты.

Для управления локальными политиками вы можете использовать соответствующую оснастку «Локальная политика безопасности», вызываемую командой secpol.msc из Пуск -> Выполнить (клавиша Windows + R).

Защитить службу удаленных рабочих столов (RDP).

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

Наличие пользователей без паролей недопустимо, но если этого миновать не удается, то можно хотя бы запретить подключение к RDP. Для этого открываем Пуск → Средства администрирования.

В открывшемся каталоге, запускаем Локальная политика безопасности.

В окне локальный политик безопасности, слева, выбираем Локальные политики → Параметры безопасности. В основной части окна, находим “Учетные записи: Разрешить использование пустых паролей только при консольном входе”.

Выбираем этот пункт двойным кликом и переводим переключатель в положение “Отключен”. Нажимаем кнопку “OK”.

2. Поменить стандартный TCP-порт RDP.

Замена номеров TCP-портов стандартных сервисов на другие значения, вполне может повысить безопасность сервера, главное не забыть новый номер порта.

Для замены порта:

1. открываем редактор Реестра Windows — Windows + R

2. На всякий случай, создаем резервную копию реестра (Файл → Экспорт)

3. Разворачиваем ветку HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp и, в правой доле окна, находим параметр PortNumber.

4. Открываем параметр двойным кликом мыши. В открывшемся окне выбираем Систему исчисления: Десятичная, указываем новое значение порта, нажимаем кнопку “OK” и закрываем окно редактора реестра.

5. Чтобы была возможность подключиться к серверу, создаем соответствующее правило для Брандмауэра Windows. Кликаем правой кнопкой мыши по “Правила для входящих подключений”, в контекстном меню выбираем “Создать правило”.

В окне “Мастера”, выбираем “Для порта”

Затем выбираем “Протокол TCP”, “Определенные локальные порты” и указываем новый номер порта.

Следующим шагом выбираем “Разрешить подключение”

Настраиваем для каких сетей будет действовать правило, нужное отмечаем галками.

На итоговом шаге, указываем название правила и описание к нему.

6. Перезагружаем сервер чтобы применить изменения.

7. Для подключения к удаленному рабочему столу теперь используем IP-адрес или доменное имя, а через двоеточие указываем порт.

Настроить шлюз службы терминалов.

Служба “Шлюз TS (служб удаленных рабочих столов)” позволяет обезопасить подключение к удаленному рабочему столу путем использования протокола HTTPS(SSL), тем самым избавляя системного администратора от необходимости настройки VPN. Инструмент способен комплексно контролировать доступ к машинам, а также устанавливать правила авторизации и требования к удаленным пользователям, например:

  • Пользователи или группы пользователей, которым разрешено подключаться к внутренним сетевым ресурсам;
  • Сетевые ресурсы, к которым могут подключаться пользователи;
  • Должны ли клиентские компьютеры иметь членство в Active Directory;
  • Необходимо ли клиентам использовать проверку подлинности на основе смарт-карт или пароля, или они могут использовать один из вышеперечисленных способов аутентификации.

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

Установим службу шлюза TS.

1. Открываем Диспетчер серверов.

2. Выбираем “Добавить роли и компоненты”

3. На этапе “Тип установки”, выбираем “Установка ролей и компонентов.

4. Следующим шагом выбираем текущий сервер.

5. Роль сервера — Служба удаленных рабочих столов.

6. Переходим к службе ролей. Выбираем “Шлюз удаленных рабочих столов”.

7. Переходим к этапу подтверждения, нажимаем кнопку “Установить”.

Устанавливаем SSL-сертификат.

После установки роли, в окне Диспетчера серверов, выбираем Средства → Remote Desktop Services → Диспетчер шлюза удаленных столов.

В открывшемся окне, в левой его части, нажимаем по значку сервера. В основной части окна, выбираем “Просмотр и изменение свойств сертификата”.

В открывшемся окне “Свойства” переходим на вкладку “Сертификат SSL”. Выбираем пункт “Создать самозаверяющий сертификат”, нажимаем кнопку “Создать и импортировать сертификат”.

Читайте также:  Пежо 206 не заводится работают дворники

Если у вас есть созданный ранее сертификат, можно воспользоваться одним из пунктов ниже, в зависимости от того, кем он был выдан.

В новом окне следует проверить параметры. Если все верно — нажимаем “OK”.

Новым окном система оповестит об успешном создании сертификата и выдаст путь до файла.

Переходим к окну свойств сервера. Нажимаем “Применить”.

Остается только настроить групповые политики.

В окне “Диспетчер шлюза удаленных рабочих столов”, в левой колонке, раскрываем ветку сервера, выбираем “Политики”, затем “Политики авторизации подключений”. В правой колонке того же окна, выбираем “Создать новую политику” → “Мастер”.

В новом окне выбираем ”Создать только политику авторизации подключений к удаленным рабочим столам”, нажимаем “Далее”.

Указываем желаемое имя для политики. Мы рекомендуем указывать имя латиницей.

Следующим шагом будет выбор удобного метода аутентификации — пароль или смарт-карта. Оставляем отмеченным только “Пароль”. Нажимаем кнопку “Добавить группу. ”

В окне выбора групп кликаем по кнопке “Дополнительно”.

Размер окна изменится. Кликаем по кнопке “Поиск”. В найденных результатах выбираем “Администраторы домена” и нажимаем кнопку “OK”.

В окне выбора группы проверяем выбранные имена объектов и нажимаем “OK”.

Группа добавлена. Для перехода к следующему шагу нажимаем кнопку “Далее”.

На следующем этапе выбираем пункт “Включить перенаправление устройств для всех клиентских устройств” и нажимаем “Далее”.

Настраиваем таймауты сессий. И действия по их истечении. Рекомендуем отключать сеанс, чтобы фоновые пользовательские процессы не отнимали процессорное время. Нажимаем “Далее”.

На крайнем этапе просматриваем сводку, нажимаем “Готово”.
На подтверждение создания политики нажимаем “Закрыть”.

Настроим политику авторизации ресурсов.

Процесс выполняется подобно предыдущему.

В окне диспетчера шлюза удаленных рабочих столов, раскрываем ветку Политики → Политики авторизации подключений. В правой части окна выбираем “Создать новую политику” → “Мастер”.

В открывшемся окне выбираем “Создать только политику авторизации ресурсов удаленных рабочих столов”, нажимаем кнопку “Далее”.

Первым шагом указываем желаемое имя для политики авторизации. Настоятельно рекомендуем указывать имя латиницей. Нажимаем кнопку “Далее”.

В окне выбора групп кликаем по кнопке “Дополнительно”.

Окно изменит размеры. Нажимаем кнопку “Поиск”. В результатах поиска находим “Администраторы домена” и нажимаем кнопку “OK”.

В окне выбора группы проверяем выбранные имена объектов и нажимаем “OK”.

Группа добавлена. Для перехода к следующему шагу нажимаем кнопку “Далее”.

На следующем шаге разрешаем подключение пользователей к любому сетевому ресурсу. Для этого выбираем соответствующий параметр и нажимаем кнопку “Далее”.

Настраиваем разрешенные порты. сли порт RDP-сервера не был изменен, то оставляем 3389. Нажимаем “Далее”.

Финальным этапом проверяем настройки и нажимаем кнопку “Готово”.

В обновленном окне нажимаем “Закрыть”.

Изолировать серверные роли. Отключить неиспользуемые сервисы.

На этапе предварительного планирования сетевой архитектуры, одной из основных задач является планирование рисков в случае выхода из строя какого-либо элемента сети. Причин этому может быть много — от выхода из строя оборудования, до “взлома” извне. Чем большее количество ролей возложено на сервер, тем тяжелее будут последствия при отказе сервера. Для минимизации рисков и ущерба следует, по возможности, разграничить роли серверов еще на этапе проектирования. Отключение сервисов и ролей сервера, в которых необходимости, также положительно скажется на его работе.

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

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

Обзор Windows Nano Server.

Дальнейшим развитием Windows Server Core стал Nano Server. Данная версия дистрибутива исключает использование графического интерфейса пользователя. Всё управление сосредоточено на WMI — инструментарий управления Windows, а также Windows PowerShell. Данный дистрибутив Windows-сервер имеет на 92% меньше критических рекомендаций безопасности. Nano Server доступен только для клиентов Microsoft Software Assurance и на платформах облачных вычислений, например, Microsoft Azure и Amazon Web Services. Начиная со сборки Windows Server 1709, Nano Server можно устанавливать только внутри хоста контейнера .

Источник

Оцените статью