文件权限及特殊权限管理SUID、SGID和Sticky
文件权限应用模型;
- 进程的发起者: 进程属主
- 进程的属组: 进程属组
- 进程的属主,是否与文件的属主相同,如果相同,进程则以文件属主的权限来访问文件:否则进程的属主所属的组,其中之一是否与文件的属组相同:如果相同,进程则以文件属组的权限来访问文件:否则进程则以文件的其他用户的权限来访问文件。
- 文件普通权限;
- 在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念;
- 所有者: owner,简称“u”,文件或目录的所有者;
- 所属组: group,简称“g”,和文件属主有相同组ID的所有用户;
- 其它组: other,简称“o”,其它用户;
- 在linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录。
- 读: read,简称“r”,表示只允许读其内容,而禁止对其做所有的更改操作;
- 写: write,简称“w”,表示可以修改文件的内容;
- 执行: execute,简称“x”,表示可以运行其文件;
- 读写执行针对文件意义;
- r:可以使用内容查看类的命令来显示其相关内容;
- w: 可以使用编辑器修改其内容;
- x:可以将其发起一个进程;
- 读写执行针对目录意义;
- r:可以使用ls命令查看目录内容的文件信息
- w:可以创建、删除文件
- x:可以使用ls -l命令来查看目录内容的文件信息,并且可以使用cd命令切换此目录为工作目录:
- 使用8位数来表示;
- r:4
- w:2
- x:1
- chown:修改文件的属主,仅管理员可执行;
- chmod:修改文件权限;
- chgrp:修改文件的属组,仅管理员可执行;
- umask:
- 文件特殊权限;
- 执行文件SUID:让本来没有相应权限的用户运行这个程序时,可以访问没有权限访问的资源。何用户执行可执行可执行文件时,不再以用户自己的身份达成进程的属主,而是以文件的属主当作进程的属主;
- s: 表示添加suid之前有执行权限;
- S: 表示添加suid之前没有执行权限;
- 设定suid权限:chmod u+s filename;
- 设定suid权限:假设原来的权限为644,chmod 4644;
- 目录文件SGID:具有sgid的目录,用户在此目录创建的文件,新建文件的属组不再是用户的属组,而是目录的属组;
- s: 表示添加suid之前有执行权限;
- S: 表示添加suid之前没有执行权限;
- 设定suid权限:chmod g+s filename;
- 设定suid权限:假设原来的权限为644,chmod 2644;
- 粘滞位sticky:对于公共可写的目录,用户可创建文件,可以删除自己的文件,但无法删除别的用户的文件;
- t: 表示添加suid之前有执行权限;
- T: 表示添加suid之前没有执行权限;
- 设定sticky权限:chmod o+t filename;
- 设定sticky权限:假设原来的权限为644,chmod 1644
文件权限及特殊权限管理SUID、SGID和Sticky的更多相关文章
- 什么是 SUID, SGID 和 Sticky bit
在可执行文件中有三种权限,如下: 1. SUID 权限 (Set-user Identification) 2. SGID 权限(Set-group identification) 3. Sticky ...
- 文件的特殊权限(SUID,SGID,SBIT)
文件的一般权限:r w x 对应 421 文件的特殊权限:SUID SGID SBIT对应 421 文件的隐藏权限:chattr设置隐藏权限,lsattr查看文件的隐藏权限. 文件访问控制列表: ...
- linux文件权限位SUID,SGID,sticky的设置理解
SUID含义:文件的该位被设置为1,在该文件被执行时,该文件将以所有者的身份运行,也就是说无论谁来 执行这个文件,他都有文件所有者的特权,如果所有者是root的话,那么执行人就有超 ...
- Linux文件与目录的默认权限与隐藏权限 - umask, chattr, lsattr, SUID, SGID, SBIT, file
文件默认权限:umask [root@www ~]# umask 0022 <==与一般权限有关的是后面三个数字! [root@www ~]# umask -S u=rwx,g=rx,o=rx ...
- Linux 文件特殊权限 SUID SGID SBIT
文件除了常规的权限r, w, x 还有一些特殊的权限,s与t权限,具体的用处如下 1 SetUID 当s 这个标志出现在文件所有者的x权限上时, 例如/usr/bin/passwd, [root@or ...
- Linux 文件特殊权限详解[suid/sgid/t]
setuid(suid): 针对命令和二进制程序的,当普通用户执行某个(passwd)命令的时候,可以拥有这个命令对应用户的权限, 即让普通用户可以以root用户的角色执行程序或命令. setgid( ...
- chmod 4777? 文件特殊权限 SUID SGID StickyBit
故事引入 今天碰到了一条指令, test 怎么在777前还有一位,颠覆了我的认知啊,这时候必须翻鸟哥神书了,找到一个链接<7.4.3 文件特殊权限:SUID/SGID/Sticky Bit> ...
- CentOS 文件特殊权限SUID,SGID,SBIT
1.SUID ,是一种对二进制程序进行设置的特殊权限,可以让二进制程序的执行者临时拥有所有者的权限(仅对拥有执行权限的二进制程序有效). (1)SUID权限仅对二进制程序有效: (2)本权限仅在执行该 ...
- Linux中文件的SUID、SGID、Sticky权限说明
1.SUID 首先我们要了解,在Linux中启动一个程序或者启动一个进程是需要有用户的,一个文件的存在是要有用户和组的,一个进程启动后,它的属主取决于进程的发起者,比如 我用root用户启动了一个 c ...
随机推荐
- NFS网络文件系统安装配置
简介 NFS(Network File System)FS是由Sun开发并发展起来的一项用于在不同机器,不同操作系统之间通过网络共享数据.客户端用mount命令把远程的NFS文件系统挂载到本地即可,操 ...
- linux 两个文件合并
可以使用cat命令,有两种实现的方式,一种将两个文件合并的到一个新的文件,另一种将一个文件追加到另一个文件的末尾. 方法一:使用cat命令从文件中读入两个文件,然后将重定向到一个新的文件.这种方法可以 ...
- [收藏]谷歌htm/css规范
通用样式规范 协议 省略图片.样式.脚本以及其他媒体文件 URL 的协议部分(http:,https:),除非文件在两种协议下都不可用.这种方案称为 protocol-relative URL,好处是 ...
- java学习笔记(菜鸟原创)
搭建Java开发环境使用开发工具开发Myeclipse基础核心:JAVASEEEME面向对象 API JVM.JAVAEE是指java enterprise edition,java企业版,多用于企业 ...
- 将list转换为datatable的方法
public static DataTable CopyToDataTable<T>(this IEnumerable<T> array) { var ret = new Da ...
- ios控制器生命周期详解
#import "MyOneViewController.h" @interface MyOneViewController () @property (nonatomic, st ...
- UE4 Android打包 问题 记录笔记
问题一:error: expression result unused [-Werror,-Wunused-value] 虽然看了输出日志知道了这行沉余代码删掉就行,但是不是很懂这个地方报错意义. 问 ...
- BZOJ 3884 欧拉定理 无穷幂取模
详见PoPoQQQ的博客.. #include <iostream> #include <cstring> #include <cstdio> #include & ...
- [转]IoC模式
IoC模式 1.依赖 依赖就是有联系,有地方使用到它就是有依赖它,一个系统不可能完全避免依赖.如果你的一个类或者模块在项目中没有用到它,恭喜你,可以从项目中剔除它或者排除它了,因为没有一个地方会依赖它 ...
- html中meta的介绍
前言 meta是html语言head区的一个辅助性标签.也许你认为这些代码可有可无.其实如果你能够用好meta标签,会给你带来意想不到的效果,meta标签的作用有:搜索引擎优化(SEO),定义页面使用 ...