一.权限对象
1、owner:文件拥有者
2、group:用户组:
3、others:非文件拥有者,或者是用户组以外的人,其他人
二、权限类型 rwx
r-x r-x r-x 555
属主 属组 其他人
r w x r w x r w x
4 2 1 4 2 1 4 2 1
基于UGO,user group other 9位
664 ____ r w - r w - r- -
644 ____ r w - r - - r - -
755 ____ r w x r - x r - x
700 ____ r w x - - - - - -
600 ____ r w - - - - - - -
3、 r w x
对于文件而言
r:可以获取文件的数据
w:可以修改文件的数据
x:可以将此文件运行成为进程
对于目录而言
r:可以使用ls命令获取目录下的文件列表
w:可以修改此目录下的文件列表,可以创建或者删除文件
x:可以cd到此目录下,并且可以使用ls -l来获取文件的详细属性信息
三. 文件权限判断逻辑
1、删除文件:对文件所在目录有W权限
判断用户的身份,用户以什么身份去删除文件,owner—>group—>others
如果是目录的属主:目录权限位的左三位需要有w权限,若有则成功,无则失败
如果不是目录的属主,是属组,目录权限位中三位需要有w权限,若有则成功,无则失败
如果是其他人,目录权限位中的右三位需要有w权限,若有则成功,无则失败
2、新建,和删除一样的逻辑
四. 权限管理类命令
1.chmod命令
chmod [OPTION]… MODE[,MODE]… FILE…
chmod [OPTION]… OCTAL-MODE FILE…
chmod [OPTION]… --reference=RFILE FILE…
2.三类用户
u:属主
g:属组
o:其他
a:所有
3. 赋权表示法:rwx
u=
g=
o=
a=
4. 授权表示法
u+,u-
g+,g-
o+,o-
a+,a-
-R,递归修改
chmod 777 file
5. chown命令
修改问价的属主,一并修改属组
chown owner:group file
chown root file
chown :root file
-R:递归修改
实例:
[root@localhost ~]# groupadd kobi
[root@localhost tmp]# ls -l
total 0
-rw-r–r--. 1 root root 0 Mar 13 05:21 file
[root@localhost tmp]# chown root:kobi file
[root@localhost tmp]# ll
total 0
–wx–x--x. 1 root kobi 0 Mar 13 05:24 file
[root@localhost tmp]# chown root:jerry file
[root@localhost tmp]# ll
total 0
–wx–x--x. 1 root jerry 0 Mar 13 05:24 file
[root@localhost tmp]# chown jerry file
[root@localhost tmp]# ll
total 0
–wx–x--x. 1 jerry jerry 0 Mar 13 05:24 file(jerry是用户不是组)
chgrp group file
仅管理员可以修改文件的属主和属组
复制目录/var/log至/tmp/目录,修改/tmp/log及其内部的所有文件的属组为jerry,并让属组对目录本身拥有写权限 7. 进程的安全上下文:
进程对文件访问权限的应用模型
进程的属主,与文件的属主是否相同,如果相同,则应用属主权限
否则,检查进程的属主是否和文件的属组相同,如果相同,则应用属组的权限
否则,使用other权限。
将一个文件运行成为一个进程,取决于用户是否对这个文件有x权限,可执行权限
ACL: 访问孔子列表
1、针对用户设置权限
2、针对用户组设置权限
3、子文件或者子目录继承父目录的权限
setfacl:
# setfacl -m u:nebula:rw aclfile
-m:配置acl
-x:删除acl参数
-b:移除所有的ACL权限
-R:递归配置
d:目录专有
权限掩码:umask,chmod
chmod 222 umask=222 555
文件默认权限: 凡是减的结果中有执行权限,需要加1
666-umask 644
目录的默认权限:
777-umask 755
特殊权限:
SUID 权限是在属主的x位上 出现s S
1、仅仅对二进制程序有效
2、执行者对于程序需要具有可执行权限
3、仅仅在执行程序的过程中有效, 程序----->进程
4、执行者将具有该程序的拥有者的权限
SGID 权限是在属组的x位上,出现s S
1、对二进制程序有效
2、执行者对于程序需要具有可执行权限
3、执行者将具有该程序的属组的权限
4、SGID主要作用于目录:在此目录下创建新的文件时,新的文件的属组和目录的属组相同
SBIT 针对other,/tmp,在执行权限权限位出现t T
1、只针对目录有效
2、用户在此目录下创建的文件或者目录,只有用户自己和root有权限删除
注意:原本权限位有执行权限时,用小写字母,否则用大写字母