Я пытаюсь настроить политику паролей пользователей на RHEL 6.6 и хочу, чтобы система попросила вновь созданных пользователей изменить первоначальный пароль при первом входе в систему.
Обратите внимание, что я попытался установить для переменной EXPIRE значение 0, а для параметра INACTIVE - значение -1 в / etc / default / useradd, но это привело к истечению срока действия новой учетной записи пользователя после создания. Вывод команды chage после создания пользователя с этими переменными:
# chage -l foo
Last password change : Feb 22, 2015
Password expires : May 23, 2015
Password inactive : never
Account expires : Feb 22, 2015
Minimum number of days between password change : 1
Maximum number of days between password change : 90
Number of days of warning before password expires : 7
Когда я пытаюсь войти в систему под именем пользователя foo, появляется сообщение «Срок действия вашей учетной записи истек. Пожалуйста, свяжитесь с системным администратором».
Но если я открою окно «Свойства пользователя», выберите вкладку «Информация о пароле» и установите флажок «Принудительно изменить пароль при следующем входе в систему», результатом будет то, что я ожидаю. Новому пользователю будет предложено сменить пароль. Вывод команды chage в этом случае будет:
# chage -l foo2
Last password change : password must be changed
Password expires : password must be changed
Password inactive : password must be changed
Account expires : never
Minimum number of days between password change : 1
Maximum number of days between password change : 90
Number of days of warning before password expires : 7
Когда я вхожу в систему под пользователем foo2, система просит меня сменить пароль.
Итак, есть ли способ настроить систему для настройки параметров учетной записи пользователя при создании, как во втором случае?
Upd
cat /etc/default/useradd
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=0
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
Даже если я прокомментирую НЕАКТИВНО или установлю положительное значение, срок действия учетной записи истек, но пароль отсутствует.
Также я настроил PAM на машине.
Upd 2
Я проверил это на машине с RHEL 6.2 и без конфигурации PAM. Эффект тот же.
EXPIRE=0
в /etc/default/useradd
должен сделать работу. Я читал, что вы пытались. Можете ли вы добавить без комментариев строки /etc/default/useradd
? Он заблокирован, даже если вы не укажете INACTIVE = -1, а другое значение или если вы прокомментируете эту строку? Можете ли вы указать, заблокированы ли учетные записи, даже если они созданы из командной строки. И, пожалуйста, если у вас есть другой вопрос, разместите его на отдельной странице, если он будет иметь разный ответ.
adduser
позволяет ввести chage
команду /usr/local/sbin/adduser.local
. Вы также можете установить поле возраста в / etc / shadow равным 0. useradd
«утилита низкого уровня», предназначенная для использования в сочетании с другими командами.
chage -d 0 {user-name}
.