Команда passwd – ключевой инструмент безопасности в Linux, который позволяет изменить пароль пользователя. Обеспечивая доступ к системе и защиту учётной записи, она предоставляет контроль над сроком действия пароля, его сложностью и настройками.
- Команда passwd в Linux с примерами
- Синтаксис команды passwd
- Основные опции:
- Смотреть информацию о статусе пароля. Опция -S
- Смотреть информацию о статусе пароля для всех учетных записей.
- Изменение пароля любого пользователя системы в linux
- Как удалить пароль для учетной записи. Опция -d
- Как заблокировать пользователя. Опция -l
- Как разблокировать пользователя. Опция -u
- Обязать пользователя изменить пароль при следующем входе в систему. Опция —expire
- Настройка автоматической блокировки неактивных учетных записей. Опция -i
- Настройка минимального интервала смены паролей. Опция -n, —mindays
- Установите максимальное количество дней, в течение которых пароль остается действительным. Опция -x, —maxdays
- Включение предупреждение об истечении срока действия пароля. Опция —warndays
- Блокировка пароля. Опция —lock
- Разблокировка пароля учетной записи. Опция —unlock
- Заключение
Команда passwd в Linux с примерами
В этой статье рассмотрим, как через командную строку управлять паролями, воспользоваться опциями, установить максимальное и минимальное значение символов, блокировать и разблокировать учетные записи. Незаменимый инструмент для системных администраторов.
Синтаксис команды passwd
Синтаксис команды passwd прост и понятен:
1 | $ passwd [опции] [пользователь] |
Здесь:
- опции — дополнительные параметры команды, такие как изменение минимальной длины пароля или блокировка учетной записи.
- пользователь — имя пользователя, чей пароль вы хотите изменить. Если не указан, будет изменен пароль текущего пользователя.
Например, чтобы изменить пароль для текущего пользователя «chuzhoy007_ru» нужно просто указать команду «passwd». Будет предложено ввести текущий пароль и если его написали правильно последует предложение для ввода нового пароля, затем требование повторить новый пароль еще раз. Если никаких ошибок не было выведено то можно выйти из системы и зайти уже с новым паролем.
Внимание! Учтите, что в большинстве дистрибутивов Linux при вводе пароля не отображается никаких символов и обозначений! Просто вводите нужные знаки. На экране не будет признаков ввода и это нормально.
Основные опции:
- -a, —all — просмотр информации о состоянии паролей всех пользовательских записей;
- -d, —delete — используется для удаления пароля учетной записи, делая учетную запись доступной для аутентификации без пароля;
- -e, —expire — применяется для немедленной деактивации пароля учетной записи пользователя, требуя его обновления при следующей попытке входа;
- -k, —keep-tokens — используется для изменения пароля только для учетных записей, у которых истек срок действия пароля. Сохраняет существующие аутентификационные токены и позволяет изменить пароль без необходимости ввода старого пароля.
- -l, —lock — используется для блокировки учетной записи пользователя, запрещая ей доступ к системе до разблокирования;
- -n, —mindays МИН_ДНЕЙ — позволяет установить минимальное количество дней, которое должно пройти после смены пароля, прежде чем он может быть изменен снова$
- -S, —status — выводит краткое состояние пароля и его параметров для указанной учетной записи;
- -u, —unlock — разблокировать заданную учётную запись;
- -w, —warndays ПРЕДУП_ДНЕЙ — позволяет установить количество дней, за которое будет выдано предупреждение о необходимости изменения пароля перед истечением его срока действия;
- -x, —maxdays МАКС_ДНЕЙ — устанавливает максимальное количество дней, в течение которых пароль учетной записи пользователя остается действительным, перед тем как потребуется его изменение;
Смотреть информацию о статусе пароля. Опция -S
При применении опции «—status» с командой «passwd», система предоставляет полную информацию о пароле и его сроках действия. Вариант сокращения этой команды — «passwd -S». При вызове «passwd -S» вы увидите краткое описание статуса пароля, включая даты последнего изменения, минимальный и максимальный сроки действия.
Рассмотрим пример вывода информации для пользователя «chuzhoy007_ru»:
1 | $ passwd chuzhoy007_ru --status |
Вывод:
1 | chuzhoy007_ru P 2023-07-23 0 99999 7 -1 |
Для статуса пароля определено 7 полей:
- chuzhoy007_ru — Это имя пользователя, для которого отображается статус.
- P — Этот символ обозначает статус учетной записи пользователя. В данном случае, «P» означает, что учетная запись является «паролированной» (для неё задан пароль). Может также иметь статус заблокированный пароль (L), отсутствие пароля (NP).
- 2023-07-21 — Это дата, когда последний раз был изменен пароль для этой учетной записи.
- 0 (ноль) — Количество дней, прошедших с момента последнего изменения пароля. Если значение равно нулю, это означает, что пароль был изменен в день, указанный во втором пункте (дате последнего изменения пароля).
- 99999 — Минимальное количество дней, которое должно пройти между изменениями пароля.
- 7 — Максимальное количество дней, через которое пароль должен быть изменен.
- -1 — Количество дней, за которое предупреждение о скором истечении срока действия пароля будет показано пользователю.
Смотреть информацию о статусе пароля для всех учетных записей.
Для получения информации о статусе всех учетных записей используйте команду passwd с использованием «sudo» (потребуется пароль для пользователя с правами root) и параметрами «-S» и «-a», либо с расширенной версией «—all»:
1 | $ sudo passwd --status --all |
либо с короткой версией команды:
1 | $ sudo passwd -S -a |
Изменение пароля любого пользователя системы в linux
Чтобы изменить пароль для учетной записи другого пользователя в системе linux нужно работать из под учетной записи суперпользователя (root) либо входить в группу «sudo».
Для примера я буду использовать пользователя «Vasiliy». Допустим, что мне нужно изменить пароль для этого пользователя. Даем команду:
1 | $ sudo passwd vasiliy |
Так как я работаю с помощью пользователя находящегося в группе «sudo» мне сначала нужно указать свой пароль. Затем новый пароль для пользователя «Vasiliy». Если указали все правильно и без ошибок отобразится запись — «пароль успешно обновлён».
Как удалить пароль для учетной записи. Опция -d
Важно понимать, что удаление пароля учетной записи делает ее более уязвимой для несанкционированного доступа. В большинстве случаев рекомендуется только временно удалять пароль и затем установить новый для обеспечения безопасности.
Для примера я удалю пароль для пользователя «vasiliy» для этого даем команду:
1 | $ sudo passwd -d vasiliy |
Для проверки успешного выполнения дадим команду:
1 | $ sudo passwd -S vasiliy |
и видим, что статус пароля имеет значение «NP» то есть пароль снят.
Как заблокировать пользователя. Опция -l
Чтобы показать пример блокировки я буду использовать учетную запись «vasiliy». Команда:
1 | $ sudo passwd -l vasiliy |
Для проверки, что запись действительно заблокирована используем опцию -S:
1 | $ sudo passwd -S vasiliy |
Видим значение «l», что указывает на блокировку учетной записи.
Как разблокировать пользователя. Опция -u
Чтобы разблокировать учетную запись необходимо использовать опцию «-u». Я разблокирую учетную запись «vasiliy» для этого дам команду:
1 | $ sudo passwd -u vasiliy |
Учетная запись разблокирована.
Обязать пользователя изменить пароль при следующем входе в систему. Опция —expire
В системах Linux можно обеспечить повышенную безопасность, требуя от пользователей сменить пароль при следующей авторизации. Эта мера позволяет убедиться, что пользователи регулярно обновляют свои пароли, предотвращая возможные уязвимости.
Синтаксис:
1 | sudo passwd --expire [имя_пользователя] |
Где [имя_пользователя] — это учетная запись, для которой вы хотите обязать сменить пароль.
Чтобы обязать пользователя сменить пароль при следующем входе, используйте команду с опцией «—expire» или «-e». Для примера я буду использовать учетную запись «vasiliy». Команда:
1 | $ sudo passwd --expire vasiliy |
Теперь если попытаться войти то будет выдано предупреждение о необходимости изменения пароля по требованию администратора.
Эта мера обеспечивает дополнительный уровень защиты, так как пользователю будет недоступен доступ к системе, пока он не сменит свой пароль. После смены пароля, он сможет войти в систему с использованием нового пароля.
Настройка автоматической блокировки неактивных учетных записей. Опция -i
Системы безопасности Linux предоставляют возможность автоматически блокировать учетные записи, которые остались неактивными в течение определенного периода времени. Это создает дополнительную защиту от злоумышленников, которые могут попытаться использовать неактивные учетные записи для несанкционированного доступа.
Команда «passwd —inactive» позволяет настроить автоматическую блокировку. Синтаксис такой:
1 | $ sudo passwd --inactive [количество_дней] [имя_пользователя] |
Здесь:
- количество_дней — количество дней неактивности, после которых учетная запись будет автоматически заблокирована.
- имя_пользователя — имя пользователя, для которого вы хотите настроить автоматическую блокировку.
Например, чтобы заблокировать учетную запись «vasiliy» после 90 дней бездействия, выполните:
1 | $ sudo passwd --inactive 90 vasiliy |
либо короткий вариант:
1 | sudo passwd -i 90 vasiliy |
Таким образом, если учетная запись пользователя «vasiliy» не будет использоваться в течение 90 дней, она автоматически заблокируется, что повысит общую безопасность системы.
Настройка минимального интервала смены паролей. Опция -n, —mindays
Команда «passwd» предоставляет возможность установки минимального количества дней, которое должно пройти с момента последней смены пароля, прежде чем пользователь сможет его изменить. Для этого доступны два варианта опции: полный «—mindays» и короткий «-n».
Синтаксис:
1 | sudo passwd --mindays [количество_дней] [имя_пользователя] |
Здесь:
- количество_дней — определяет количество дней, которое должно пройти с момента смены пароля, прежде чем пользователь сможет это сделать снова.
- имя_пользователя — имя пользователя, для которого вы хотите установить ограничение.
Пример использования. Допустим, вы хотите, чтобы пользователь «vasiliy» cмог менять пароль не чаще одного раза в 10 дней. Вот как это делается:
1 | $ sudo passwd --mindays 10 vasiliy |
Или используя короткий вариант:
1 | $ sudo passwd -n 10 vasiliy |
Такая практика помогает поддерживать баланс между безопасностью и удобством, способствуя эффективной защите аккаунтов в системе.
Установите максимальное количество дней, в течение которых пароль остается действительным. Опция -x, —maxdays
Установка максимального срока действия пароля является ключевым элементом обеспечения безопасности в Linux. Команда «passwd» с опцией «—maxdays» позволяет вам определить максимальное количество дней, в течение которых пароль будет оставаться действительным. Эта мера способствует регулярной смене паролей и минимизации рисков, связанных с долгосрочным использованием одних и тех же паролей.
Синтаксис:
1 | $ sudo passwd --maxdays [количество_дней] [имя_пользователя] |
Здесь:
- количество_дней — определяет максимальное количество дней, в течение которых пароль остается действительным.
- имя_пользователя — указывает имя пользователя, для которого вы хотите настроить ограничение.
Для примера установим ограничение максимального срока действия пароля в 90 дней пользователю «vasiliy». Команда:
1 | $ sudo passwd --maxdays 90 vasiliy |
Короткий вариант команды:
1 | $ sudo passwd -x vasiliy |
Включение предупреждение об истечении срока действия пароля. Опция —warndays
Сообщение о предупреждении о периоде отображается для паролей, чей срок действия подходит к концу. Используйте опцию —warndays или -w, чтобы установить количество дней, за которое будет выдано предупреждение перед истечением срока действия. Синтаксис:
1 | $ sudo passwd --warndays [количество дней] [имя_пользователя] |
Либо так:
1 | $ sudo passwd -w [количество дней] [имя_пользователя] |
Здесь:
- [количество дней] — укажите желаемое количество дней за которое пользователю будет выведено сообщение об окончании действия пароля.
- [имя_пользователя] — Это параметр, в который вам следует ввести имя пользователя, для которого вы хотите настроить предупреждение о сроке действия пароля.
Пример. Я установлю для пользователя «vasiliy» вывод сообщения за 7 дней до окончания действия его пароля.
1 | sudo passwd --warndays 7 vasiliy |
Блокировка пароля. Опция —lock
Это полезная мера безопасности, которая временно запрещает пользователю доступ к системе. Заблокировав учетную запись, вы можете предотвратить вход как из обычного режима, так и через удаленные соединения.
Синтаксис:
1 | $ sudo passwd --lock <имя_пользователя> |
Либо сокращенный вариант:
1 | $ sudo passwd -l [имя_пользователя] |
Пример использования. Чтобы заблокировать учетную запись пользователя «vasiliy», выполню команду:
1 | $ sudo passwd --lock vasiliy |
Пользователь «vasiliy» больше не сможет войти в систему, пока его учетная запись будет заблокирована.
Разблокировка пароля учетной записи. Опция —unlock
Чтобы разблокировать пароль пользователя необходимо использовать опцию «—unlock» или «-u».
Синтаксис:
1 | $ sudo passwd --unlock [имя_пользователя] |
Пример использования. Чтобы разблокировать учетную запись пользователя «vasiliy», выполним команду:
1 | $ sudo passwd --unlock vasiliy |
Либо короткий вариант:
1 | $ sudo passwd -u vasiliy |
После выполнения этой команды, учетная запись снова станет доступной. Статус пароля меняется с заблокированного (L) на предыдущее состояние пароля (P), что позволяет пользователю регулярно входить в систему.
Заключение
Команда passwd в Linux — это неотъемлемый инструмент для управления безопасностью учетных записей. Она позволяет изменять пароли, устанавливать сроки действия, блокировать и разблокировать учетные записи, а также настраивать предупреждения перед истечением срока действия паролей.
Благодаря ей, администраторы могут поддерживать высокий уровень безопасности, обеспечивать доступ только авторизованным пользователям и следить за обновлениями учетных данных.
Я постарался рассказать о самых востребованных вариантах использования. Для подробного изучения смотрите подробный справочник который можно открыть с помощью команды:
1 | $ man passwd |
Короткую справку можно получить командой:
1 | $ passwd --help |