关于 linux 文件权限控制-SELinux

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 关于 linux 文件权限控制-SELinux

引言

在linux 系统中,最常见的一个就是文件权限了,什么777,755,等等,如果没有权限,就无法操作相关的文件,那么,linux系统中的权限控制是怎么样的呢?为什么有时候设置了777,还是出现没有权限的情况呢?

自主访问控制(DAC: Discretionary Access Control)

linux 777权限

在讲DAC之前,先讲一讲关于linux中文件的权限情况,通过ls -l命令可以查看到文件的详细情况,以及权限:

tioncico@tioncico-PC:~$ ls -l
总用量 1344
drwxr-xr-x  3 tioncico tioncico    4096 1月   6 10:06 CLionProjects
drwxr-xr-x  3 tioncico tioncico    4096 1月   3 23:22 databases-incognito
drwxr-xr-x  5 tioncico tioncico    4096 6月  11 20:55 Desktop
drwxr-xr-x  4 tioncico tioncico    4096 5月  25 01:58 Documents
drwxr-xr-x  4 tioncico tioncico    4096 5月  18 23:28 Downloads
drwxr-xr-x  3 tioncico tioncico    4096 2月   4 10:11 Music
drwx------  6 mysql    mysql       4096 6月  14 18:42 mysql
drwxr-xr-x  9 tioncico tioncico    4096 6月  11 19:55 PhpstormProjects
drwxr-xr-x  2 tioncico tioncico    4096 12月 23 17:32 Pictures
drwxr-xr-x  6 tioncico tioncico    4096 3月  19 00:25 redis-3.2.13
drwxr-xr-x 13 tioncico tioncico    4096 6月  15 11:21 swoole-src-4.3.5
-rw-r--r--  1 tioncico tioncico 1312699 6月  15 11:11 v4.3.5.tar.gz
drwxr-xr-x  2 tioncico tioncico    4096 12月 23 17:42 Videos
drwxr-xr-x  9 tioncico tioncico    4096 6月  15 17:20 work
drwxr-xr-x  2 tioncico tioncico    4096 12月 23 17:32 模板

在第一列中,d代表该文件是一个目录,其他9个字符,分别代表了,如果字符为-则代表没有权限:

1:所属用户是否拥有读权限,所属用户是否拥有写权限,所属用户是否拥有执行权限

2:所属用户组是否拥有读权限,所属用户组是否拥有写权限,所属用户组是否拥有执行权限

3:其他用户是否拥有读权限,其他用户是否拥有写权限,其他用户是否拥有执行权限

只要拥有权限,就代表着能够操作该文件

例如:

当前用户想进入mysql用户,由于tioncico用户没有权限,则进入失败:

tioncico@tioncico-PC:~$ w
 22:01:58 up 1 day,  3:19,  1 user,  load average: 0.53, 0.70, 0.77
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
tioncico tty1     :0               五18   27:19m 19:19  19.27s /usr/bin/startdde
tioncico@tioncico-PC:~$ cd mysql/
bash: cd: mysql/: 权限不够

但是,超级管理员,拥有者所有权限,可以直接进入:

image.png

理论上,超级管理员拥有者最高权限,不管该文件权限如何,超级管理员都是可以操作的

root@tioncico-PC:/home/tioncico# cd mysql/
root@tioncico-PC:/home/tioncico/mysql# cd ../
root@tioncico-PC:/home/tioncico# chmod -R 000 mysql/
root@tioncico-PC:/home/tioncico# cd mysql/
root@tioncico-PC:/home/tioncico/mysql# cd ../
root@tioncico-PC:/home/tioncico# chmod -R 700 mysql/

DAC

DAC  权限控制系统针对的是某个用户

系统将识别用户,根据该文件存储的权限情况(777),来决定该用户能不能操作这个文件,linux在大多数情况,都是使用的DAC权限控制

DAC权限控制的缺点有:

1:超级管理员拥有者最高权限,不管有没有权限,超级管理员都可以访问

2:该权限控制系统针对的是用户,无法将一组文件设置一个统一的权限开放给一组用户,DAC 只有文件拥有者,文件所属组,以及其他用户这3种区分

强制访问控制(MAC: Mandatory Access Control)

MAC是为了弥补DAC权限控制过于分散的问题而诞生的。在MAC的设计中,每一个对象都都有一些权限标识,每个用户同样也会有一些权限标识,而用户能否对该对象进行操作取决于双方的权限标识的关系,这个限制判断通常是由系统硬性限制的。比如在影视作品中我们经常能看到特工在查询机密文件时,屏幕提示需要“无法访问,需要一级安全许可”,这个例子中,文件上就有“一级安全许可”的权限标识,而用户并不具有。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
6月前
|
算法 安全 Linux
Linux粘滞位(Sticky Bit)与文件权限的深度解析
Linux粘滞位(Sticky Bit)与文件权限的深度解析
193 0
|
6月前
|
存储 Linux 数据安全/隐私保护
Linux文件权限及用户管理
Linux文件权限及用户管理
50 0
|
6月前
|
安全 Linux 数据安全/隐私保护
【Linux】深入理解Linux文件权限
【Linux】深入理解Linux文件权限
94 0
|
6天前
|
存储 安全 Linux
|
5月前
|
Linux
linux查看修改文件权限
linux查看修改文件权限
48 4
|
2月前
|
安全 Linux 数据安全/隐私保护
探索Linux操作系统的文件权限管理
【9月更文挑战第29天】在数字世界中,文件权限管理如同保护我们隐私的锁。本文将带你了解如何在Linux系统中设置和管理文件权限,确保你的数据安全。我们将一起学习如何通过命令行工具来控制文件访问,就像学习一门新语言一样有趣。准备好了吗?让我们一起开启这场技术之旅!
|
28天前
|
Linux
linux/mac 下查看、修改文件权限的命令
这篇文章介绍了在Linux和Mac操作系统下如何查看和修改文件及文件夹的权限。
47 0
|
3月前
|
Linux 开发工具
在Linux中,文件权限有哪些?有什么作用?
在Linux中,文件权限有哪些?有什么作用?
|
3月前
|
Linux 数据安全/隐私保护
在Linux中,什么是文件权限?什么是rwx权限模型?
在Linux中,什么是文件权限?什么是rwx权限模型?
|
3月前
|
Linux 数据安全/隐私保护
Linux文件权限
Linux文件权限