1. passwd命令简介
passwd命令用来更改Linux使用者的密码。passwd命令用于设置用户的认证信息,包括用户密码、密码过期时间等。系统管理者则能用它管理系统用户的密码。只有管理者可以指定用户名称,一般用户只能变更自己的密码。
2. passwd选项
-d:删除密码,仅有系统管理者才能使用;
-f:强制执行;
-k:设置只有在密码过期失效后,方能更新;
-l:锁住密码;
-s:列出密码的相关信息,仅有系统管理者才能使用;
-u:解开已上锁的帐号。
3. 修改其它用户密码
以zcwyou用户为例
[root@zcwyou ~]# passwd zcwyou
Changing password for user zcwyou.
New UNIX password: 这里输入新密码
Retype new UNIX password: 再输入一次新密码
passwd: all authentication tokens updated successfully. 表示更新成功。
注意:如果是普通用户执行passwd只能修改自己的密码。如果新建用户后,要为新用户创建密码,则用passwd用户名,注意要以root用户的权限来创建。
4. 修改自己的密码
[root@zcwyou ~]# passwd
Changing password for user zcwyou.更新当前用户密码;
(current) UNIX password: 设置当前用户密码;
New UNIX password: 设置新密码;
Retype new UNIX password: 再次输入新密码;
passwd: all authentication tokens updated successfully.更新成功;
5. 锁定用户密码
锁定用户zcwyou不能更改密码
[root@zcwyou ~]# passwd -l zcwyou
Locking password for user zcwyou.
passwd: Success
锁定成功;
验证结果:
zcwyou切换到用户zcwyou
[root@zcwyou ~]# su
[zcwyou@zcwyou ~]$ passwd
Changing password for user zcwyou.
Changing password for zcwyou
(current) UNIX password: //输入zcwyou的当前密码;
passwd: Authentication token manipulation error //拒绝修改密码;
6. 清除用户密码
使用选项-d
清除zcwyou用户密码;
[root@zcwyou ~]# passwd -d zcwyou
Removing password for user linuxde.
passwd: Success //清除成功;
验证:
查询zcwyou用户密码状态;
[root@zcwyou ~]# passwd -S zcwyou
Empty password. 输出表示密码为空;
7. passwd几个比较重要的参数
[root@zcwyou ~]# passwd --help
Usage: passwd [OPTION…]
-k, --keep-tokens
keep non-expired authentication tokens
注:保留即将过期的用户在期满后能仍能使用;
-d, --delete
delete the password for the named account (root only)
注:删除用户密码,仅能以root权限操作;
-l, --lock
lock the named account (root only)
注:锁住用户无权更改其密码,仅能通过root权限操作;
-u, --unlock
unlock the named account (root only)
注:解除锁定;
-f, --force
force operation
注:强制操作;仅root权限才能操作;
-x, --maximum=DAYS
maximum password lifetime (root only) 注:两次密码修正的最大天数,后面接数字;仅能root权限操作;
-n, --minimum=DAYS
minimum password lifetime (root only) 注:两次密码修改的最小天数,后面接数字,仅能root权限操作;
-w, --warning=DAYS
number of days warning users receives before 注:在距多少天提醒用户修改密码;仅能root权限操作;
password expiration (root only)
-i, --inactive=DAYS
number of days after password expiration when an 注:在密码过期后多少天,用户被禁掉,仅能以root操作;
account becomes disabled (root only)
-S, --status
report password status on the named account (root 注:查询用户的密码状态,仅能root用户操作;
only)
--stdin
read new tokens from stdin (root only)
8. 使用chage设置用户密码有效期限
chage 用语法格式:
chage [-l][-m 最小天数] [-M 最大天数][-W 警告] [-I 失效日][-E 过期日] [-d 最后日] 用户
格式为:chage [<选项>] <用户名>
下面列出了chage命令的选项说明:
-m days: 密码可更改的最小天数。为零时代表任何时候都可以更改密码。
-M days: 指定口令有效的最多天数。当该选项指定的天数加上-d选项指定的天数小于当前的日期时,用户在使用该帐号前就必须改变口令。
-d days: 指定从1970年1月1日起,口令被改变的天数。
-I days: 指定口令过期后,帐号被锁前不活跃的天数。如果值为0,帐号在口令过期后就不会被锁。
-E date: 指定帐号被锁的日期。日期格式YYYY-MM-DD。若不用日期,也可以使用自1970年1月1日后经过的天数。
-W days: 指定口令过期前要警告用户的天数。
-l: 列出指定用户当前的口令时效信息,以确定帐号何时过期。
例如下面的命令要求用户user1两天内不能更改口令,并且口令最长的存活期为30天,并且口令过期前5天通知用户
chage -m 2 -M 30 -W 5 user1
可以使用如下命令查看用户user1当前的口令时效信息:chage -l user1
提示:1)可以使用chage <用户名>进入交互模式修改用户的口令时效。
2)修改口令实质上就是修改影子口令文件/etc/shadow中与口令时效相关的字段值。
评论前必须登录!
注册