文件权限之facl丶文件属性丶特殊权限
(1)facl:文件的访问控制列表
作用:对象目录或文件可以对不同的用户设定不同的权限
1)getfacl:查看文件或目录的访问控制列表权限
查看
getfacl file/dir
acl权限特征:如果一个文件或目录有acl权限,那么ll -d file/dir1有一个+号
drwxrwxr-x+ 2 root root 6 May 5 16:09 dir1
2)setfacl:设置和取消facl权限
选项
-m:添加acl权限
-x:取消acl权限
-b:删除所有的acl权限
添加acl权限
setfacl -m u:tom:rw file1 //设置用户tom对file1文件具有rw权限
setfacl -m u:jack:- file1 //设置用户jack对file1文件没有任何权限
setfacl -m o::rw file1 //设置其他用户对file1文件具有rw权限
删除acl权限
setfacl -x g:hr file1 //删除组hr的acl权限
setfacl -b file1 //删除所有的acl权限,一切回到初始
(2)facl高级特性:mask
mask作用:用于临时降低用户或用户组(除了属主和other用户)的权限,mask决定了他们的最高权限
建议:为了方便管理文件权限,其它人的权限建议置为空,如果把mask权限设置为-,那么这些用户会受到other权限的影响
setfacl -m u:tom:rwx /opt/file1
setfacl -m mask::r /opt/file1 //设置mask权限为r,那么这里的tom用户对这个文件只有读权限
setfacl -m mask::- /opt/file1 //设置mask权限为无,那么tom用户对这个文件会使用other用户权限
使用setfacl设置权限都会使用mask权限失效
(3)facl高级特性:defeult
希望tom用户能够对/opt/dir1以及以后在/opt/dir1下新建的文件或目录有读写执行权限
步骤一:setfacl -m u:tom:rwx /opt/dir1 //tom用户对/opt/dir1目录具有rwx权限
步骤二:setfacl -m default:u:tom:rwx /opt/dir1 //以后在/opt/dir1目录下新建的目录,tom用户会继承该权限,注意是以后,必须要执行两步
取消:setfacl -x default:u:tom /opt/dir1
(3)特殊权限:suid ,这个权限针对二进制文件
作用:命令或二进制文件如果有suid权限,普通用户可以使用root身份运行该进程
一定要记住进程对文件的操作,要验证进程的运行者对文件是否有相应的权限
添加:chmod u+s /usr/bin/cat
[tom@master dir1]$ cat /root/file1 //普通用户查看这个文件,主要是运行cat命令的属主对/root目录(other用户)没有r和x权限
cat: /root/file1: Permission denied
[root@master ~]# chmod u+s /usr/bin/cat //给cat命令赋予suid权限,以root身份运行该命令,验证文件那么就看root身份对应的权限
[root@master ~]# ll /usr/bin/cat
-rwsr-xr-x. 1 root root 54080 Nov 5 2016 /usr/bin/cat //属主权限位上有s标志
[tom@master dir1]$ cat /root/file1
(4)特殊权限:sgid,这个权限针对目录
作用:用户新建文件(或目录)继承上一级目录的用户组
添加:chmod g+s /opt/dir
[root@master ~]# mkdir /opt/dir //创建一个目录
[root@master ~]# chown .hr /opt/dir //修改目录的用户组为hr
[root@master ~]# ll -d /opt/dir
drwxr-xr-x 2 root hr 6 May 5 21:33 /opt/dir
[root@master ~]# chmod g+s /opt/dir //赋予这个目录权限sgid
[root@master ~]# ll -d /opt/dir //这个目录的用户组权限位置上有s标志
drwxrwsr-x+ 2 root hr 19 May 5 21:34 /opt/dir
[root@master ~]# setfacl -m u:tom:rwx /opt/dir //设置这个目录给tom用户rwx权限
[tom@master dir1]$ touch /opt/dir/file1 //tom用户在这个目录下创建这个文件
[tom@master dir1]$ ll /opt/dir/file1 //新创建的文件继承了上一级目录的用户组
-rw-rw-r-- 1 tom hr 0 May 5 21:34 /opt/dir/file1
(5)特殊权限:stick位,这个权限针对目录
作用:用户只能删除和修改用户自己创建的文件或目录,典型的是/tmp目录和/var/tmp目录
tmp目录特点:谁都有写权限,因此安全成问题,常常是木马第一手跳板地点;
设置:chmod o+t /opt/dir1
[root@master ~]# mkdir /opt/dir1
[root@master ~]# setfacl -m o::rwx /opt/dir1 //给这个目录设置acl权限,让普通用户可以在这个目录下创建和删除文件
[root@master ~]# chmod o+t /opt/dir1 //目录设置stick权限,
[root@master ~]# ll -d /opt/dir1 //目录other权限位置上有一个t标志位
drwxr-xrwt 2 root root 32 May 5 21:43 /opt/dir1
[tom@master dir1]$ touch /opt/dir1/file1 //tom用户在这个目录下创建一个文件
[jack@master ~]$ touch /opt/dir1/file2 //jack用户在这个目录下创建一个文件
[tom@master dir1]$ rm -rf /opt/dir1/file2 //用户不能删除不是用户自己创建的文件
rm: cannot remove ‘/opt/dir1/file2’: Operation not permitted
(6)特殊权限总结
设置特殊权限
字符方式
chmod u+s /usr/bin/cat
chmod g+s dir
chmod o+t dir
数字方式
chmod 4777 file
chmod 2777 dir
chmod 1777 dir
哪些用户可以删除权限
root
文件的属主
上一级目录的属主
sudo和suid区别
sudo :可以针对不同的用户不同的命令授权
suid :一个二进制如果有suid权限,那么所有用户都会以root身份运行这个命令
(7)文件属性:属性凌驾于权限之上,例如windows上面的属性
- 文件属性:针对所有用户,包括root
- 操作符
\+ //添加某个权限
\- //删除某个权限
= //取消其他所有权限赋予给指定的权限
- lsattr:查看文件属性
- chattr:设置文件属性
a:文件内容只能追加和查看,其它操作都拒绝
i:文件只能被查看,其它操作都会被拒绝
chattr +a file1
chattr +i file1
- 例子
[root@master ~]# chattr +a file1 //给a属性,修改文件只能追加内容方式,其它操作都不被允许
[root@master ~]# cat file1
[root@master ~]# echo 123 >file1
-bash: file1: Operation not permitted
[root@master ~]# echo 123>>file1 //追加方式被允许
[root@master ~]# chattr +i file1 //给i属性,任何形式的修改都不被允许
[root@master ~]# rm -rf file1
rm: cannot remove ‘file1’: Operation not permitted
[root@master ~]# echo 123>>file1
-bash: file1: Permission denied
(8)umask
作用:新建文件和目录的默认权限会受到这个umask值的影响,umask表示要减掉的权限;文件权限=666-umask值,目录权限=777-umask值
umask //查看当前用户的umask权限
umask 022 //设定umask值
注意:每一个进程都可以自己设定的umask值,有些是进程自己设定的,有些使用的是shell默认的umask值
例:这里创建用户创建用户家目录使用的umask值是077
[root@master ~]# grep -i umask /etc/login.defs
UMASK 077
例:vsftpd程序使用的umask
[root@master ~]# grep -i umask /etc/vsftpd/vsftpd.conf
# Default umask for local users is 077. You may wish to change this to 022,
local_umask=022
文件权限之facl丶文件属性丶特殊权限的更多相关文章
- 五大权限:UGO权限、SetUID SetGID Sticky、ACL权限、chattr(文件系统级别的权限)、SELINUX
五大权限:UGO权限.SetUID SetGID Sticky.ACL权限.chattr(文件系统级别的权限).SELINUX ======================文件属性以及ugo权限= ...
- 文件访问控制列表facl
[root@bogon code]# getfacl a.c //获取文件a.c的文件访问控制列表 # file: a.c # owner: root # group: root user::rw- ...
- Linux 文件属性及修改权限
输入 ll 或 ls -l 命令显示当前目录中文件的属性及文件所属的用户和组 root@user:/home/www# ll test total 880 drwxr-xr-x 2 root root ...
- 特殊权限和facl
目 录 第1章 FACL访问控制 1 1.1 FACL简介 1 1.2 getfacl命令查看acl权限 1 1.3 setfacl设置文件的cal权限 1 1.4 批量添加a ...
- 织梦在服务器上面安装的时候一直提示data文件没有权限,可我已经写了权限,还是提示
1.进入服务器,打开IIS,点击相应无权限的文件夹data,然后点击右上角的编辑权限. 2.勾选写入,然后确定即可. 3.织梦一直收到黑客的攻击,这里建议站长朋友设置下权限,来降低织梦系统的危险系数. ...
- Linux文件权限与属性详解 之 一般权限
目录 一般属性 1. iNode: 3152621 2. 文件类型 3.文件访问权限 4. 链接数目: 5. 文件所有者 6. 文件所属组 7. 文件大小 8. 修改时间 9. 文件名称 Linux文 ...
- 浮动的补充丶文本和字体属性丶background丶定位
一丶浮动的补充 浮动的特性: 1. 浮动的元素脱标 2.浮动的元素互相贴靠 3.浮动的元素有"字围"效果 4.浮动的元素有收缩的效果 前提是标准文档流,margin的垂直方向会出现 ...
- 木马suppoie 处理的几个思路 木马文件的权限所有者 属主数组 定时任务 目录权限
木马suppoie 处理的几个思路 木马文件的权限所有者 属主数组 定时任务 目录权限
- 文件的权利和sudoers中规定的权限哪个更大?
文件的权利和sudoers中规定的权限哪个更大? 当然是文件的权限更大!!! 这也是linux的 更安全的根本所在! 就是它的每一个文件都有严格的 rwxr--r-- 权限规定. 只有文件权限规定了的 ...
随机推荐
- cin.get()、流和缓冲区
大家好,这是我在CSDN的第一篇博客.我是一名学习GIS专业的大学生.我从小开始喜欢编程,可是到现在编程水平却长进不大,依然是菜鸟一个.究其原因,虽然这些年乱七八糟的东西学过不少,但是总的来说还是基础 ...
- 无线局域网中RADIUS协议原理与实现
转载自:http://blog.csdn.net/jinhill/article/details/5901042 摘要 RADIUS协议是一个被广泛应用于网络认证.授权和计费的协议.本文在介绍了RA ...
- [洛谷P2048] [NOI2010] 超级钢琴
洛谷题目链接:[NOI2010]超级钢琴 题目描述 小Z是一个小有名气的钢琴家,最近C博士送给了小Z一架超级钢琴,小Z希望能够用这架钢琴创作出世界上最美妙的音乐. 这架超级钢琴可以弹奏出n个音符,编号 ...
- windows下用时间戳创建文件名
英文环境下: echo Archive_%date:~-4,4%%date:~-10,2%%date:~-7,2%_%time:~0,2%%time:~3,2%%time:~6,2%.zip 中文: ...
- [BZOJ1087][SCOI2005]互不侵犯King解题报告|状压DP
在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子. 好像若干月前非常Naive地去写过DFS... ...
- java爬虫框架jsoup
1.java爬虫框架的api jsoup:https://www.open-open.com/jsoup/
- hdu 1690 Bus System(Dijkstra最短路)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1690 Bus System Time Limit: 2000/1000 MS (Java/Others ...
- Java基础 变量和数据类型及相关操作
Java基本语法: 1):Java语言严格区分大小写,好比main和Main是完全不同的概念. 2):一个Java源文件里可以定义多个Java类,但其中最多只能有一个类被定义成public类.若源文件 ...
- JS阶段测试
JS阶段测试 一.选择题 1.表单中的数据要提交到的处理文件由表单的( c )属性指定. A. method B. name C. action D. 以上都不对 2.在CSS样式 ...
- mysql 1366的错误 字符集错误解决方案
最近用mysqlalchmy的时候遇到了 sqlalchemy.exc.InternalError: (pymysql.err.InternalError) (1366, "Incorrec ...