文章目录
一、用户及用户组存在的意义
1、用户
用户是操作者在系统中的身份标识
意义:用户的存在为了限制权限。
2、组
组是逻辑概念,是用户的集合
意义:组的存在为了归类用户,便于管理权限。
二、用户在系统中的存储方式
用户在系统中就是文件中的字符串,每个字符串映射了该用户所用到的系统资源。
三、用户涉及到的配置文件及内容
配置文件 | 内容 |
---|---|
/etc/passwd | 用户信息库 |
/etc/group | 组信息库 |
/home/用户同名目录 | 默认用户家目录 |
/etc/skel/所有文件 | 用户环境配置文件模板 |
/etc/shadow | 用户认证信息 |
/etc/gshadow | 组认证信息 |
四、用户信息的查看
id:查看指定用户id信息
id | 含义 |
---|---|
0 | 超级用户id |
1-999 | 系统用户id |
1000-65535 | 普通用户id |
id 命令的常用参数:
参数 | 含义 |
---|---|
-u | 查看用户的uid |
-g | 查看用户的gid |
-G | 查看用户所在的所有组的id |
-n | 显示名字而不显示id数字 |
实验时,用watch -n 1命令来监视用户信息库和组信息库(每隔1秒刷新一次),便于看到变化:
[root@localhost Desktop]# watch -n 1 "tail -n 5 /etc/passwd /etc/group;echo =====;ls -l /home/"
eg:
查看root的信息:
[root@localhost Desktop]# id root
uid=0(root) gid=0(root) groups=0(root)
[root@localhost Desktop]# id -u root
0
[root@localhost Desktop]# id -g root
0
[root@localhost Desktop]# id -G root
0
[root@localhost Desktop]# id -Gn root
root
五、用户身份的切换方式及环境变量
1、图形中的注销命令
gnome-session-quit --force:注销当前用户
2、su 和 su -
su:只切换用户身份, 不切换用户环境
su -:切换用户身份和用户环境
注意:
(1)每次su切换到其他用户操作之后必须退出(logout), 然后再切换到其他用户。
(2)高级用户(root)切换到低级用户不需要密码,低级用户切换到高级用户需要密码。
(3)平级用户切换需要密码。
六、用户及用户组的建立及删除
1、用户组
groupadd:建立用户组
groupdel:删除用户组
2、用户
userdel:删除用户
useradd:建立用户
注意:建立用户时, 读取/etc/login.defs 的文件内容来确定规则
useradd 的常用参数:
参数 | 含义 |
---|---|
-u | 指定用户的 uid |
-g | 指定用户的 gid |
-G | 指定用户的附加组 |
-c | 指定用户的说明 |
-d | 指定用户的家目录 , 默认为 /home/username |
-s | 指定用户的默认shell |
七、用户及用户组的信息管理
1、用户组
groupmod -g :修改用户组的组id
2、用户
usermod :修改用户的相关信息
usermod的常用参数:
参数 | 含义 |
---|---|
-l | 修改用户名称 |
-u | 修改用户的 uid |
-g | 修改用户的 gid |
-G | 修改用户附加组 |
-aG | 添加用户的附加组 |
-c | 修改用户的说明 |
-d | 更改家目录指向,不改变原来目录名 |
-md | 修改用户的家目录 , 默认为 /home/username |
-s | 修改用户的 shell 类型 |
[root@localhost Desktop]# useradd yang ##建立用户yang
[root@localhost Desktop]# usermod -u 666 yang ##更改用户的uid
[root@localhost Desktop]# usermod -u 1001 yang
[root@localhost Desktop]# usermod -l YANG yang ##更改用户名
[root@localhost Desktop]# usermod -l yang YANG
[root@localhost Desktop]# usermod -g 40 yang ##更改用户初始组
[root@localhost Desktop]# usermod -g 1001 yang
[root@localhost Desktop]# usermod -G 40 yang ##更改用的的附加族,没有的时候相当于添加,有的时候修改,相当于覆盖原有信息
[root@localhost Desktop]# usermod -aG 21 yang ##添加用户的附加族,在当前组的基础上,加入新的附加族
[root@localhost Desktop]# id yang
uid=1001(yang) gid=1001(yang) groups=1001(yang),21(slocate),40(dip)
[root@localhost Desktop]# usermod -c "YANG USER" yang ##添加用户说明(修改)
[root@localhost Desktop]# usermod -d /home/haha yang ##更改家目录指向
[root@localhost Desktop]# usermod -d /home/yang yang
[root@localhost Desktop]# usermod -md /home/haha yang ##改家目录名
[root@localhost Desktop]# usermod -md /home/yang yang
[root@localhost Desktop]# usermod -s /bin/sh yang ##更改用户shell
[root@localhost Desktop]# usermod -l YANG -u 888 -g 40 yang ##同时更改-l -u -g
八、用户认证文件
yang:!!:18183:0:99999:7: : :
[1] [2] [3] [4] [5] [6][7][8] [9]
/etc/shadow:用户认证信息文件
1.用户名称
2.用户密码
3.密码已经使用时间
4.密码最短有效期
5.密码最长有效期
6.密码到期前警告
7.密码非活跃天数
8.密码到期日
9.用户自定义列,目前没有启用
九、用户认证管理
1、passwd
passwd 用户A :更改用户A的密码,只有root可以这样操作.
passwd :普通用户只能改自己的密码,直接passwd
参数 | 含义 |
---|---|
-l | 给用户密码上锁 |
-u | 给用户密码解锁 |
-S | 查看用户密码状态 |
-d | 删除用户密码 |
-e | 密码最后一次被修改时间 |
-n | 修改密码最短有效期 |
-x | 修改最长有效期 |
-w | 修改警告期 |
-i | 修改非活跃期 |
注意:passwd无法修改用户到期日
2、chage
注意:chage可以修改用户到期时间,不能修改密码
参数 | 含义 |
---|---|
-d | 修改最后一次修改时间 |
-E | 修改用户到期时间 |
-I | 修改非活跃天数 |
-m | 修改最短有效期 |
-M | 修改最长有效期 |
-W | 修改警告期 |
十、用户权力的下放
sudo 能把某些超级权限针对性的下放 , 并且不需要普通用户知道 root 密码 , 所以 sudo 相对于权限无限制性的 su 来说 , 还是比较安全的。
sudo 执行命令的流程是:
从当前用户切换到 root,然后以 root 身份执行命令 , 执行完成后 , 直接退回到当前用户。(前提是要通过sudo 的配置文件 /etc/sudoers 来进行授权)
配置文件语法及测试方式:
/etc/sudoers
visudo
用户 主机名称=(新执行身份) [NOPASSWD:] 命令
westos server0.example.com=(root) /usr/sbin/useradd
westos server0.example.com=(root) NOPASSWD: /usr/sbin/userdel
来源:CSDN
作者:羊咩咩咕噜噜
链接:https://blog.csdn.net/weixin_42006882/article/details/103809453