今天介绍一下rhce的一大考点!!!创建用户,比较详细
目录
用户账户有三种,超级用户、系统用户和普通用户。
- 超级用户账户
用于管理系统,超级用户对系统有完全访问权限
- 系统的系统用户
账户提供支持服务进程使用,这些进程通常不需要以超级用户运行;系统会为他们分配一个非特权用户,允许他们确保其文件和其它资源不受彼此以及系统上普通用户的影响,用户无法使用系统用户账户以交互方式登录。
- 普通用户
大多数用户都有用于处理日常工作的普通用户账户,与其它用户一样,普通用户对系统具有有限的访问权限
用户ID区分:
- 超级用户的名称为root,其账户UID为0;系统自动创建的用户UID范围从1-200
- 安装第三方应用程序的UID范围从201-999
- 我们收到创建的用户UID默认从1000开始
但是哈!!!linux7版本之后,才是普通用户从1000开始,linux6的普通用户从500开始,账户的规则的控制文件,/etc/passwd存放加密口令 加密算法 用户的过期时间 /etc/shadow,只是定义账号属性。
一、用户账户管理
1.1用户账户的passwd文件
passwd文件用于定义系统的用户账户,该文件位于“/etc”下。记录了每个用户 的一些基本属性,它分为7个冒号分隔,每行记录通过冒号进行分割,这个文件只定义账号属性,在shadow这个文件里才存放加密口令,加密算法等等,用户的过期时间。
[root@lmy ~]# head -1 /etc/passwd
root:x:0:0:root:/root:/bin/bash
咱们摘出来第一行研究研究:
root:x:0:0:root:/root:/bin/bash
- x:历史遗留问题 存放加密口令
- 0:UID
- 0:用户的私有组的id,GID
- root 一些备注信息/root 家目录
- /bin/bash linux系统给该用户的一个正常的工作环境 登录
1.2 存放密码的shadow文件
[root@lmy ~]# head -1 /etc/shadow
root:$1$TA.0m8C1$FDb9Ooz7r8ZSfJ2c4PPU71::0:99999:7:::
摘出来一个看看
root:$1$TA.0m8C1$FDb9Ooz7r8ZSfJ2c4PPU71::0:99999:7:::
- $6 加密算法:hash算法 $1 sha156 $0 md5
- $TA.0m8C1 盐 不同的用户不同的一个密码,避免不同用户出现不同的密文
- $FDb9Ooz7r8ZSfJ2c4PPU71 口令
- 0 最小的密码更改天数 随时都可以更改,比如1 :1天内可以改
- 99999 最大的密码过期时间!!!!一定要修改,企业中一般是42-62天左右
- 7 提前一个周 给你一个提示,说密码即将过期
- 剩下的是宽限期,假如你过期了,会宽限几天才真正的过期
- 账户的过期时间:刚才是密码过期时间,这是账户的,不能登录
创建用户所经历的事情:
- 账户的属性问题:用户名 家目录(默认/home) uid(当前最大的uid+1) gid(一样) 工作环境 /bin/bash
- 设密码 sha512(默认)
- /var/spool/mail 按照用户名的邮件交互空间
1.3实战检验passwd和shadow
说了这么多了,我们直接在实战中介绍一些命令!!
- 我们创建一个用户lmy666
[root@lmy ~]# useradd lmy666
- 第一部分我们说了/etc/passwd,那咱就看看这个文件是怎么和lmy666对接上的
[root@lmy ~]# tail -3 /etc/passwd
lmy:x:1000:1000:redhat8.2:/home/lmy:/bin/bash
lmy666:x:1001:1001::/home/lmy666:/bin/bash
lmy777:x:1002:1002::/home/lmy777:/bin/bash
大家看,UID在之前的基础上加1,然后由于创建一个用户也会随手创建一个和用户重名的本地组,所以UID和GID一样。接下来,系统把这些用户安排在了/home家目录下,shell环境被安排在了/bin/bash下
咱再看看shadow文件,我们先是没有设置密码
[root@lmy ~]# tail -2 /etc/shadow
lmy666:!!:19334:0:99999:7:::
lmy777:!!:19334:0:99999:7:::
算了不多说了,直接给lmy666设置一个密码
在这里介绍一个设置密码的命令,echo “密码” | passwd --stdin 用户名,这个命令可以用脚本的方式批量给用户设置命令(我们不妨会联想到我们学生在登录一个学校要求让答题的网站,我们在登录的时候,账户是学号,密码都是一样的)
咱再看看,是不是和之前在shadow文件说明中匹配上了
二、创建用户
2.1一些参数
废话少说,直接上参数
u | uid:指定新用户的UID,默认用当前最带的UID加1 |
g | group:指定新用户所在的组,该组必须存在 |
G | GROUP:指定新用户的附加组 |
d | dir:指定新用户的自家目录 |
s | shell:指定新用户的使用的shell,默认为bash |
e | expire:指定用户的登录失效时间 |
r | 建立一个系统用户 |
2.1实战测试
- 创建vrlab123用户,指定uid为1600,非交互式shell,和管理员root 同组
[root@lmy ~]# tail -1 /etc/passwd
vrlab123:x:1600:0::/home/vrlab123:/bin/nologin
- 创建用户 vrlab456,设置家目录为/tmp/upwen456,用户过期时间为 2022/12/8.过期后两天停权
[root@lmy ~]# useradd -d /tmp/vrlab456/ -e "2022/12/8" -f 2 vrlab456
[root@lmy ~]# tail -1 /etc/passwd
vrlab456:x:1601:1601::/tmp/vrlab456/:/bin/bash