Рейтинг:0

kinit Предупреждение об истечении срока действия пароля

флаг dz

У меня настольный клиент Ubuntu присоединен к домену Active Directory 2008 R2.

Мне нужно использовать команду «kinit» в Linux, чтобы определить, когда истечет срок действия пароля пользователя. Это мой путь из-за других сценариев, работающих в системе, поэтому я не могу / не хочу менять этот подход.

Однако, насколько я видел, kinit возвращает предупреждение об истечении срока действия пароля на 7 дней или меньше. Могу ли я изменить это отношение? Что заставляет kinit возвращать предупреждение об истечении срока действия пароля в течение 7 дней или меньше?

Рейтинг:0
флаг cn

Вероятно, это зависит от настройки в Active Directory — она устанавливается в групповой политике в: Интерактивный вход: предлагать пользователю сменить пароль до истечения срока его действия.

Так что уточните у администратора AD. Можно применить эту политику к подразделениям, поэтому, если ваша учетная запись находится в определенном подразделении, можно установить более длинное предупреждение. Это технически возможно, по крайней мере. Могут быть эксплуатационные ограничения.

Кроме того, подключена ли машина через твердотельный накопитель? Стоит прочитать эту статью, чтобы узнать, есть ли что-то в sssd.conf это может переопределить значение, отправленное из AD. Если он не установлен в sssd.conf вообще, он просто наследует то, что отправляет AD. https://access.redhat.com/articles/3027531

Если администратор домена говорит, что он установлен на 7 дней и не будет меняться, неясно, сможете ли вы настроить sssd.conf чтобы обеспечить более длительный интервал предупреждения - я сомневаюсь, что таким образом он сможет переопределить AD.

В качестве альтернативы вы можете выполнить запрос LDAP для учетной записи пользователя AD и получить свойство с именем msDS-UserPasswordExpiryTimeComputed - значение там отсчитывает от даты эпохи Windows.

Чтобы рассчитать дату в системе Linux, дата эпохи Windows равна 1601-01-01T00:00:00Z, что составляет 11644473600 секунд до эпохи *nix (1970-01-01T00:00:00Z). Такты Windows составляют 100 наносекунд. Итак, для простого расчета:

$тикИнтервал = 10000000
$unixEpochDiff = 11644473600
# интервал, полученный из msDS-UserPasswordExpiryTimeComputed
$ADPasswordExpiryTime = 132985454614249065 
$unixTime = ($userPasswordExpiryTime / $tickInterval) - $unixEpochDiff

В настоящее время у меня нет возможности протестировать запрос LDAP из системы на базе Linux в AD, но, возможно, стоит попробовать, если больше ничего не помогает.

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

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