Linux中的权限管理

一、权限的查看和读取

1.权限的查看:

ls -l 文件 (查看文件权限)

ls -ld 目录 (查看目录权限)

2.文件权限的种类:

文件的属性被叫做文件的元数据(meta data),一种元数据用1个byte来记录内容

(1)文件的类型:

#文件类型
#- 普通文件
#d 目录
#l 软连接
#b 快设备
#c 字符设备
#s socket套接字
#p 管道 |

(2)文件权限说明:

##用户权限
##rw-|r--|r--
# u g o

(3)文件安全上下文标记:

##系统的selinux开启,那么在此位会出现“.”

(4)文件副本标记或目录中子目录标记:

##对于文件:文件内容被系统记录的次数(硬链接个数)
##对于目录:目录中子目录的个数

(5-6)文件的归属:

##文件拥有者
##文件拥有组

(7)文件容量统计:

##对于文件:文件内容大小
##对于目录:目录中子文件的元数据大小

(8)文件时间戳:

##文件内容被修改的时间

(9)文件名称:

文件名称中一个英文字符占用一个字节,一个中文字符占用三个字节

3.用户对于文件的身份识别及设定:

(1)用户对文件的身份:

u: #user 文件的拥有者,ls -l 看到的第五列信息
g: #group 文件拥有组, ls -l 看到的第六列信息
o: #other 既不是拥有者也不是拥有组成员的其他用户的通称

(2)权限位:

      rwx        |        r--        |        r--
        u                  g                   o

(3)文件用户用户组管理:

chown username file ##更改文件拥有者
chgrp groupname file ##更改文件拥有组
chown username:groupname file ##同时更改文件的拥有者和拥有组
chown|chgrp
                -R user|group dir ##更改目录本身及目录中内容的拥有者或者拥有组

4.设定普通权限的方法:

(1)#chmod 字符方式设定权限

chmod <a|u|g|o><+|-|=><r|w|x> file ##用字副方式设定文件权限

(2)#chmod 数字方式设定权限#

权限波尔指表示方式
rwx = 111
--- = 000
三位二进制可以表示的最大范围为8进至数
rwx=111=7
rw-=110=6
r-x=101=5
r--=100=4=r
-wx=011=3
-w-=010=2=w
--x=001=1=x
---=000=0

(3)#chmod 复制权限#

chmod --reference=/tmp /mnt/lee #复制/tmp目录的权限到/mnt/lee上
chmod -R --reference=/tmp /mnt/westosdir #复制/tmp目录的权限到/mnt/westosdir及
#目录中的子文件上 -R 代表第归操作

5.系统默认权限设定:

系统本身存在的意义共享资源

从安全角度讲系统共享的资源越少,开放的权力越小系统安全性越高

既要保证系统安全,又要系统创造价值,于是把应该开放的权力默认开放把不安全的权力默认保留

(1)如何保留权力

6.系统中的特殊权限

(1)SUIDSet UID

当一个设置了 SUID 权限的程序被执行时,内核会将进程的有效用户 ID Effective User ID )临时设置为
文件所有者的用户 ID ,而实际用户 ID Real User ID )保持不变。这样,在程序执行期间,该进程就具
有了文件所有者的权限。

(2)SGIDSet GID

对于可执行文件,当设置了 SGID 权限的程序被执行时,进程的有效组 ID Effective Group ID )会临时
被设置为文件所属组的组 ID 。对于目录,设置了 SGID 权限后,在该目录下创建的新文件和子目录将自
动继承该目录的组,而不是创建者的默认组。

(3)Sticky Bit

Sticky Bit 权限通过在目录权限上设置一个特殊标志来实现上述功能。它限制了用户对目录中文件的删除
和重命名操作,只有满足特定条件的用户才能执行这些操作

二、ACL权限列表

ACL Access Control Lists ,访问控制列表)是一种灵活的权限管理机制,用于在 Linux 系统中对文件
和目录设置更细致的权限。传统的 Linux 文件权限模型基于所有者( owner )、所属组( group )和其他
用户( others )进行权限分配,分别对应读( r )、写( w )、执行( x )权限。然而,这种模型在一些复
杂的场景下显得不够灵活。例如,当需要给特定用户或组超出传统权限模型的权限时, ACL 就派上了用
场。通过 ACL ,可以针对单个用户或组设置独立的读、写、执行权限,从而实现更精细的访问控制。

1.ACL权限列表的读取

(1)ACL权限开启标识

(2)ACL列表权限读取

2.acl列表的控制

setfacl -m u:lee:rw leefile                    #设定
setfacl -m g:westos:rw leefile
setfacl -m u::rwx leefile
setfacl -m g::0 leefile
setfacl -x u:lee leefile                         ##删除列表中的lee
setfacl -b leefile                                 #关闭

3.acl 权限优先级

拥有者 > 特殊指定用户 > 权限多的组 >权限少的组 > 其他

4.mask阈值

mask 是能够赋予指定用户权限的最大阀值
当设定完毕文件的 acl 列表之后用 chmod 缩小了文件拥有组的权力 mask 会发生变化
恢复:
setfacl -m m: 权限 文件

5.acl 列表的默认权限

设置默认 ACL 。仅对目录有效,当在该目录下创建新文件或子目录时,新创建的对象将继承该目录的默
ACL 规则。
setfacl -m u:lee:rwx /mnt/westosdir               ##只对于/mnt/westosdir目录本身生效
setfacl -Rm u:lee:rwx /mnt/westosdir            ##对于/mnt/westosdir目录和目录中已经存在
                                                                          的内容生效
                                                                     #以上的命令之针对与存在的文件生效,新建文件是                                                                         不会被设定的
setfacl -m d:u:lee:rwx /mnt/westosdir/         ##针对与/mnt/westosdir目录中新建文件生效

三、attr权限

attr 权限,即文件属性权限,是 Linux 系统中一种对文件或目录赋予额外属性的机制。它能进一步增强
对文件访问和操作的控制,提供了比传统 r (读)、 w (写)、 x (执行)权限更细致的管控维度。这些
属性可以限制文件的某些操作,如防止文件被删除、修改,或者使其只能追加写入等
#attr权限限制所有用户
i #不能作任何的更改
a #能添加不能删除
lsattr dir|file                          ##查看attr权限
chattr +i|+a|-i|-a dir|file         ##设定attr权限
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值