ОПИСАНИЕ
The passwd command changes passwords for user accounts. A normal user may only change the password for their own account, while the superuser may change the password for any account. passwd also changes the account or associated password validity period.
Изменение пароля
Сначала пользователя попросят ввести старый пароль, если он был. Этот пароль зашифровывается и сравнивается с имеющимся. У пользователя есть только одна попытка ввести правильный пароль. Для суперпользователя этот шаг пропускается, для того чтобы можно было изменить забытый пароль.
After the password has been entered, password aging information is checked to see if the user is permitted to change the password at this time. If not, passwd refuses to change the password and exits.
Затем пользователю предложат дважды ввести новый пароль. Значение второго ввода сравнивается с первым и для изменения пароли из обеих попыток должны совпасть.
Затем пароль тестируется на сложность подбора. Согласно общим принципам, пароли должны быть длиной от 6 до 8 символов и включать один или более символов каждого типа:
Care must be taken not to include the system default erase or kill characters. passwd will reject any password which is not suitably complex.
Выбор пароля
The security of a password depends upon the strength of the encryption algorithm and the size of the key space. The legacy UNIX System encryption method is based on the NBS DES algorithm. More recent methods are now recommended (see ENCRYPT_METHOD). The size of the key space depends upon the randomness of the password which is selected.
При обеспечении безопасности пароля выбирают нечто среднее между сложным паролем и сложностью работы с ним. По этой причине, вы не должны использовать пароль, который является словом из словаря или который придётся записать из-за его сложности. Также, пароль не должен быть названием чего-либо, номером вашей лицензии, днём рождения и домашним адресом. Обо всём этом легко догадаться, что приведёт к нарушению безопасности системы.
You can find advice on how to choose a strong password on http://en.wikipedia.org/wiki/Password_strength
ПАРАМЕТРЫ
The options which apply to the passwd command are:
Удалить пароль пользователя (сделать его пустым). Это быстрый способ заблокировать пароль учётной записи. Это сделает указанную учётную запись беспарольной.
Немедленно сделать пароль устаревшим. В результате это заставит пользователя изменить пароль при следующем входе в систему.
-i, —inactive INACTIVE
This option is used to disable an account after the password has been expired for a number of days. After a user account has had an expired password for INACTIVE days, the user may no longer sign on to the account.
Указывает, что изменение пароля нужно выполнить только для устаревших ключей аутентификации (паролей). Пользователи хотят оставить свои непросроченные ключи нетронутыми.
Заблокировать пароль указанной учётной записи. Этот параметр блокирует пароль, изменяя его значение на вариант, который не может быть шифрованным паролем (добавляется символ «!» в начало пароля).
Note that this does not disable the account. The user may still be able to login using another authentication token (e.g. an SSH key). To disable the account, administrators should use usermod —expiredate 1 (this set the account’s expire date to Jan 2, 1970).
Посетитель с заблокированным паролем не может изменить свой пароль.
-n, —mindays MIN_DAYS
Set the minimum number of days between password changes to MIN_DAYS. A value of zero for this field indicates that the user may change their password at any time.
-r, —repository REPOSITORY
-R, —root CHROOT_DIR
Apply changes in the CHROOT_DIR directory and use the configuration files from the CHROOT_DIR directory. Only absolute paths are supported.
Показать состояние учётной записи. Информация о состоянии содержит 7 полей. Первое поле содержит имя учётной записи. Второе поле указывает, заблокирован ли пароль учётной записи (L), она без пароля (NP) или у неё есть рабочий пароль (P). Третье поле хранит дату последнего изменения пароля. В следующих четырёх полях хранятся минимальный срок, максимальный срок, период выдачи предупреждения и период неактивности пароля. Эти сроки измеряются в днях.
Unlock the password of the named account. This option re-enables a password by changing the password back to its previous value (to the value before using the -l option).
-w, —warndays WARN_DAYS
Set the number of days of warning before a password change is required. The WARN_DAYS option is the number of days prior to the password expiring that a user will be warned that their password is about to expire.
-x, —maxdays MAX_DAYS
Set the maximum number of days a password remains valid. After MAX_DAYS, the password is required to be changed.
Passing the number -1 as MAX_DAYS will remove checking a password’s validity.
ПРЕДОСТЕРЕЖЕНИЯ
Сложность пароля проверяется на разных машинах по разному. Пользователю настоятельно рекомендуется выбирать пароль такой сложности, чтобы ему нормально работалось.
Пользователи не могут изменять свои пароли в системе, если включён NIS и они не вошли на сервер NIS.
passwd uses PAM to authenticate users and to change their passwords.
Изменяем пароль пользователя в Linux
В данной статье я хочу рассказать о том, как изменять пароль пользователя в Linux. Я рассмотрю универсальный способ изменения пароля через командную строку, чтобы не привязываться к конкретному дистрибутиву.
Для изменения паролей в Linux служит команда passwd. Команду можно выполнять без указания каких-либо параметров, либо явно указать имя пользователя, пароль которого вы хотите сменить (в данном случае требуются права суперпользователя). После чего вам нужно будет ввести текущий пароль, а затем дважды ввести новый пароль.
Меняем пароль текущего пользователя
Чтобы сменить пароль текущего пользователя выполните команду passwd без параметров:
После этого нужно будет ввести текущий пароль и нажать клавишу Enter, затем ввести новый пароль и снова нажать Enter и, наконец, еще раз ввести новый пароль и нажать Enter.
Changing password for yuriy. (current) UNIX password: Enter new UNIX password: Retype new UNIX password: passed: password updated successfully
Обратите внимание на то, что когда вы вводите пароль, он не отображается на экране.
Если вдруг вы получили сообщение:
You must choose a longer password
Это означает, что вы ввели очень простой (или короткий) пароль. В таком случае повторите команду passwd и введите более сложный пароль (как минимум длиной от 6 до 8 символов, пароль должен включать цифры, прописные и строчные символы). Чтобы избежать проверки пароля на сложность необходимо выполнять команду passwd через sudo (см. ниже).
Меняем пароль произвольного пользователя
Чтобы сменить пароль любого пользователя вам необходимо запускать программу passwd под пользователем root или через sudo. Например, чтобы сменить пароль пользователя с именем pingvinus необходимо выполнить:
В данном случае вам нужно будет ввести только новый пароль:
Enter new UNIX password: Retype new UNIX password: passed: password updated successfully
Здесь пароль не проверяется на сложность и можно задавать совсем простые и короткие пароли.
Дополнительная информация
Я рассмотрел два простых способа для быстрого изменения паролей пользователей. Получить полный список возможностей команды passwd можно, выполнив в терминале: