Linux Command passwd、gpasswd
tags: 用户管理
文章目录
1. passwd
Linux passwd命令用来更改使用者的密码
1.1 参数
-d 删除密码 -f 强制执行 -k 更新只能发送在过期之后 -l 停止账号使用 -S 显示密码信息 -u 启用已被停止的账户 -x 设置密码的有效期 -g 修改群组密码 -i 过期后停止用户账号 选择参数: --help 显示帮助信息 --version 显示版本信息
1.2 交互修改密码
passwd 命令后面不接任何参数或用户名,则表示修改当前用户的密码;请看下面的例子;
$ passwd 注:没有加任何用户,我是用root用户来执行的passwd 表示修改root用户的密码;下面也有提示; Changing password for user root. New UNIX password: 注:请输入新密码; Retype new UNIX password: 注:验证新密码; passwd: all authentication tokens updated successfully. 注:修改root密码成功;
如果是普通用户执行passwd 只能修改自己的密码;
如果新建用户后,要为新用户创建密码,则用 passwd 用户名 ,注意要以root用户的权限来创建;
$ passwd beinan 注:更改或创建beinan用户的密码; Changing password for user beinan. New UNIX password: 注:请输入新密码; Retype new UNIX password: 注:再输入一次; passwd: all authentication tokens updated successfully. 注:成功;
1.3 非交互修改密码
echo "123" | passwd --stdin liming
1.4 查看用户密码的状态
$ passwd -S liming liming PS 2013-01-06 0 99999 7 -1 (Password set, SHA512 crypt.)
意思依次是:用户名 密码 设定时间(2013*01-06) 密码修改间隔时间(0) 密码有效期(99999) 警告时间(7) 密码不失效(-1),密码已使用
"-S"选项会显示出密码状态,这里的密码修改间隔时间、密码有效期、警告时间、密码宽限时间其实分别是 /etc/shadow 文件的第四、五、六、七个字段的内容。
1.5 修改密码 60 天变更、10 天密码失效
$ passwd -x 60 -i 10 liming $ passwd -S liming liming PS 2013-01-06 0 60 7 10 (Password set, SHA512 crypt.)
这里显示 SHA512 为密码加密方式,CentOS 6.3 加密方式已经从 MD5 加密更新到 SHA512 加密
1.6 锁定用户
$ passwd -I lamp Locking password for user . passwd:Successg $ passwd -S lamp lamp LK 2013-01-06 0 99999 7 -1 (Password locked.) $ grep "lamp" /etc/shadow lamp:!! $6$ZTq7o/9o $lj07iZ0bzW.D1zBa9CsY43d04onskUCzjwiFMNt8PX4GXJoHX9zA1S C9.i Yzh9LZA4fEM2lg92hM9w/p6NS50.:15711:0:99999:7:::
锁定其实就是在加密密码之前加入了"!!",让密码失效而已
1.7 解锁用户
$ passwd -u lamp Unlocking password for user lamp. passwd:Success $ passwd -S lamp lamp PS 2013-01-06 0 99999 7 -1 (Password set, SHA512 crypt.) #可以看到,锁定状态消失 $ grep "lamp" /etc/shadow lamp: $6$ZTq7cV9o $lj07iZ0bzW.D1zBa9CsY43d04onskUCzjwiFMNt8PX4GXJoHX9zA1S C9.iYz h9LZA4fEM2lg92hM9w/p6NS50.:15711:0:99999:7:::
2. gpasswd
gpasswd命令 是Linux下工作组文件/etc/group和/etc/gshadow管理工具。
-a:添加用户到组; -d:从组删除用户; -A:指定管理员; -M:指定组成员和-A的用途差不多; -r:删除密码; -R:限制用户登入组,只有组中的成员才可以用newgrp加入该组。
1.将userA添加到groupB用户组里面:
gpasswd -a userA groupB
注意:添加用户到某一个组可以使用 usermod -G groupB userA 这个命令可以添加一个用户到指定的组,但是以前添加的组就会清空掉, 所以想要添加一个用户到一个组,同时保留以前添加的组时,请使用gpasswd这个命令来添加操作用户。
2.将userA设置为groupA的群组管理员:
gpasswd -A userA groupA