Настройка политики паролей домена в Active Directory
Чтобы обеспечить высокий уровень безопасности учётных записей пользователей в домене Active Directory, администратор должен настроить и реализовать политику паролей домена. Политика паролей должна обеспечивать достаточную сложность, длину пароля и частоту смены паролей учётных записей пользователей и служб. Таким образом, вы можете затруднить злоумышленнику возможность перебора или перехвата паролей пользователей при их отправке по сети.
Суть политики паролей домена заключается в том, что устанавливаются правила на минимальную длину пароля, на обязательное наличие в нём определённого количества букв разного регистра, цифр, специальных символов. Данные правила распространяются как на администратора домена, так и на всех пользователей домена.
Если компьютер подключён к домену, то политика паролей также распространяется и на локальных пользователей, но только при смене пароля. То есть если локальный пользователь не имел пароля до подключения к домену, либо имел пароль, неудовлетворяющий правилам политики, то такой пользователь не обязан устанавливать или менять пароль.
Политика паролей в политике домена по умолчанию (Default Domain Policy)
По умолчанию для установки общих требований к паролям пользователей в домене AD используются параметры групповой политики (GPO). Политика паролей учётных записей пользователей домена настраивается в Default Domain Policy (политике домена по умолчанию). Эта политика связана с корнем домена и должна применяться к контроллеру домена с ролью эмулятора PDC.
1. Чтобы настроить политику паролей учётной записи AD, откройте консоль Управления групповой политикой (gpmc.msc);
2. Разверните свой домен и найдите объект групповой политики с именем Default Domain Policy. Щёлкните его правой кнопкой мыши и выберите «Изменить»;
3. Политики паролей находятся в следующем разделе GPO: Computer configuration→ Policies→ Windows Settings → Security Settings → Account Policies → Password Policy (в русскоязычной версии это соответственно Конфигурация компьютера → Политики → Конфигурация Windows → Параметры безопасности → Политики учетных записей → Политика паролей);
4. Дважды щёлкните параметр политики, чтобы изменить его. Чтобы включить определённый параметр политики, установите флажок Define this policy settings («Определить следующий параметр политики») и укажите необходимое значение (на скриншоте ниже я установил минимальную длину пароля 8 символов). Сохраните изменения;
Новые параметры политики паролей будут применены ко всем компьютерам домена в фоновом режиме через некоторое время (90 минут), во время загрузки компьютера, или вы можете применить политику немедленно, запустив команду
gpupdate /force
Вы можете изменить параметры политики паролей из консоли управления GPO или с помощью командлета PowerShell Set-ADDefaultDomainPasswordPolicy:
Set-ADDefaultDomainPasswordPolicy -Identity ds.hackware.ru -MinPasswordLength 10 -LockoutThreshold 3
Основные параметры политики паролей в Windows
Рассмотрим все доступные настройки паролей Windows. В GPO есть шесть настроек пароля:
-
Enforce password history (Вести журнал паролей) — определяет количество запоминаемых паролей, хранимых с целью недопущения их повторного использования.
Однако администратор домена или пользователь, которому были делегированы разрешения на сброс пароля в AD, могут вручную установить старый пароль для учётной записи; - Maximum password age (Максимальный срок действия пароля) — устанавливает срок действия пароля в днях. По истечении срока действия пароля Windows попросит пользователя сменить пароль. Эта настройка обеспечивает регулярность смены пароля пользователями. Не зависимо от данной политики, в Параметрах учётной записи пользователя можно включить опцию «Срок действия пароля не ограничен», эта опция будет иметь приоритет;
Вы можете узнать, когда истекает срок действия пароля конкретного пользователя, с помощью PowerShell:
Get-ADUser -Identity MiAl -Properties msDS-UserPasswordExpiryTimeComputed | Select-Object name,samaccountname,@{Name="Истекает";Expression={[datetime]::FromFileTime($_."msDS-UserPasswordExpiryTimeComputed") }}
Либо вывести информацию о дате истечения паролей сразу для всех пользователей:
Get-ADUser -Filter * -Properties "msDS-UserPasswordExpiryTimeComputed" | Select-Object name,samaccountname,@{Name="Истекает";Expression={[datetime]::FromFileTime($_."msDS-UserPasswordExpiryTimeComputed")}}
Если поле является пустым, значит срок действия пароля пользователя не ограничен.
- Minimum password length (Минимальная длина пароля) – рекомендуется, чтобы пароли содержали не менее 8 символов (если вы укажете здесь 0, то пароль станет необязательным);
- Minimum password age (Минимальный срок действия пароля) – устанавливает, как часто пользователи могут менять свои пароли. Этот параметр не позволит пользователю менять пароль слишком часто, чтобы вернуться к старому паролю, который ему нравится, удалив его из истории паролей после того, как пароль был изменён несколько раз подряд. Как правило, здесь стоит выставить 1 день, чтобы пользователи могли сами сменить пароль в случае его взлома (иначе его менять придётся администратору);
- Password must meet complexity requirements (Пароль должен отвечать требованиям сложности) — если эта политика включена, пользователь не может использовать имя учётной записи в пароле (не более 2-х символов подряд из username (имени пользователя) или Firstname (имени)), также в пароле необходимо использовать 3 типа символов: цифры (0–9), прописные буквы, строчные буквы и специальные символы ($, #,% и так далее). Также, чтобы предотвратить использование слабых паролей (из словаря паролей), рекомендуется регулярно проверять пароли пользователей в домене AD;
- Store passwords using reversible encryption (Хранить пароли, используя обратимое шифрование) – пароли пользователей хранятся в зашифрованном виде в базе данных AD, но в некоторых случаях вам необходимо предоставить доступ к паролям пользователей для некоторых приложений. Если этот параметр политики включён, пароли менее защищены (почти обычный текст). Это небезопасно (злоумышленник может получить доступ к базе данных паролей, если контроллер домена скомпрометирован; контроллеры домена только для чтения (RODC) могут использоваться в качестве одной из мер защиты).
Если пользователь попытается изменить пароль, который не соответствует политике паролей в домене, появится сообщение об ошибке:
Unable to update the password. The value provided for the new password does not meet the length, complexity, or history requirements of the domain.
В русскоязычной версии сообщение звучит так:
Введённый пароль не отвечает требованиям политики паролей. Укажите более длинный или сложный пароль.
Кроме того, в разделе GPO Account Lockout Password («Политика блокировки учётной записи») должны быть настроены следующие параметры пароля:
- Account Lockout Threshold (Пороговое значение блокировки) – количество неудачных попыток входа в систему (с неправильным паролем), которое может быть выполнено пользователем до блокировки его учётной записи;
- Account Lockout Duration (Продолжительность блокировки учётной записи) — как долго будет заблокирована учётная запись, если пользователь несколько раз ввёл неверный пароль;
- Reset account lockout counter after (Время до сброса счётчика блокировки) — количество минут, по истечении которых счётчик порога блокировки учётной записи будет сброшен.
Если конкретная учётная запись домена блокируется слишком часто, вы можете определить источник блокировки учётной записи с помощью этого метода.
Параметры политик паролей по умолчанию в домене AD перечислены в таблице ниже:
Политика | Значение по умолчанию |
---|---|
Обеспечить сохранение истории паролей | 24 пароля |
Максимальный возраст пароля | 42 дня |
Минимальный срок действия пароля | 1 день |
Минимальная длина пароля | 7 |
Пароль должен соответствовать требованиям сложности | Включено |
Хранить пароли с использованием обратимого шифрования | Отключено |
Продолжительность блокировки учётной записи | Не задана |
Порог блокировки учётной записи | 0 |
Сбросить счётчик блокировки учётной записи после | Не установлено |
В Security Compliance Toolkit (наборе средств обеспечения соответствия требованиям безопасности) Microsoft рекомендует использовать следующие параметры политики паролей:
- Использовать историю паролей: 24
- Максимальный срок действия пароля: не установлен
- Минимальный возраст пароля: не установлен
- Минимальная длина пароля: 14
- Пароль должен соответствовать сложности: Включено
- Хранить пароли с использованием обратимого шифрования: Отключено
В недавней рекомендации Security Baseline 1903 Microsoft указывает, что нет необходимости включать политику истечения срока действия пароля для пользователей. Истечение срока действия пароля не увеличивает безопасность, а только создаёт ненужные проблемы (ссылка).
Как проверить текущую политику паролей в домене AD
Вы можете увидеть текущие параметры политики паролей в Default Domain Policy в консоли gpmc.msc (на вкладке Settings «Параметры»).
Вы также можете отобразить информацию о политике паролей с помощью PowerShell (на компьютере должен быть установлен Модуль Active Directory для PowerShell):
Get-ADDefaultDomainPasswordPolicy
ComplexityEnabled : True DistinguishedName : DC=ds,DC=hackware,DC=ru LockoutDuration : 00:30:00 LockoutObservationWindow : 00:30:00 LockoutThreshold : 0 MaxPasswordAge : 42.00:00:00 MinPasswordAge : 1.00:00:00 MinPasswordLength : 7 objectClass : {domainDNS} objectGuid : 15bedbc4-3236-46fb-b01b-5bf1f0a49ba7 PasswordHistoryCount : 24 ReversibleEncryptionEnabled : False
Кроме того, вы можете проверить текущие параметры политики паролей AD на любом компьютере домена с помощью команды GPResult.
Несколько политик паролей в домене Active Directory
Контроллер домена, владелец FSMO роли эмулятора PDC, отвечает за управление политикой паролей домена. Для редактирования настроек Default Domain Policy требуются права администратора домена.
Изначально в домене могла быть только одна политика паролей, которая применяется к корню домена и затрагивает всех без исключения пользователей (есть нюансы, но о них мы поговорим позже). Даже если вы создадите новый объект групповой политики с другими настройками пароля и примените его к конкретному подразделению с параметрами принудительного и блочного наследования, он не будет применяться к пользователям.
Политика паролей домена влияет только на объекты AD типа User (пользователь). Пароли объектов Computer, обеспечивающие доверительные отношения домена, имеют собственные параметры GPO.
До Active Directory в Windows Server 2008 можно было настроить только одну политику паролей для каждого домена. В более новых версиях AD вы можете создать несколько политик паролей для разных пользователей или групп с помощью Fine-Grained Password Policies (FGPP) (детальных политик паролей). Детализированные политики паролей позволяют создавать и применять различные объекты параметров пароля (PSO). Например, вы можете создать PSO с увеличенной длиной или сложностью пароля для учётных записей администратора домена или сделать пароли некоторых учётных записей более простыми или даже полностью отключить их.
Связанные статьи:
- Fine-Grained Password Policy: Как создать детальную политику паролей в Active Directory (88.5%)
- Актуализация настроек групповой политики на компьютерах домена Windows (65.4%)
- LAPS: управление паролями локальных администраторов на компьютерах домена (61.6%)
- Как определить причину блокировки учётной записи в домене Active Directory (61.6%)
- Использование инструмента GPResult для проверки того, какие объекты групповой политики применяются (53.9%)
- Управление ролями и функциями Windows Server с помощью PowerShell (RANDOM - 50%)