用户权限,特殊权限,ACL的介绍

2017-05-28  本文已影响0人  lijincheng
image.png
1用户权限
何为用户权限呢?**
用户权限是指用户在执行目录或者文件时所拥有的权限。
权限分为读,写,执行,其对于的英文字母为 r,w,x。
相同的权限对文件和目录有不一样的意思
对于文件来说:
r:可使用文件查看工具获得其内容 (如 cat ,less)
w:可以修改其内容 (如nano,vim)
x:可以把此文件提交给内核启动一个进程(process)
对于目录来说:
r:可以使用ls来查看此目录中的文件列表
w:可在其目录下创建文件,并且可以删除不是其创建的文件
x:可以ls -l来查看其目录中文件列表,可以cd进入此目录
创建权限和修改权限
chmod [OPTION]... MODE[,MODE]... FILE...
chmod [OPTION]... OCTAL-MODE FILE...
chmod [OPTION]... --reference=RFILE FILE...
[OPTION]
三类用户:
u:属主
g:属组
o:其它
a: 所有
MODE表示法:
-R 表示递归
赋权表示法:直接操作一类用户的所有权限位rwx;
u=
g=
o=
a=
授权表示法:直接操作一类用户的一个权限位r,w,x;
u+, u-
g+, g-
o+, o-
a+, a-
例如 我要让其他用户可以读/etc/passwd的文件。方法:先把/etc/passwd文件复制到/app目录下,这个目录我已经事先建立好。 image.png
其他修改方法也一样,在这里就不一一测试了。
2 特殊权限
linux系统的特殊权限有三个:SUID、SGID、Sticky
这三种特殊权限有何作用呢?
首先我们从权限的角度分析,一个文件或目录能否操作,是取决于用户的属主和属组的权限。而对于other用户来说,其操作一个文件或目录,是以进程的属主或属组的权限来访问的。因此,我们要用一种特殊的方法来操作一下特定的文件或目录就需要用到特殊权限。

理解特殊权限的含义,先介绍下linux系统安全上下文:

SUID
权限设定:
chmod u+s file
chmod u-s file
默认情况下:用户发起的进程,进程的属主是其发起者;因此,其以发起者的身份在运行;

例如:我cp /etc/cat文件 到/app/目录下,并命名为cat,对cat程序 增加s权限(对文件附加s权限,前提是该文件为二进制可执行文件)


image.png

切换到tom用户下执行该文件,要先把cat文件的属主改成tom。

image.png
在tom用户下执行cat命令,这样做会非常危险,tom用户可以拥有root的所有权限了,所有一般情况下不这样使用。
image.png
SGID

对group1组增加s权限,需要先把tom用户加入到group
组里面

image.png
切换到tom用户下,执行创建文件a.txt文件,其属主已经改成tom了。
image.png
sticky
权限设定:
chmod t+s dir
chmod t-s dir

sticky在生产环境中用得比较多,避免了同组的其他用户删除自己创建的文件。注意:sticky对目录有效,对文件无效。
总结
suid
作用二进制可执行程序上,切换次程序所有者的身份
sgid
作用于二进制可执行程序上,继承了此程序所属组的权限
作用于目录上,在该目录下新创建文件所属组继承目录的所属组
sticky
作用于目录,该目录的文件,只有被所有者或者root删除
3 ACL
ACL 英文access constrol list 俗称访问控制列表
跟很多网络设备厂商里面的acl一样,其功能也一样。

image.png image.png

切换到tom用户 打开b.txt文件,提示无权限。

image.png
注意:设置acl权限于mask有关系,mask
相对于一条边界线,任何用户不能超越,只能比它低,这个用处在于:统一把一下高的权限通过设置mask来降低权限。
设置方法:
setfacl -m mask::rx file
mask 只影响除所有者和other 的之外的人和组的最大权限
Mask 需要与用户的权限进行逻辑与运算后,才能变成有限的
权限
--set 选项会把原有的ACL 项都删除,用新的替代,需要注
意的是一定要包含UGO 的设置,不能象-m 一样只是添加
ACL 就可 以
示例:
setfacl --set u::rw,u:wang:rw,g::r,o::- file1
acl对原来的属主属组其他没有权限删除。
上一篇 下一篇

猜你喜欢

热点阅读