Для обеспечения высокого уровня безопасности учетных записей в домене Active Directory администратору необходимо настроить и внедрить доменную политику паролей. Политика паролей должна обеспечивать достаточную сложность, длину пароля, частоту смены пароля пользователей и сервисных учетных записей. Тем самым можно усложнить злоумышленнику возможность подбора или перехвата паролей пользователей.
Политика паролей в Default Domain Policy
По-умолчанию в домене AD настройка общих требований к паролям пользователей осуществляется с помощью групповых политик. Политика паролей учетных записей домена настраивается в политике Default Domain Policy. Эта политика прилинкована к корню домена и обязательно должна применяться к контролеру домена с FSMO ролью PDC эмулятор.
- Чтобы настроить политику паролей, откройте консоль управления доменными GPO (Group Policy Management console –
gpmc.msc
); - Разверните ваш домен и найдите политику Default Domain Policy. Щелкните по ней ПКМ и выберите Edit;
- Политики паролей находятся в следующем разделе редактора GPO: Конфигурация компьютера -> Конфигурация Windows -> Параметры безопасности -> Политики учетных записей -> Политика паролей (Computer configuration -> Windows Settings -> Security Settings -> Account Policies -> Password Policy);
- Чтобы отредактировать настройки параметра политики, дважды щелкните по ней. Чтобы включить политику, отметьте галку Define this policy settings и укажите необходимую настройку (в примере на скриншоте я задал минимальную длину пароля пользователя 8 символов). Сохраните изменения;
- Новые настройки парольной политики будут применены ко все компьютерам домена в фоновом режиме в течении некоторого времени (90 минут), при загрузке компьютера, либо можно применить новые параметры групповых политик немедленно, выполнив команду
gpupdate /force
Вы можете изменить настройки политики паролей из консоли управления GPO или с помощью PowerShell командлета Set-ADDefaultDomainPasswordPolicy:
Set-ADDefaultDomainPasswordPolicy -Identity winitpro.ru -MinPasswordLength 14 -LockoutThreshold 10
Основные настройки политики паролей
Рассмотрим все доступные для настройки параметры управления паролями пользователями. Всего есть шесть параметров политики паролей:
- Вести журнал паролей (Enforce password history) – определяет количество старых паролей, которые хранятся в AD, запрещая пользователю повторно использовать старый пароль (однако администратор домена или пользователь, которому делегированы права на сброс пароля в AD, может вручную задать для аккаунта старый пароль);
- Максимальный срок действия пароля (Maximum password age) – определяет срок действия пароля в днях. После истечения срока действия пароля Windows потребует у пользователя сменить пароль. Обеспечивает регулярность смены пароля пользователями;Вы можете узнать когда истекает пароль определенного пользователя можно получить с помощью командлета:
Get-ADUser -Identity dbpetrov -Properties msDS-UserPasswordExpiryTimeComputed | select-object @{Name="ExpirationDate";Expression= {[datetime]::FromFileTime($_."msDS-UserPasswordExpiryTimeComputed") }}
- Минимальный срок жизни пароля (Minimum password age) – как часто пользователи могут менять пароль. Этот параметр не позволит пользователю несколько раз подряд сменить пароль, чтобы вернуться к любимому старому паролю, перезатерев пароли в журнале Password History. Как правило тут стоит оставить 1 день, чтобы предоставить пользователю самому сменить пароль в случае его компрометации (иначе менять пароль пользователю придется администратору);
- Минимальная длина пароля (Minimum password length) – не рекомендуется делать пароль короче, чем 8 символов (если указать тут 0 – значит пароль не требуется);
- Пароль должен отвечать требование сложности (Password must meet complexity requirements) – при включении этой политики пользователю запрещено использовать имя своей учетной записи в пароле (не более чем два символа подряд из
username
илиFirstname
), также в пароле должны использоваться 3 типа символов из следующего списка: цифры (0 – 9), символы в верхнем регистре, символы в нижнем регистре, спец символы ($, #, % и т.д.). Кроме того, для исключения использования простых паролей (из словаря популярных паролей) рекомендуется периодически выполнять аудит паролей учетных записей домена. - Хранить пароли, использую обратимое шифрование (Store passwords using reversible encryption) – пароли пользователей в базе AD хранятся в зашифрованном виде, но в иногда нужно предоставить доступ некоторым приложениям нужно к паролю пользователя в домене. При включении этой политики пароли хранятся в менее защищенной виде (по сути открытом виде), что небезопасно (можно получить доступ к базе паролей при компрометации DC, в качестве одной из мер защиты можно использовать 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) – через сколько минут после последнего ввода неверного пароля счетчик неверных паролей (Account Lockout Threshold) будет сброшен.
Настройки парольных политик домена Active Directory по-умолчанию перечислены в таблице:
Политика | Значение по-умолчанию |
Enforce password history | 24 пароля |
Maximum password age | 42 дня |
Minimum password age | 1 день |
Minimum password length | 7 |
Password must meet complexity requirements | Включено |
Store passwords using reversible encryption | Отключено |
Account lockout duration | Не определено |
Account lockout threshold | 0 |
Reset account lockout counter after | Не определено |
В Security Compliance Toolkit Microsoft рекомендует использовать следующие настройки парольных политик:
- Enforce Password History: 24
- Maximum password age: not set
- Minimum password age: not set
- Minimum password length: 14
- Password must meet complexity: Enabled
- Store passwords using reversible encryption: Disabled
Просмотр текущей парольной политики в домене
Вы можете посмотреть текущие настройки политики паролей в Default Domain Policy в консоли
gpmc.msc
(вкладка Settings).
Также можно вывести информацию о политике паролей с помощью PowerShell (на компьютере должен быть установлен модуль AD PowerShell):
Get-ADDefaultDomainPasswordPolicy
ComplexityEnabled : True DistinguishedName : DC=winitpro,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 : a5daca80-6c2c-49a6-8704-d1e4db76e851 PasswordHistoryCount : 24 ReversibleEncryptionEnabled : False
Или можно проверить текущие настройки политики паролей AD на любом компьютере домена с помощью стандартной утилиты gpresult.
Несколько парольных политик в домене Active Directory
За управление доменной парольной политики отвечает контроллер домена, владелец FSMO роли PDC Emulator. Политика применяется к компьютерам домена, а не пользователям. Для редактирования настроек Default Domain Policy необходимы права администратора домена.
В домене может быть только одна политика паролей, которая применяется на корень домена и действует на всех пользователей без исключения (есть, конечно, нюансы, но о них ниже). Даже если вы создадите новую GPO с другими парольными настройками и примените ее к OU с параметрами Enforced и Block Inheritance, она не будет применяться к пользователям.
До версии Active Directory в Windows Server 2008 можно было настраивать только одну политику паролей для домена. В новых версиях AD вы можете создать отдельные политики паролей для различных групп пользователей с помощью гранулированных политик паролей Fine-Grained Password Policies (FGPP). Гранулированные политики паролей позволяют создавать и применять разные объекты параметров паролей (Password Settings Object — PSO). Например, вы можете создать PSO повышенной длиной или сложностью пароля для учетных записей доменных администраторов (см. статью о защите административных учетных записей в AD), или наоборот упростить (отключить) пароль для каких-то учетных записей.
Подскажите обязательно надо настраивать политику паролей в политики Default Domain Policy или можно создать свою, чтобы не трогать Default Domain Policy политику
По вкусу. Как кому удобнее. ИМХО, лучше дефолтную не трогать и создавать свою.
Можете сделать свою. Но есть нюанс. Эта политика должна быть также применена на уровне домена. А так как в default domain policy уже есть эти настройки, то вы должны настроить приоритет вашей политики, чтобы она была приоритетной.
Но бест практис от ms это то, что как раз в дефолтной политике должны быть настройки пароля, блокировки учетных записей и настройки kerberos. Поэтому не вижу смысла создавать отдельную политику.
Понятно, просто читал в разных источниках что дефолтные политик не трогайте а создавайте новые рядом с дефотныеми и их правьте а если что случиться то можно удалить и у Вас применяться дефолтные. В другом источники. Рекомендуют менять в дефолтной политики только парольные настройки и Kerberos. Я в принципе так все время и настраиваю в дефолтной политики пароли и Kerberos, но в последнем ws2016 или ещё в ws2012r2 можно к каждой ou настроить своих политику паролей вот и предположил может что поменялось.
«в default domain policy уже есть эти настройки» — переводите все настройки default политики в Disabled или «Не задано»
Ключ /force не ускоряет и не усиливает применение политик, а лишь заставляет перечитать политики с сервера (на случай повреждения локальных файлов или для эстетов, которые правят политики блокнотом, не меняя при этом версию политики )
Больше понравилось работать с Password Detting Container
https://blogs.technet.microsoft.com/canitpro/2013/05/29/step-by-step-enabling-and-using-fine-grained-password-policies-in-ad/
Вы говорите о функционале раздельных политик паролей (Fine-Grained Password Policies) в статье есть ссылка на руководство.
Однако базовые политики паролей для домена проще и правильнее настроить на уровне Default Domain Policy.
Как решить вопрос с
МойКрутойПароль1
МойКрутойПароль2
МойКрутойПароль3
….4
…5
Похоже никак. Думаете такие пароли так уж плохи?
В теории вы можете сформировать словарь паролей и добавить к ним эти индексы и регулярно проводить аудит паролей скриптом (ссылка есть в статье). А вот явно запретить использовать такие пароли стандартными средствами нельзя, нужно что-то стороеннее прикручивать.
Winser2016STD поднят домен, почему пользователь RDS при копированиис блокнота и вставки пароля в окно авторизации пользователя пароль не проходит, а если ввести вручную то вход есть? Так как паролли длинные у пользователя возникает проблема ввода пароля.
Проверьте, что в буфер обмена вместе с паролем не попадают спец символы, пробелы и т.д.
При авторизации у вас NLA для RDP включен?
Если это делают через контекстное меню, то так не работает.
Нужно нажимать ctrl+v, тогда все будет нормально.
ошибка в статье
Минимальный длина пароля (Minimum password age)
age возраст а не длина
Немного перепутал пункты. Поправил. Спс!
Эхх а как быть если пользователи не хотят вводить имя пользователя и длинный пароль? На недели ввел в домен комп где работают 2 пользователя, сохраняется имя пользователя последнего входившего в систему. потребовалось 3 дня чтоб пользователи поняли, что надо вводить имя пользователя и пароль.
А таких машин нужно в домен завести еще 38 шт…
1.Вопрос пользователя: А можно убрать пароль?
2.Вопрос пользователя: А можно пароль покороче и попроще?
3.А как вводить имя пользователя?
4.А нельзя как раньше?
5.И зачем/и кому это нужно?
Проблемам №1 пользователи очень плохо ориентируются в латинице и потому набирают пароль очень долго и с ошибками.
Проблемам №2 пользователи не видят что пытаются войти под чужой утечкой и пароль соответственно не принимает.
Когда на 1 станции работает 1 пользователь еще нормально, но вот когда 2 сразу…
Пользователи привыкнут, сейчас не начало 2000 на дворе, люди не такие дикие в плане ИТ.
Дело времени, терпеливости и настойчивости админа (подкрепленное руководством компании или безопасности).
проблема 2 — не сохранять последний логин — GPO Конфигурация компьютера — Политики — Конфиг Windows — Параметры безопасности — Локальные политики — параметры безопасности — Интерактивный вход в систему: не отображать учетные данные последнего пользователя — всегда чистый и логин и пароль при входе
Поправьте. Опечатка в статье.
Минимальный срок действия паролей (Minimum password length)
Спс, принято.
Подскажите, каким образом вернуть старый пароль пользователя? Он запрещается политиками
Какие значения в вашей политике паролей:
Минимальный срок жизни пароля (Minimum password age)
Вести журнал паролей (Enforce password history)
Как проработать возможность настройки запрета использования паролей из списка запрещенных паролей в AD ??
Если делать решение самому, можно например вести файл со списком запрещенных паролей и периодически проверять всех пользователей в AD (пример в статье с аудитом надежности паролей в AD https://winitpro.ru/index.php/2016/09/20/audit-active-directory-password/).
Для тех пользователей, которые используют запрещенные пароли в том же скрипте ставим требование сменить пароль при следующем входе:
Set-ADUser -Identity -ChangePasswordAtLogon $true
заблокировано поле по любого параметра безопасности пароля.не могу его изменить его длину и тд
Нет прав, или вы правите локальную политику.
Добрый день!
А как соотносятся Fine-Grained Password Policies и политика паролей в Default Domain Policy? У кого приоритет больше? Или нужно отключать политику паролей в Default Domain Policy для использования Fine-Grained Password Policies?
У любой Fine-Grained Password Policies приоритет всегда выше чем у дефолтной политики паролей.
А можно сделать так, что бы на отдельные аккаунты политика не применялась? к примеру поставить галочку «срок действия пароля не ограничен». Или после применения политики я уже галочку не поставлю?
У галочек, выставленных вручную будет приоритет над политикой
Добрый день! Интересно, есть ли возможность установить что бы смена пароля происходила не по времени и дате, а только по дате. Например юзер поменял пароль 25.08.2021 в 10:00 и следующая смена пароля должна быть 25.11.2021 в 00:00, а не в 10:00?
С помощью втсроенных средств так не сделать. Единственный сценарий, который приходит на ум — написать PowerShell скрипт, который в нужный момент времени выставляет пользователю галку «потребовать смену пароля».
Ну и не совсем понятно зачем вообще такое нужно )
Спасибо за ответ!
Проблема заключается в том что в моей компании пользователи игнорируют ненавязчивое всплывающие окно винды о смены пароля. И потом, во время рабочего дня, пароль естественно устаревает, и все сервисы отваливаются. Сотрудник в панике строчит в техподдержку, тем самым отвлекая сотрудников последней от более важной работы)
Добрый день!
Я правильно понял, что если настроить политику, то она будет действовать только на вновь создаваемые учетки пользователей? Есть домен, требования в политиках пока минимальные. Хочу сделать пароль не менее 8 символов, и ограничить срок действия. В тестовой среде при настройке таких политик старые юзеры свободно заходили на компы, с перезагрузкой, имея при этом старые пароли типа 111, но новые юзеры создавались только со сложными паролями.
Насколько я понял, чтобы перевести старых юзеров на новые пароли, имя надо ставить галку с требованием смены пароля при следующем входе в систему?
Не пробовал такое на практике, но склоняюсь к тому, что на старых пользователей политика не повлияет до следующей смены паролей.
Смена пароля потребуется, если включить галку, или истечет старый пароль.
Здравствуйте.
В нарастающим использованием облачных подписок MS, переходом на гибрид, удаленной работой сотрудников возникают новые задачи.
В частности столкнулись с проблемой использования групповой политики и смены пароля пользователя, если он находится на удаленке, то есть не в корп сети. Пароль просрочен, к VPN со старым не подключишься, наша подписка Microsoft 365 бизнес стандарт не позволяет производить синхронизацию пароля с облака в он-премис.
Подскажите, как на практике решается данная проблема?
Вариантов много, но все с костылями:
1) Звонок другу (в тех поддержку)
2) Опубликовать rdweb access с вклюбченной формой смены истекшего пароля https://winitpro.ru/index.php/2015/02/06/smena-istekshego-parolya-cherez-rds-v-windows-server-2012/ (в вашем случае наверно лучше всего это)
3) сделать некое самописное приложение
а как менять пароль для пользователей с mac OS?
Login with your AD account -> From the Apple Menu in the top Left, select System Preferences -> Click on the Accounts button -> Click ‘Change Password’
попробуйте так
Имеется такая проблема:
В Default Domain Policy в паролях прописана минимальная длина 8 символов и максимальный срок действия — 90 дней (до этого было 7 символов и 180 дней).
После применения политики на компьютерах домена в оснастке Локальная политика безопасности в политике паролей параметры изменились на те, что были указаны в политике, но по сути пароль до сих пор можно поставить 7 символов, т.е. политика не отрабатывает. и по Get-ADDefaultDomainPasswordPolicy также показывает старые параметры (7 символов и 180 дней).
Проверять лучше результирующей политикой: rsop.msc
Также, попробуйте вывести данную машину из домена, переименовать и ввести в домен заново, с другим именем, и после перезагрузки и применения политик (не забудьте переместить вновь введеннную машину в контейнер, к которому применяется ваша политика), ещё раз проверить в RSOP, и реальное действие парольной политики.