3

Я вижу много документов, предлагающих использовать chage в Debian и Ubuntu, но apt-get update && apt-get install chage не устанавливает пакет. Например,

root@ubuntu:~/Desktop# apt-get install chage
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package chage

Я обнаружил, что мне нужно отредактировать /etc/shadow . Как именно мне нужно отредактировать root строку ниже, чтобы мой Linux не просил меня менять пароль при каждом входе в систему?

root@ubuntu:~# cat /etc/shadow
root:$6$U.dnAQ2f$FV$/aF23Yn.sq1BYVjinlI9251nAarzqGKES18RxadV5bTakcfCNYAMljUwSaQZYV0r4MttHF0SFO7ebq3E1m/:0:0:99999:7:::

Я отредактировал корневую строку, как предложил deong

root:$6$U.dnAQ2f$FV$/aF23Yn.sq1BYVjinlI9251nAarzqGKES18RxadV5bTakcfCNYAMljUwSaQZYV0r4MttHF0SFO7ebq3E1m/:0:0:::::

Он по-прежнему запрашивает пароль при входе в систему.

Я также следовал инструкциям на http://www.lifelinux.com/setting-up-password-aging-in-linux/:

root@ubuntu:/home# chage -m 7 -M 60 -W 7 -I 7 root
root@ubuntu:/home# chage -m 0 -M 99999 -I -1 root
root@ubuntu:/home# change -l root
-bash: change: command not found
root@ubuntu:/home# chage -l root
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          : 0
Maximum number of days between password change          : 99999
Number of days of warning before password expires       : 7

Что мне нужно отредактировать, чтобы удалить password must be changed? Я также сделал chage -I -1 -m 0 -M 99999 -E -1 root , но это не помогло.

2 ответа2

5
$ man 5 shadow

описывает формат этого файла. Цитируя оттуда, пятое поле - максимальный срок действия пароля.

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

По истечении этого количества дней пароль может быть действительным. Пользователю нужно будет изменить свой пароль при следующем входе в систему.

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

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

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

дата последней смены пароля Дата последней смены пароля, выраженная в количестве дней с 1 января 1970 года.

Значение 0 имеет особое значение: пользователь должен изменить свой пароль при следующем входе в систему.

Пустое поле означает, что функции устаревания пароля отключены.

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

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

root:$6$U.dnAQ2f$FV$/aF23Yn.sq1BYVjinlI9251nAarzqGKES18RxadV5bTakcfCNYAMljUwSaQZYV0r4MttHF0SFO7ebq3E1m/:::::::

Тем не менее, я бы вообще не советовал напрямую редактировать такие файлы, если только вы не уверены на 100%, что знаете, что делаете.

Изменить: Кроме того, похоже, что chage является частью пакета passwd в Ubuntu, который я бы предположил, что вы уже установили.

-2
sudo chage -d -1 root

отключит срок действия пароля.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .