目录
1 用户与组
- kali Linux系统中用户与组相关设置文件位于etc目录下的三个文件中,分别是passwd、shadow、group。
- 在Linux系统中,先有组再有用户,也就是创建用户时需要指定(或默认指定)其所属的组。
- 在Linux系统中,用户一般分为超级管理员(uid = 0)、程序用户(uid = 1~499)、普通用户(uid = 500~60000)
- 进入etc目录利用ls目录浏览目录下文件,找到三个文件位置如下图所示。
1.1 passwd文件
- 功能:保存操作系统中所有用户的信息。
- 格式:共有7个字段,用“ : ”隔开,其中各字段含义如下。
- 字段1:用户名。
- 字段2:密码占位符,如果为空则表示无密码。
- 字段3:用户的uid。
- 字段4:基本组的gid。
- 字段5:用户信息记录字段。
- 字段6:用户的家目录。
- 字段7:用户登录系统后使用的命令解释器。“/bin/bash”表示可以登录系统;“/sbin/nologin”表示不能登录系统。
- 查看文件信息:使用命令 cat /etc/passwd 。结果如下。
1.2 shadow文件
- 功能:保存着用户密码信息。
- 格式:共有8个字段,用“ : ”隔开,其中各字段含义如下。
- 字段1:用户名。
- 字段2:用户的密码加密后的字符串。
- 字段3:距离1970/1/1密码最近一次的修改时间。
- 字段4:密码的最短有效期。
- 字段5:密码的最长有效期。
- 字段6:密码过期前7天警告。
- 字段7:密码的不活跃期。
- 字段8:用户的失效时间。
- 查看文件信息:使用命令 cat /etc/shadow 。结果如下。
1.3 group文件
- 功能:记录了系统中所有组的信息。
- 查看文件信息:使用命令 cat /etc/group 。结果如下。
2 用户与组管理实验
2.1 实验1
- 目标:建立一个名为class1的组,组id为1000;class2的组id为2000.
- 方法一:先创建组: groupadd class1 ;再修改gid: groupmod -g 1000 class1 。
- 方法二:创建组时指定gid: groupadd -g 2000 class2 。
- 查看结果:使用命令 cat /etc/group ,因为class1修改gid过程中1000已被占用,故提示报错,修改为1500。
2.2 实验2
- 目标:建立tom用户,其用户uid为600,要求其基本组为class1,附加组为class2。
- 方法:使用命令 useradd -u 600 -g 1500 -G 2000 tom ,-g指定基本组,-G指定附加组。
- 查看:使用命令 id tom ,查看该id信息。
2.3 实验3
- 目标:建立一个程序用户uid为250,用户为testuser,没有家目录。
- 方法:使用命令 useradd -u 250 -M -s /sbin/nologin testuser ,-M不要自动建立用户的登入目录,-s指定用户登入后所使用的shell。
- 查看:分别使用命令 id testuser 和 cat /ect/passwd | gred “testuser” 查看结果,其中grep配合通道符命令是对cat内容的过滤。可以看到创建用户时没有指定组,自动创建并指定。
2.4 实验4
- 目标:为tom用户设定密码为123,并设定密码最长有效期为90天,将用户密码进行锁定使其无法登录系统。
- 方法:使用命令 passwd +用户名 为用户设置密码(需要在超级管理员状态下),在中间添加参数可以查看或修改账号信息,如-S为查看密码状态、-x 指定口令最长存活期、-l 停止账号使用、-d 删除密码。
2.5 实验5
- 目标:删除tom用户和testuser用户,删除class1和class2组。
- 方法:使用命令 groupdel +组名 删除对应组;使用命令 userdel +用户名 删除对应用户。
2.6 命令归纳
3 总结
- 掌握Linux系统用户与组的关系;
- 掌握用户的分类及各自uid范围;
- 掌握相关用户与组的命令;
- 了解命令相关参数的查询方法。