如何使用passwd命令处理Linux中的帐户密码
passwd命令允许我们在Linux中更改用户密码,但它可以执行更多。
我们可以锁定(和解锁)用户。
我们可以让用户更改下一个登录名和更多的密码。
在本教程中,将介绍我们可以用作sysadmin的passwd命令的一些有用示例。
passwd命令示例
passwd命令适用于/etc/passwd文件。
我们所做的更改在此反映。
密码存储在Linux中的哪个位置?
它存储在/etc/shadow文件中的加密表单中。
让我们看看passwd命令的一些示例。
1.更改自己的密码
要更改当前用户的密码(例如:我们自己的帐户密码,只需在没有任何选项的情况下输入passwd命令。
passwd
我们将被要求首先使用我们当前的密码:
Hyman@theitroad:~$passwd Changing password for christopher. (current) UNIX password: Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully
如果我们输入当前密码作为新密码,系统会抛出错误消息,说密码不变,并再次提示我们输入新密码。
2.创建root密码
许多Linux发行版都没有root密码集。
访问root帐户的唯一方法是通过sudo或者su命令。
这是因为像'toor'这样的默认密码将使一个易受攻击者攻击的系统。
我们必须是sudo用户来创建root密码:
sudo passwd root
这是输出:
Hyman@theitroad:~$sudo passwd root [sudo] password for christopher: Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully
这是正确配置用户访问至关重要的原因之一。
我们不希望所有用户能够更改root密码!
3.更改其他用户的密码
我们可以使用passwd命令用作root或者sudo来更改Linux中的用户密码。
sudo passwd user_name
显然,我们将不会被要求旧密码。
我们在全部重置密码并作为admin,我们应该能够做到这一点。
Hyman@theitroad:/home/christopher# passwd christopher Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully
4.检查密码状态
我们可以查看用户密码的状态:
sudo passwd -S user_name
这是一个例子:
Hyman@theitroad:~$passwd -S christopher igi P 06/13/2017 0 99999 7 -1
让我们查看此信息。
我会将它组织成一个表,以便更容易阅读。
然后我会讨论某些值的意思。
用户名 | 状态 | 日期上次改变 | 最低年龄 | 最大年龄 | 警告期 | 不活动时期 |
---|---|---|---|---|---|---|
igi | P | 06/13/2017 | 0 | 99999 | 7 | -1 |
让我们先在状态列中查看。
以下是此字段的可能选项。
状态 | 描述 |
---|---|
P | 可用密码 |
NP | 没有密码 |
l | 锁定密码 |
有一些特殊数字保留用于在密码规则上设置参数。
年龄的特殊号码 | 描述 |
---|---|
9999 | 永远不会过期 |
0 | 可以随时更改 |
-1 | 没有活跃 |
其中我们可以看到警告期限在7天内设置,但由于禁用不活动时段,并且年龄设置为永不过期,因此不会发生警告。
5.检查所有帐户的密码状态
我们还可以检查系统上所有用户帐户的密码状态:
sudo passwd -Sa
6.强制用户在下次登录时更改密码
我们可以使用-e选项立即过期用户的密码。
这将强制用户在下次登录时更改密码。
sudo passwd -e user_name
这是强迫抵消的看起来如何:
Hyman@theitroad:/home/christopher# passwd -e christopher passwd: password expiry information changed.
现在,我们可以检查状态以记录更改:
Hyman@theitroad:/home/christopher# passwd -S christopher christopher P 01/01/1970 0 99999 7 -1
如我们所见,密码集日期已更改为"01/01/1970"。
此日期历史地与UNIX系统相关联,因为它是"时代"日期。
这基本上意味着在Unix历史中,该日期是日期'0'(在32位比例)。
我们已成功过期密码。
下次我的帐户登录时,它将被强制更改为不同的密码。
7.锁定或者解锁用户帐户
passwd命令的-l选项允许我们在Linux中锁定用户帐户:
sudo passwd -l user_name
在用户帐户上使用它后,密码将不再工作以授予访问权限。
Hyman@theitroad:/home/christopher# passwd -l christopher passwd: password expiry information changed.
我们可以根据前面讨论的,确认使用-s选项的用户密码的状态。
l代表此处的输出中的锁定。
Hyman@theitroad:/home/christopher# passwd -S christopher christopher L 06/13/2017 0 99999 7 -1
解锁用户帐户同样容易。
使用-u选项解锁用户:
Hyman@theitroad:/home/christopher# passwd -u christopher passwd: password expiry information changed.
我们可以确认状态。
输出装置中的p例如可用密码:密码可以与帐户一起使用。
Hyman@theitroad:/home/christopher# passwd -S christopher christopher P 06/13/2017 0 99999 7 -1
8.从帐户中删除密码并使它无密码
我没有看到任何实际用例,但我们可以删除某个帐户的密码。
这样,该帐户不会需要访问系统的密码。
这不利于安全性。
sudo passwd -d user_name