CentOS 7用户权限管理
- 一、CentOS 7系统权限作用说明
- 01.CentOS 7普通文件权限划分
- 02.CentOS 7目录文件权限划分
- 二、系统权限修改操作
- 01.数据文件权限单独修改方式
- 02.数据文件权限批量修改方式
- 三、系统用户管理分类
- 01.超级用户
- 02.普通用户
- 03.虚拟用户
- 四、CentOS 7用户管理操作命令
- 01.创建新的用户信息
- 02.用户信息设置密码
- 03.删除存在的用户信息
- 五、系统用户提权操作
- 01.实现普通用户到管理员用户的切换
- 02.实现普通用户权限提权操作
一、CentOS 7系统权限作用说明
01.CentOS 7普通文件权限划分
[kang@just ~]$ ll /etc/hosts
-rw-r--r--. 1 root root 158 Jun 7 2013 /etc/hosts
[kang@just ~]$ ll /bin/cat
-rwxr-xr-x. 1 root root 54080 Aug 20 2019 /bin/cat
以上文件属性中,显示了文件权限信息有:r
代表read读权限;w
表示write写权限;x
表示execute执行权限;-
表示未设置权限。
根据以上属性权限一般将权限划分为9个权限位:
编号 | 权限信息 | 组成说明 |
第一个三位 | rwx | 表示文件的属主信息具有读、写、执行权限 |
第二个三位 | r-x | 表示文件的属组信息具有读和执行权限,但不具备写权限 |
第三个三位 | r-x | 表示文件的其他用户信息具有读和执行权限,但不具备写权限 |
【不同权限说明】
编号 | 权限信息 | 组成说明 |
01 | r | 读权限,表示文件内容信息具有读取查看能力 |
02 | w | 写权限,表示文件内容信息具有编写修改能力 |
03 | x | 执行权限,表示文件内容代码信息具有执行或运行能力 |
02.CentOS 7目录文件权限划分
[kang@just ~]$ ll /etc/ -d
drwxr-xr-x. 81 root root 8192 Sep 8 19:34 /etc/
[kang@just ~]$ ll /var/ -d
drwxr-xr-x. 19 root root 267 Sep 3 12:00 /var/
以上目录属性中,显示了文件权限信息有:r
表示read读权限;w
表示write写权限;x
表示execute执行权限;-
表示未设置权限。
【不同权限说明】
编号 | 权限信息 | 组成说明 |
01 | r | 读权限,表示目录中数据信息具有读取查看能力 |
02 | w | 写权限,表示目录中数据信息信息具有编写修改能力 |
03 | x | 执行权限,表示目录可以进行切换能力 |
二、系统权限修改操作
01.数据文件权限单独修改方式
// 创建名为kang的txt文件
[root@just ~]# touch kang.txt
// 修改文件权限为000
[root@just ~]# chmod 000 kang.txt
// 查看文件权限信息
[root@just ~]# ll kang.txt
----------. 1 root root 0 Sep 8 20:22 kang.txt
// 单独设置属组权限信息
[root@just ~]# chmod g+rw kang.txt
[root@just ~]# ll kang.txt
----rw----. 1 root root 0 Sep 8 20:22 kang.txt
// 单独设置属主权限信息
[root@just ~]# chmod u+r kang.txt
[root@just ~]# ll kang.txt
-r--rw----. 1 root root 0 Sep 8 20:22 kang.txt
// 单独设置其他用户权限信息
[root@just ~]# chmod o+rx kang.txt
[root@just ~]# ll kang.txt
-r--rw-r-x. 1 root root 0 Sep 8 20:22 kang.txt
02.数据文件权限批量修改方式
- 采用字符方式批量设置权限
// 创建名为kang的txt文件
[root@just ~]# touch kang.txt
// 修改文件权限为000
[root@just ~]# chmod 000 kang.txt
// 查看文件权限信息
[root@just ~]# ll kang.txt
----------. 1 root root 0 Sep 8 20:22 kang.txt
// 所有用户信息添加执行权限
[root@just ~]# chmod a+x kang.txt
// 所有用户信息去掉执行权限
[root@just ~]# chmod a-x kang.txt
// 所有用户信息设置权限为具有读和执行权限
[root@just ~]# chmod a=rx kang.txt
- 采用数字方式批量设置权限
// 创建名为kang的txt文件
[root@just ~]# touch kang.txt
// 修改文件权限为000
[root@just ~]# chmod 000 kang.txt
// 查看文件权限信息
[root@just ~]# ll kang.txt
----------. 1 root root 0 Sep 8 20:22 kang.txt
// 所有用户信息添加读权限
[root@just ~]# chmod 444 kang.txt
// 所有用户信息添加读、写权限
[root@just ~]# chmod 666 kang.txt
// 所有用户信息添加读、写和执行权限
[root@just ~]# chmod 777 kang.txt
三、系统用户管理分类
01.超级用户
默认是root用户,其中UID和GID均是0。root用户在每台unix/linux操作系统中都是唯一且真实存在的。
通过root可以登陆系统,可以在操作系统中任何命令和文件,拥有最高的管理权限。
在生产环境中,一般会禁止root账号通过SSH远程连接服务器,也可以更改默认的SSH端口,提升系统安全性。
企业工作中,如没有特殊需求,应该尽量在普通用户下操作任务,而不是使用root账户。
02.普通用户
这类用户一般是具有系统管理员root的权限的运维人员或系统管理人员添加的。这类用户可登录系统,但仅具有操作普通用户对应的家目录中的文件及目录的权限。
03.虚拟用户
与真实普通用户区分开来,此类用户最大的特点是安装系统后默认就会存在,且默认情况大多不能登录系统。
但此类用户是系统正常运行过程中必不可少的,其存在的目的是方便系统管理,满足相应的系统进程对文件属主的要求。
UID取值 | 用户类型 | 描述说明 |
0 | 超级用户 | 当用户的UID为0时,表示这个账号为超级管理员账号。 如果要新增一个系统管理员账号,只需将该账号UID设置为0。但不推荐此种做法,最好用sudo替代。 |
1-999 | 虚拟用户 | 该范围时保留给系统使用的UID,为了防止人为建立账号的UID和系统UID冲突,并没有其他特殊含义。 除了0之外,所有UID在使用时没有任何区别。 |
1000-65535 | 普通用户 | 普通账户UID范围 |
四、CentOS 7用户管理操作命令
01.创建新的用户信息
[root@just ~]# useradd kang
[root@just ~]# id kang
02.用户信息设置密码
[root@just ~]# passwd kang
说明:
普通用户在给自身设置密码时,需要考虑密码负载度,必须大于6位,且要有字符和数字组合。
03.删除存在的用户信息
// 仅删除账户
[root@just ~]# userdel kang
// 删除账户及其所有文件信息
[root@just ~]# userdel -r kang
五、系统用户提权操作
01.实现普通用户到管理员用户的切换
【命令说明】
su命令可以在用户之间进行切换,超级用户root向普通用户切换不需要密码验证,其他普通用户之间或者从普通用户切换到root用户,都需要通过密码验证。
【语法格式】
su [option] [user]
su [选项] [用户名]
说明:
1)若命令后面的用户名省略,则默认代表切换为root用户;
2)从root用户切换到普通用户时,不需要任何密码;
3)从普通用户切换到root用户时,需要输入密码。
【选项说明】
编号 | su参数选项 | 注释说明 |
01 |
| 使一个shell成为登录的shell。如果执行 |
02 |
| 切换到一个shell下,执行一个命令,然后退出所切换的用户环境。 |
03 |
| 切换用户时,不需要重置用户环境变量, |
03 |
| 如果/etc/shells允许,则运行指定的shell |
【命令实践】
// root用户切换为普通用户kang
[root@just ~]# su - kang
// 普通用户切换为root用户
[kang@just ~]# su -
// 查看当前登录用户
[root@just ~]# whoami
02.实现普通用户权限提权操作
【命令说明】
visudo命令是专门用来编辑/etc/sudoers这个文件的,同时visudo还提供了语法检查等功能。
/etc/sudoers是sudo命令的配置文件。
【语法格式】
visudo [option]
visudo [选项]
【选项说明】
编号 | su参数选项 | 注释说明 |
01 |
| 手动执行语法检查 |
【操作实践】
[root@just ~]# visudo