- Меняем пароль в Linux
- Утилита passwd
- Синтаксис и опции утилиты passwd
- Меняем свой пароль
- How to Change or Set User Password in Linux
- Changing a User Password in Linux
- Managing Linux Users with the passwd Command
- Remove User Password in Linux
- Lock User Password in Linux
- Unlock User Password in Linux
- Force User to Change Password in Linux
- Passwd Command in Linux – Options + Examples
- Prerequisites
- Passwd Command
- Passwd command Options
- Passwd Command Examples
Меняем пароль в Linux
Так как Linux — платформа многопользовательская, да еще и с особым уклоном в безопасность, то приходится иметь дела с полномочиями и паролями. Последний особенно часто нужен даже для выполнения тривиальных задач вроде установки свежего программного обеспечения.
Как и в других системах, пароли в Linux иногда приходится менять. В большинстве случаев это приходится делать чисто из соображений безопасности. Когда одним устройством пользуется группа людей, каждому выдается свой пароль. Время от времени их нужно менять для профилактики взлома и потенциальных утечек.
Если речь идет о каком-нибудь администрируемом сервере, то наверняка пользователь с наивысшими полномочиями вынуждает других менять пароль чуть ли не каждый месяц, а того и чаще. Все зависит от требований конкретного человека.
Собственно, об этом и поговорим. Как сменить пароль в Linux, каким должен быть этот пароль, как заставить поменять пароль других пользователей и так далее. Полный экскурс в мир безопасности на платформе Linux.
Утилита passwd
Вообще, в Linux есть несколько программ для управления паролями. Многие из них имеют графический интерфейс и визуально напоминают таковые из других операционных систем (Windows или macOS). Но использовать их все вовсе не обязательно, потому что есть универсальный способ изменения пароля, который вшит в Linux и поддерживается на любом дистрибутиве. Речь об утилите passwd.
Принцип ее работы заключается в изменении содержимого файла /etc/shadow. Это текстовый файл, в котором хранятся пароли. Пароли эти хранятся в зашифрованном виде, которые невозможно расшифровать. При этом пароль в этом файле можно заменить, но так как это процедура сложная, то проще воспользоваться специальной программой.
Также у passwd есть еще несколько преимуществ. С помощью нее можно вынуждать менять пароли других пользователей, а также ставить сроки действия пароля. То есть устанавливать некий таймер, по истечении работы которого пароль просрочится и перестанет работать. А еще можно проделывать любые махинациями с паролями других пользователей.
Синтаксис и опции утилиты passwd
Команды с использованием утилиты passwd строятся по следующей схеме: сначала пишем название самой программы, потом прописываем нужные опции, а потом имя пользователя, на которого будут применены описанные действия.
passwd (название утилиты) опции и имя пользователя .
Как видите, все довольно просто. Легко запомнить и самостоятельно разобраться.
А вот и список доступных опций:
- -d — с помощью этой опции можно удалить пароль у любого пользователя без возможности его вернуть (придется создавать новый). Естественно, после выполнения этой команды пользователь не сможет зайти в систему.
- -e — эта опция обозначает пароль выбранного пользователя устаревшим. Если ею воспользоваться, то система при следующей попытке пользователя войти, вынудит его сменить пароль, объясняя требование как раз-таки устаревшим паролем.
- -iи время — если воспользоваться этой опцией и указать определенный период времени, то после устаревания пароля, спустя этот временной отрезок пользователь будет удален из системы. Если в течение действия опции пользователь успеет заменить пароль на новый, то с учетной записью ничего не произойдет и она будет работать так же, как и раньше.
- -l — эта опция никак не связана с изменением пароля. Она выполняет одну простую функцию — блокирует пользователю доступ к системе.
- -u — а эта пригодится, чтобы разблокировать аккаунт и вернуть доступ выбранному пользователю.
- -nи количество — с помощью этой опции можно указать минимальное количество суток, которое должно пройти с последней смены пароля, чтобы вновь можно было изменить пароль выбранного пользователя.
- -S — воспользуйтесь этой опцией, чтобы получить полный перечень параметров, связанных с паролем у выбранной учетной записи. Она показывает, когда был установлен пароль, как часто он должен меняться, когда следующая смена, придет ли оповещение о необходимости сменить пароль и прочие полезные данные.
- -xи количество — этим параметром задается количество дней, в течение которого выбранный пользователем пароль будет являться актуальным.
- -wи количество — здесь тоже указывается количество дней. Спустя указанное количество суток после смены пароля (именно тогда вступает в действие эта опция) пользователь получит предупреждение о том, что его пароль устарел и его необходимо сменить.
Дальше поговорим о конкретных примерах использования passwd с некоторыми из перечисленных опций.
Меняем свой пароль
Начнем с самой простой и, наверное, самой востребованной операции. Обычная смена пароля для самого себя. То есть для пользователя, под данными которого вы выполнили вход и от лица которого запустили терминал.
- Для смены пароля просто вводим команду passwd . Никакие опции и параметры здесь не нужны. Программа сама определит, что вы за пользователь, а отсутствие опций даст ей понять, что нужно без лишней суеты просто поменять пароль.
How to Change or Set User Password in Linux
As a regular user, you have a password that safeguards your account, and this account contains all your personal settings and files and therefore requires important protection.
Hence, it is a good practice to change your password consistently to decrease the possibility that someone else gets to recognize your password and can use your credentials to authenticate.
When changing a user password, make sure it meets the following minimal requirements:
- A password must be strong: at least six or eight characters or more is better.
- Make sure to use complex passwords by mixing letters, numbers, and other characters to make the password as hard to guess as possible.
- Use upper and lowercase letters to make the password harder to crack by an attacker.
- Make sure to avoid using any dictionary word as a password, because attackers use a brute-force password cracker to scan the whole contents of a dictionary, and if your password is in the dictionary, they can easily crack it.
Changing a User Password in Linux
Changing a user password is not that hard, just use the passwd command to change the password of your own account (it could be a root user or regular user).
Now, you need to enter your old password, as this is to prevent others from changing your password. Next, you need to enter the new password twice and make sure that your password meets the complexity rules as explained above; else, it will not be changed.
If you are logged in as a root user, you can change the password of other system users by typing the passwd command followed by the name of the user whose password you want to change.
It won’t prompt you for the old password, since you are logged in as a root user, you should be able to change the user’s passwords without knowing the old password.
Managing Linux Users with the passwd Command
There are other useful options that you can use while changing a user’s password and they are:
Remove User Password in Linux
Use the -d argument to remove the password for the specified user account.
Lock User Password in Linux
Use the -l argument to lock the password for a user account if it is not used for a given period of time.
Unlock User Password in Linux
Use the -u argument to unlock the user password that has been locked with -l option.
Force User to Change Password in Linux
Use the -e argument to force the user to change the password during the next login attempt.
The passwd command is pretty useful to manage system users on your Linux system. It manipulates the user entries in the /etc/passwd file, and the system administrator must have this as a toolkit.
Passwd Command in Linux – Options + Examples
Security is one of the many bragged features about Linux and it can be justified by the way it manages and authenticates its users. Authentication of users is done in Linux through passwords and public keys.
Linux distributions allow to set administrative accounts during the OS installation and this can be changed later if you have the required privilege. Generally, there is no default password set for any user accounts in Linux. When new users are created using the useradd, the account doesn’t have a password; in order to login, the password has to be created separately.
In this tutorial, we’ll be learning about passwd command in Linux to change passwords in Linux.
Prerequisites
- Any Linux system
- Basic knowledge of Linux command line
- An existing user account
- Required privilege to run the command
Passwd Command
passwd is a command that changes user account passwords in the Linux system. A regular user has the privilege to only change the password for their individual account while a superuser (root) exercises the privilege to change passwords for any account in the system.
The passwd command changes the user’s password by modifying the passwords that are stored as encrypted strings in the /etc/shadow file. It can also be used to change the validity periods and other related settings for passwords associated with the account.
After entering the passwd command in the terminal, users first need to enter their current password for verification. Superusers are exempt from this step when changing the passwords for other accounts, especially necessary to reset the forgotten passwords for user accounts.
After verifying the current password, passwd makes sure if the current user has the privilege to alter the password.
Only if the current user has the privilege, s/he is prompted for a new password. It checks the complexity of the set user passwords in the next step. If the password passes the complexity test, passwd prompts for retyping the new password. If the two passwords match, a new password is set for the user.
The configuration files passwd uses are:
- /etc/passwd — stores the user account information
- /etc/shadow — stores secure user account information
- /etc/pam.d/passwd — stores PAM configuration for passwd
Passwd command Options
Option | Description |
-a , —all | Display password status of every account in the system |
-d , —delete | Remove user password |
-e , —expire | Expire user’s password immediately |
-h , —help | Show this help information |
-k , —keep-tokens | Change password only in case of expired authentication tokens |
-i , —inactive INACTIVE | Deactivate the password after INACTIVE number of days following the password expiry |
-l , —lock | Lock the password for the account specified |
-n , —mindays MIN_DAYS | Set the minimum number of days between password changes to MIN_DAYS |
-q , —quiet | Enable quiet mode |
-r , —repository REPOSITORY | Change password in REPOSITORY repository |
-R , —root CHROOT_DIR | Specify directory to chroot into |
-S , —status | Display account status information |
-u , —unlock | Unlock the password of the named account |
-w , —warndays WARN_DAYS | Set the number of days before the required password change the user will be warned to WARN_DAYS |
-x , —maxdays MAX_DAYS | Set the maximum number of days the password remains valid for a user to MAX_DAYS |
Passwd Command Examples
Now, we’ll be seeing the passwd commands in action with the following examples.