linux添加suid权限,Linux特殊权限SUID、SGID、SBIT
纯手工打造每一篇开源资讯与技术干货,数十万程序员和Linuxer已经关注。
Linux技术交流QQ群:915246(七月份最新!!)
对于linux中文件或目录的权限,应该都知道普通的rwx权限。我们先看看下面两个的权限是什么
非常奇怪,/tmp目录和 passwd文件的权限怎么怪怪的,怎么有s和t权限呢。看了下面的内容你就明白了。
1 SUID
当s出现在文件拥有者的x权限上时,如我们上面看到的/usr/bin/passwd这个文件的权限时-rwsr-xr-x,此时就被称为SET UID简称SUID.SUID对于一个文件有什么限制和功能呢?
SUID权限仅对二进制可执行文件有效
执行者对于该文件具有x的权限
本权限仅在执行该文件的过程中有效
执行者将具有该文件拥有者的权限
例如普通用户用passwd修改自己的命令,实际上最终更改的是/etc/passwd文件. 此文件时用户管理配置文件,只有root权限才能更改。
既然是root用户才拥有此权限,为什么我们可以通过passwd命令来修改密码呢,那这就要归功于passwd设置了suid权限位了。
此时普通用户通过执行passwd命令,临时拥有root权限,间接的修改/etc/passwd,以达到修改自己密码的权限。
2 SGID
当s出现在目录或文件所属群的x权限上时,此时就称为SET GID简称SGID,那SGID对文件和目录分部有哪些功能呢?
2.1 SGID对目录
使用者若对于此目录具有 r 与 x 的权限时,该使用者能够进入此目录
使用者在此目录下的群组将会变成该目录的群组
若使用者在此目录下具有 w 的权限(可以新建文件),则使用者所创建的新文件,该新文件的群组与此目录的群组相同
2.2 SGID对文件
SGID 对二进制可执行文件有效
程式执行者对于该文件来说,需具备 x 的权限
执行者在执行的过程中将会获得该文件群组的支援(用于改文件群组的权限)
3 SBIT
当s出现在目录其他用户的x权限上时,此时就称为Sticky Bit简称SBIT,那SBIT有哪些限制和作用呢?
仅对目录有效,对文件无效
当使用者在该目录下建立文件或目录时(有权限的情况下),仅自己与 root 才有权力删除新建的目录或文件
我们知道/tmp目录是这样的权限。
现在我们来验证下,先用root账号在tmp文件中创建一个文件test,然后用openstack(其他账号)进入该目录,删除test文件,看看发生什么情况
我们看到这样是不能删除文件的。因为/temp目录有SBIT权限。
4 怎么操作SUID、SBID、SBIT
操作这些标志与操作文件权限的命令是一样的, 都是 chmod. 有两种方法来操作,
(1)符号类型改变权限
chmod u+s testbin– 为testbin文件加上setuid标志.
chmod g+s testdir– 为testdir目录加上setgid标志
chmod o+t testdir– 为testdir目录加上sticky标志
(2) 数字类型改变档案权限
采用八进制方式. 对一般文件通过三组八进制数字来置标志, 如 666, 777, 644等. 如果设置这些特殊标志, 则在这组数字之外外加一组八进制数字. 如 4666, 2777等. 这一组八进制数字三位的意义如下,
abc
a – setuid位, 如果该位为1, 则表示设置setuid 4—
b – setgid位, 如果该位为1, 则表示设置setgid 2—
c – sticky位, 如果该位为1, 则表示设置sticky 1—
设置完这些标志后, 可以用 ls -l 来查看. 如果有这些标志, 则会在原来的执行标志位置上显示. 如
rwsrw-r– 表示有setuid标志
rwxrwsrw- 表示有setgid标志
rwxrw-rwt 表示有sticky标志
那么原来的执行标志x到哪里去了呢? 系统是这样规定的, 如果本来在该位上有x, 则这些特殊标志显示为小写字母 (s, s, t). 否则, 显示为大写字母 (S, S, T)
原文来自: http://www.codeceo.com/article/linux-suid-sgid-sbit.html
让您学习到的每一节课都有所收获
《Linux就该这么学》是由资深运维专家刘遄及全国多名红帽架构师(RHCA)基于最新RHEL7系统共同编写的高质量Linux技术自学教程,极其适合用于Linux技术入门教程或讲课辅助教材。
☀刘遄老师QQ:5604241 微信:gnu_chuan
☀学员助教QQ:5604674
☀ Linux技术交流A群(满):560843
☀Linux技术交流B群:340829
☀Linux技术交流C群:463590
☀Linux技术交流D群:915246
☀Linux技术交流E群:1663106
☀Linux技术交流F群:1653851
☀Linux技术交流G群:2632018(新群,火热加群中……)
☀官方站点:www.linuxprobe.com
☀ 电脑在线阅读效果更佳:
http://www.linuxprobe.com/chapter-00.html
按住图片3秒,即可自动关注。
点击左下角查看更多热门技术
linux添加suid权限,Linux特殊权限SUID、SGID、SBIT相关推荐
- vtigercrm中添加用户字段_linux笔记(一):linux添加用户并赋予root权限
最近开始学习linux,不定期把一些学习到的东西记录到这里,权当笔记! Linux添加用户并赋root权限 一.添加用户并设置密码: 1.添加一个普通用户 2.设置密码,当看到"passwd ...
- 满足lisheng需求 linux添加环境变量 linux批处理 2016.04.25小结
看了下博客上的日期,有11天没有更新博客了,我觉得这个还是个比较适合我的习惯,还是要坚持下去!对学习知识的记忆非常好!那就从今天开始,重新开始博客! 1.昨天重新改了credit_results的字段 ...
- linux添加windows网络打印机,Linux Mint如何添加windows分享的网络打印机?
1.安装samba sudo apt-get install samba 2.找到系统打印机选项 通过 Menu-->>控制中心-->>系统管理找到 Printers选项,双击 ...
- 嵌入式linux添加环境变量,Linux环境变量
前言: 1. 环境变量是操作系统环境设置的变量,适用于整个系统的用户进程: 2. 环境变量可以在命令中设置,但是用户注销的时候将会丢失这些设置值: 3. 若要重复适用,则最好在.profile中定义: ...
- linux添加qcc,Alpine Linux添加Let’s Encrypt CA证书或者自签CA证书
Alpine Linux添加Let's Encrypt CA证书或者自签CA证书 1. 用docker进行查看 进入容器, docker run -it alpine:latest /bin/sh 安 ...
- linux 添加宋体字符集,Linux下安装中文宋体
1,#cd /usr/share/fonts/default 2,mkdir -p ./truetype/simsun 3,取得simsun.ttc文件:如果网上下载不到则在windows (c:/w ...
- linux添加hello驱动,Linux驱动之建立一个hello模块
目标:在开发板上执行insmod hello.ko能在控制台打印出hello init:接着执行rmmod会在控制台打印出hello exit 建立一个hello模块的步骤如下: 1.建立一个hell ...
- Linux添加用户并赋管理员权限
添加用户 adduser tom # 添加用户 passwd tom # 修改密码userdel -r tom # 删除用户 给用户赋root权限 # 方法一: 修改/etc/sudoers文件,把下 ...
- arch linux添加用户,Arch Linux配置教程
以arch的基本系统为基础,我们可以对其进行各种配置操作,让其更符合个人喜好.下面介绍了一些常用的配置. 1.用户管理 新安装的arch只有一个root用户,使用root用户来进行日常系统管理是很危险 ...
- linux添加中文字库主线任务,Linux 添加中文字体库
背景:润乾报表 win上面的项目直接上传到linux 上,但预览&下载报表时乱码 如果含有斜线的单元格或统计图的报表在网页上发布时,统计图或斜线单元格里的汉字会变成小方框,此时往往是服务器端操 ...
最新文章
- 【企业管理】价值创造的两个轮子
- 深入理解RCU | RCU源码剖析
- postgres 支持的线程数_线程池被打满了怎么处理呢,你是否真的了解线程池?
- 专题:生物医疗大数据
- 2.24. Spring boot with Apache Kafka
- 计划任务 crontab、at
- 方舟编译器的安装和编译Helloword
- 打开模式时防止BODY滚动
- xp怎么删除计算机用户,WinXp系统如何删除用户账户?Xp系统删除用户账号的方法...
- app调用webapi时候出现读取不到session的问题
- 大学生爱情兵法-洪亚非-听课笔记
- postgresal去重_postgresql数据库去重方法
- MySQL 批量插入申请自增 ID
- 数学不好学计算机有影响吗,数学很差能学计算机吗
- c/c++判断数组中元素的个数
- mysql explain type_MySQL explain type详解
- 放弃数学专业跳槽高薪行业,如今他却后悔了
- 显卡超频很简单 RivaTuner使用教程
- 1.8正版生存服务器,我的世界1.8纯净版
- 精灵图与字体图标的使用