Администрирование ( смена ) паролей в Linux.

Операционная система Linux проектировалась как много пользовательская и  очень безопасная система. У каждого пользователя есть свой пароль , права доступа и т.д. И конечно же все это на администрировать, если вы не единственный пользователь данной системы . В большинстве случаев смена пароля выполняется с помощью утилиты passwd. Но для начало мы немного разберемся с пользователями и паролями.

Список пользователей в Linux хранится в файле /etc/passwd, вы можете открыть его и посмотреть:

root:x:0:0:root:/root:/bin/bash

Тут мы видим пользователя root с домашней папкой /root  и шелом /bin/bash . Пароли хранятся в  в отдельный файл — /etc/shadow :

test:$6$EZzr58RF$om6xDW9koDCeZ0eMWToAICRCff0O472ITYeaD18LfB7iYdOnAuqHFU2WnntvH/LSzlESlos530ciI7vDGGey61:17568:0:99999:7:::
  • Пароль не храниться в открытом в виде, он зашифрован и храниться только его хеш.

Ну а теперь перейдем к самой утилите passwd , синтаксис ее такой :

$ passwd опции пользователь

Рассмотрим опции, чтобы лучше ориентироваться в использовании утилиты:

-d — удалить пароль пользователя, после этого он не сможет войти.
-e — сделать пароль устаревшим.
-i — через сколько дней после того, как пароль устарел отключить аккаунт если пользователь не сменил пароль.
-l — запретить пользователю входить в систему.
-n — минимальное количество дней между сменами пароля.
-S — отобразить информацию об пользователе.
-u — отменяет действие параметра -l .
-x — максимальное количество дней, пока пароль можно использовать.
-w — количество дней, после которых нужно предупреждать пользователя, о том, что надо сменить пароль.

КАК СМЕНИТЬ ПАРОЛЬ ?

Для смены своего пароля вам надо набрать всего лишь одну команду и вести новый пароль :

passwd test

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

И не пугайтесь если вы не видите в консоли пароль который вводите, это сделано в целях безопасности. Ни каких звездочек )

КАК СМЕНИТЬ ПАРОЛЬ ДРУГОГО ПОЛЬЗОВАТЕЛЯ ?

Тут все немного сложней, для смены пароля другова пользователя у вас должны быть права суперпользователя(root). А во всем остальном все также :

sudo passwd test1

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

КАК ЗАСТАВИТЬ ПОЛЬЗОВАТЕЛЯ ПОМЕНЯТЬ ПАРОЛЬ ?

В безопасности  пароли играют большую роль! Думаю вы все знаете что их надо периодически меня. Но пользователи такие ленивые, надо их это заставить сделать ) Для этого используется опция -x:

passwd -x30 test

root@root:/etc# passwd -x30 test  //менять пароль каждые 30 дней.
passwd: password expiry information changed.

Посмотреть информацию о пользователе можно опцией -S :

passwd -S test

test P 02/06/2018 0 30 7 -1
  • Первое поле — имя пользователя
  • Второе поле показывает одно из значений: P — пароль установлен, L — пользователь заблокирован, NP — пароля нет.
  • 02/06/2018 — дата последнего изменения пароля.
  • 0 — минимальное время до смены пароля.
  • 30 — максимальное время действия пароля.
  • 7 — за сколько дней нужно предупреждать об истечении срока действия пароля.
  • -1 — через сколько дней пароль нужно деактивировать.

За три дня до того, как пароль устареет предупредим пользователя, что пароль нужно сменить:

 passwd -w 3 test

Если он этого не сделает в течении пяти дней, аккаунт нужно отключить:

 passwd -i 3 test

Пароль можно менять не чаще, чем раз в 10 дней:

 passwd -n 10 test

Вот и все наука, пользуйтесь.

Denian / Ubuntu. На других Linux дистрибутивах установка может отличаться.