Linux的系统用户和用户组管理
1/etc/passwd与/etc/shadow
1.1 /etc/passwd由七段组成;
格式:root:x:0:0:root:/root:/bin/bash
分别为:
用户名:口令:uid:gid:注释说明:家目录:用户的shell
其中第2段的口令,因安全因素,放在/etc/shadow中,用x代替
uid和gid则是数字
最后的用户的shell是用户登录后,要启动一个进程,用来将用户下达的指令传给内核,这就是shell;
1.2 /etc/shadow 由9段组成
第1:用户名
第2:用户密码,加密过
第3:上次更改密码的日期
第4:过多少天才能更改密码,默认为0
第5:密码多少天后到期,默认99999
第6:m密码到期前的警告,如果设置7,就是密码到期7天前给警告
第7:账号失效期限:如果是3,密码到期3天后会失效
第8:账号的生命周期,多少天后账号作废
第9:保留字段,无意义
2 用户和用户组管理
2.1 新增组 groupadd [-g GID] 组名
不加-g,则是自己增加,-g则是自己制定
groupadd -g 1008 testgroup
默认组是从1000开始的
查看组信息: tail /etc/group
image.png
2.2 删除组的命令 groupdel 组名
不能删除有账户的组,必须先删除用户,才能删除组
2.3 增加用户的命令 useradd [-u UID] [-g GID] [-d HOME] [-M] [-s]
-u表示用户的uid,一样从1000开始
-g指定组
-d自定义的家目录
-M表示不建立家目录
-s表示自定义的shell
eg:useradd testuser1
如果后面什么都不加,会默认创建一个和用户名一样的组
2.4 删除用户命令: userdel [-r] username
-r表示连家目录也删除
3. chfn命令
没什么实际用处,修改/etc/passwd中的第5段,备注信息
4. 用户密码管理
4.1 passwd命令:格式: passwd [username]
如果不加username,则默认修改自己的密码。只有root才能改其他用户的密码,其他用户默认只能改自己的。
image.png
4.2 mkpasswd命令,生成密码。
默认是没有这个命令的,yum install -y expect来安装
mkpasswd
mkpasswd -l 12 :生成12位密码
mkpasswd -l 12 -s 0 -d 3:生成12位包含几个特殊字符几个数字的密码
image.png
5. 用户身份切换
可以创建一个测试账户,修改密码,然后登录,可以使用whoami查看是谁。
root的前面是#,其他用户是$
5.1 su命令 切换
su [-] username
不加-切换后,目录不变,加-后切换,会变成加目录。
root切换成其他用户不用密码
后面不加username,表示切换到root
5.2 命令sudo
sudo [-] username
6.不允许root远程登录Linux
在/etc/ssh/sshd_config中将PermitRootLogin 改为no
网友评论