Ubuntu Manpage: passwd - изменяет пароль пользователя. Управление аккаунтами в Linux

PASSWD(1)

НАЗВАНИЕ
passwd,yppasswd - смена входного пароля

СИНТАКСИС

Passwd [входное_имя]

ОПИСАНИЕ
Команда passwd меняет (или устанавливает) пароль, связанный с входным_именем пользователя.

Обычный пользователь может менять только пароль, связанный с его собственным входным_именем.

Команда запрашивает у обычных пользователей старый пароль (если он был), а затем дважды запрашивает новый. После первого запроса проверяется, достаточен ли "возраст" старого пароля. Возраст - это промежуток времени (обычно несколько дней), который должен пройти между сменами пароля. Если возраст недостаточен, новый пароль отвергается и passwd завершается; см. passwd(4) .

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

Технические требования к паролям:

  1. Каждый пароль должен содержать не менее 6 симво лов. Значащими являются только первые 8.
  2. Каждый пароль должен содержать как минимум две буквы (большие или малые) и хотя бы одну цифру или знак.
  3. Каждый пароль должен отличаться от входного_имени, прочитанного слева направо или задом наперед, и от его циклических сдвигов. При сравнении не делается различий между большими и малыми буквами.
  4. Новый пароль должен отличаться от старого хотя бы тремя символами. При сравнении не делается разли чий между большими и малыми буквами.

Пользователь, у которого действующий идентификатор есть ноль, называется суперпользователем [см. id(1) и su(1) ]. Суперпользователь имеет право изменять любые пароли, поэтому у него старый пароль не запрашивается. Суперпользователь не связан ограничениями на возраст пароля и соответствие техническим требованиям. Суперпользователь может создать пустой пароль, нажимая возврат каретки в ответ на запрос нового пароля.

ФАЙЛЫ

/etc/passwd

СМ. ТАКЖЕ
id(1) , login(1) , su(1) .
crypt(3C) , passwd(4) в Справочнике программиста.

СЮРПРИЗЫ
Пустой пароль не равнозначен отсутствию пароля и запрашивается каждый раз при входе.

В данной статье я хочу рассказать о том, как изменять пароль пользователя в 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 необходимо выполнить:

Sudo passwd pingvinus

В данном случае вам нужно будет ввести только новый пароль:

Enter new UNIX password: Retype new UNIX password: passed: password updated successfully

Здесь пароль не проверяется на сложность и можно задавать совсем простые и короткие пароли.

Дополнительная информация

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

Updated: 12/29/2017 by Computer Hope

Overview

The passwd command is used to change the password of a user account. A normal user can run passwd to change their own password, and a system administrator (the superuser) can use passwd to change another user"s password, or define how that account"s password can be used or changed.

passwd syntax

passwd [OPTION ] [USER ]

Quick Examples

Change Your Password

Running passwd with no options will change the password of the account running the command. You will first be prompted to enter the account"s current password:

(current) UNIX password:

If it is correct, you will then be asked to enter a new password:

Enter new UNIX password:

And to enter the same password again, to verify it:

Retype new UNIX password:

If the passwords match, the password will be changed.

Change Another User"s Password

Sudo passwd jeff

If you have superuser privileges, you can change another user"s password. Here, we prefix the command with sudo to run it as the superuser. This command will change the password for user jeff . You will not be prompted for jeff "s current password.

Change Your Password Without Knowing Your Current Password

If you need to change your password because you forgot it, you will need to log in to the root account. To do this, you will need to know the password for user root .

Let"s say your username is sally , and you can"t remember your password. However, you have administrator access to the system: you can log in as root , using the password for that account. Log in as root , and then from the command line, run:

Passwd sally

But what if you forgot the password for root as well? In this case, you will need to log in to the machine in single-user mode, also known as Runlevel 1 . This cannot be done over the network, so you will need physical access to the machine to boot into this runlevel.

Reboot the machine. When it is booting up, you should be presented with a bootloader menu. On many systems, such as Debian or Ubuntu , the boot menu will include an option for "Recovery Mode" or "Single User Mode" (as in the image below). Select this boot option.

This option will boot you into a text-only mode, and log you in as root.

If you need to mount / , do so:

Mount -rw -o remount /

Now change sally "s password:

Passwd sally

Or root "s:

When you"re done, reboot your system:

Shutdown -r now

Start the system normally, and you should be able to log in as sally with the new password.

Now that we"ve gone over the most common scenarios for using passwd , let"s look at the command in more detail. The following sections will describe how the command works, how it can be used, and what options can be specified to make use of its different functions.

Description

The passwd command changes passwords for user accounts. A normal user can only change the password for their own account, but the superuser can change the password for any account. passwd can also change or reset the account"s validity period — how much time can pass before the password expires and must be changed.

Before a normal user can change their own password, they must first enter their current password for verification. (The superuser can bypass this step when changing another user"s password.)

After the current password has been verified, passwd checks to see if the user is allowed to change their password at this time. If not, passwd refuses to continue, and exits.

Otherwise, the user is then prompted twice for a replacement password. Both entries must match for passwd to continue.

Next, the password is tested for complexity. As a general guideline, passwords should consist of at least 6 characters , including one or more of each of the following:

  • digits 0 through 9
  • punctuation marks

Options

The following options will change the way passwd operates:

-a , --all When used with -S (see below), this option will show the password status for all users. This option will not work if used without -S .
-d , --delete Delete a user"s password (make it empty). This option is a quick way to disable logins for an account, without disabling the account itself.
-e , --expire Immediately expire an account"s password. This forces a user to change their password the next time they log in.
-h , --help Display information about how to use the passwd command.
-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 integer INACTIVE days, the user may no longer sign on to the account.
-k , --keep-tokens Keep password tokens. Indicates that this user"s password should only be changed if it has expired.
-l , --lock Lock the password of the named account. This option disables a password by changing it to a value which matches no possible encrypted value. It does this by adding a character at the beginning of the encrypted password.

Note that this does not disable the account. The user may still be able to log in using another authentication method (an SSH key, for example). To disable the account, the superuser can use the usermod command with the option --expiredate 1 . This option will set the account"s expiration date to a date in the past — namely Jan 2, 1970.

Users with a locked password are not allowed to change their password.

-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 his/her password at any time.
-q , --quiet Quiet mode; passwd will operate without displaying any output.
-R , --root CHROOT_DIR For advanced users: this option will apply changes in the chroot directory CHROOT_DIR and use the configuration files from the CHROOT_DIR directory.
-S , --status Display account status information. The status information consists of 7 fields:
  1. The user"s login name
  2. password usability: L if the account has a locked password, NP if the account has no password, or P if the account has a usable password
  3. date of the last password change
  4. minimum password age
  5. maximum password age
  6. password warning period
  7. password inactivity period
In fields 4 through 7, password ages are expressed in days.

Specifying -a in addition to -S will display password status for all users.

-u , --unlock Unlock the password of the named account. This option re-enables a password by changing the password back to its value before the -l option was used to lock it.
-w , --warndays WARN_DAYS Set the number of days of warning before a password change is required. WARN_DAYS 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 must be changed.

Notes

Password complexity will vary depending on the system. Consult your operating system documentation for default complexity rules and how to change them.

On systems that use NIS (Network Information Services), users may not be able to change their password if they are not logged into the NIS server.

System Files Used By Passwd

/etc/passwd User account information.
/etc/shadow Secure user account information.
/etc/pam.d/passwd PAM configuration for passwd .

passwd examples

passwd

Change your password.

Sudo passwd username

Change the password for the user named username .

Sudo passwd -S ted

Check the status of the password for the user named ted . Output will resemble the following:

Ted P 05/13/2014 2 365 7 28

Here, we see the user"s name (ted ), followed by a P , indicating that his password is currently valid and usable. The password will expire on May 5, 2014 . Ted cannot change his password more often than every 2 days, and must change the password every 365 days. He will be warned 7 days before a required password change, and if he allows his password to expire, his account will be disabled 28 days later.

Sudo passwd -S -a

Similar to the above command, but checks the password status for all user accounts, system-wide.

Sudo passwd -l jane

Lock the password for user jane . She will be unable to log in until a system administrator unlocks it.

Sudo passwd -u jane

Unlock jane "s password. It will automatically be reset to whatever it was before it was locked, and she will be able to log in again.

Sudo passwd -e alan

Expire alan "s password. The next time he logs in, he will be required to set a new password.

Related commands

chfn — Change a user"s finger information.
finger — List information about a user.
login — Begin a session on a system.
nispasswd — Change NIS+ password information.
nistbladm — Administer NIS+ tables.
useradd — Add a user to the system.
vipw — Safely edit the password file.
yppasswd — Change a network password in an NIS database.

passwd - изменяет пароль пользователя

СИНТАКСИС

passwd [параметры ] [УЧЁТНАЯ_ЗАПИСЬ ]

ОПИСАНИЕ

Программа passwd изменяет пароли пользовательских учётных записей. Обычный пользователь может изменить пароль только своей учётной записи, суперпользователь может изменить пароль любой учётной записи. Программа passwd также изменяет информацию об учётной записи или срок действия пароля. Изменение пароля Сначала пользователя попросят ввести старый пароль, если он был. Этот пароль зашифровывается и сравнивается с имеющимся. У пользователя есть только одна попытка ввести правильный пароль. Для суперпользователя этот шаг пропускается, для того чтобы можно было изменить забытый пароль. После ввода пароля проверяется информация об устаревании пароля, чтобы убедиться, что пользователю разрешено изменять пароль в настоящий момент. Если нет, то passwd не производит изменение пароля и завершает работу. Затем пользователю предложат дважды ввести новый пароль. Значение второго ввода сравнивается с первым и для изменения пароли из обеих попыток должны совпасть. Затем пароль тестируется на сложность подбора. Согласно общим принципам, пароли должны быть длиной от 6 до 8 символов и включать один или более символов каждого типа: · строчные буквы · цифры от 0 до 9 · знаки пунктуации Не включайте системные символы стирания и удаления. Программа passwd не примет пароль, который не имеет достаточной сложности. Выбор пароля Безопасность пароля зависит от стойкости алгоритма шифрования и размера пространства ключа. В старых системах UNIX метод шифрования основывался на алгоритме NBS DES. Сейчас рекомендуют более новые методы (смотрите ENCRYPT_METHOD ). Размер пространства ключа зависит от степени произвольности выбранного пароля. При обеспечении безопасности пароля выбирают нечто среднее между сложным паролем и сложностью работы с ним. По этой причине, вы не должны использовать пароль, который является словом из словаря или который придётся записать из-за его сложности. Также, пароль не должен быть названием чего-либо, номером вашей лицензии, днём рождения и домашним адресом. Обо всём этом легко догадаться, что приведёт к нарушению безопасности системы. О том, как выбрать стойкий пароль, читайте в http://ru.wikipedia.org/wiki/ Сложность_пароля.

ПАРАМЕТРЫ

Параметры команды passwd : -a , --all Этот параметр можно использовать только вместе с -S для вывода статуса всех пользователей. -d , --delete Удалить пароль пользователя (сделать его пустым). Это быстрый способ заблокировать пароль учётной записи. Это сделает указанную учётную запись беспарольной. -e , --expire Немедленно сделать пароль устаревшим. В результате это заставит пользователя изменить пароль при следующем входе в систему. -h , --help Показать краткую справку и закончить работу. -i , --inactive ДНЕЙ Этот параметр используется для блокировки учётной записи по прошествии заданного числа дней после устаревания пароля. То есть, если пароль устарел и прошло более указанных ДНЕЙ , то пользователь больше не сможет использовать данную учётную запись. -k , --keep-tokens Указывает, что изменение пароля нужно выполнить только для устаревших ключей аутентификации (паролей). Пользователи хотят оставить свои непросроченные ключи нетронутыми. -l , --lock Заблокировать пароль указанной учётной записи. Этот параметр блокирует пароль, изменяя его значение на вариант, который не может быть шифрованным паролем (добавляется символ «!» в начало пароля). Заметим, что это не блокирует учётную запись. Пользователь всё ещё может войти в систему с помощью другого способа аутентификации (например, с помощью ключа SSH). Чтобы заблокировать учётную запись, администратор должен использовать команду usermod --expiredate 1 (это установит дату устаревания учётной запись равной 2 января 1970 года). Посетитель с заблокированным паролем не может изменить свой пароль. -n , --mindays МИН_ДНЕЙ Задать минимальное количество дней между сменами пароля. Нулевое значение этого поля указывает на то, что пользователь может менять свой пароль когда захочет. -q , --quiet Не выводить сообщений при работе. -r , --repository РЕПОЗИТОРИЙ Изменить пароль в РЕПОЗИТОРИИ . -R , --root КАТ_CHROOT Выполнить изменения в каталоге КАТ_CHROOT и использовать файлы настройки из каталога КАТ_CHROOT . -S , --status Показать состояние учётной записи. Информация о состоянии содержит 7 полей. Первое поле содержит имя учётной записи. Второе поле указывает, заблокирован ли пароль учётной записи (L), она без пароля (NP) или у неё есть рабочий пароль (P). Третье поле хранит дату последнего изменения пароля. В следующих четырёх полях хранятся минимальный срок, максимальный срок, период выдачи предупреждения и период неактивности пароля. Эти сроки измеряются в днях. -u , --unlock Разблокировать пароль указанной учётной записи. Этот параметр разблокирует пароль, возвращая его прежнее значение (которое было перед использованием параметра -l ). -w , --warndays ПРЕД_ДНЕЙ Установить число дней выдачи предупреждения, перед тем как потребуется смена пароля. В параметре ПРЕД_ДНЕЙ указывается число дней перед тем как пароль устареет, в течении которых пользователю будут напоминать, что пароль скоро устареет. -x , --maxdays МАКС_ДНЕЙ Установить максимальное количество дней, в течении которых пароль остаётся рабочим. После МАКС_ДНЕЙ пароль нужно изменить.

ПРЕДОСТЕРЕЖЕНИЯ

Сложность пароля проверяется на разных машинах по разному. Пользователю настоятельно рекомендуется выбирать пароль такой сложности, чтобы ему нормально работалось. Пользователи не могут изменять свои пароли в системе, если включён NIS и они не вошли на сервер NIS. Команда passwd для аутентификации пользователей и для смены паролей использует PAM.

Понравилась статья? Поделитесь с друзьями!