位置: 编程技术 - 正文

CentOS系统特殊权限SUID SGID STICKY讲解(centos7权限)

编辑:rootadmin

推荐整理分享CentOS系统特殊权限SUID SGID STICKY讲解(centos7权限),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:centos用户权限设置,centos权限管理,centos7权限,centos777权限,centos权限管理,centos权限,centos权限管理,centos权限管理,内容如对您有帮助,希望把文章链接给更多的朋友!

1.什么是特殊权限?

我们知道权限有r,w,x。其实除了这三个,还有特殊权限。比如:

[root@localhost ~]# ls -l /usr/bin/passwd

-rwsr-xr-x 1 root root Jul /usr/bin/passwd

可以发现权限位,有个s。特殊权限有如下3种:

SUID

SGID

STICKY

2.关于suid

我们知道linux有一个进程安全模型的概念,比如Tom执行passwd来进行修改密码:

第一,注意到passwd的权限为:

[hadoop@localhost ~]$ ls -l `which passwd`

-rwsr-xr-x 1 root root Jul /usr/bin/passwd

第二,注意到Tom不是root用户,也不属于root组。

我们先不考虑什么特殊权限s。很显然,此时Tom只能以other(r-x)来运行passwd。Tom可以发起一个进程,这个进程是passwd,想修改自己的密码。

第三,用户Tom执行完passwd修改密码,其实就是保存至/etc/shadow中,下面我们看看/etc/shadow文件的权限情况。

[hadoop@localhost ~]$ ls -l /etc/shadow

-r-------- 1 root root Jun : /etc/shadow

[hadoop@localhost ~]$

那个属于Tom的修改密码的进程应该要去修改/etc/shadow文件,但是根据上面的/etc/shadow的权限,除了root用户外,谁都不可以修改的!也就是说,根据进程安全模型,普通用户根本无法修改密码!但事实上,是可以修改的。原因就在于那个特殊权限s。

也就是说,suid表示运行某程序时,相应进程的属主是程序文件自身的属主,而不是启动者。也就是说普通用户去执行passwd修改密码,其实是发起了一个进程,这个进程的属主是root用户,那么很显然就可以修改shadow这个影子文件了。

3.关于sgid

根据suid的理解,可知sgid表示运行某程序时,相应进程的属组是程序文件自身的属组,而不是启动者的基本组。可以举例分析:

第一:root用户创建了一个项目目录

[root@localhost /]#

[root@localhost /]# ls -ld /project/cma

drwxrwxr-x 2 root develop Jun : /project/cma

第二:项目组成员java,java,...均属于develop组(他们的附加组),也就是说他们对/project/cma具有rwx权限。

[java@localhost cma]$ ls -l

total 8

-rw-rw-r-- 1 java java 0 Jun : .java

-rw-rw-r-- 1 java java 0 Jun : .java

CentOS系统特殊权限SUID SGID STICKY讲解(centos7权限)

上面看到他们可以在/project/cma中创建文件,根据以前的理论:【谁创建的文件,文件的属主就是谁,属组就是他的基本组】,上面的没有问题。但是,我们希望这些项目组成员之间可以相互编辑其他人的文件,该如何做呢?

第三:由于项目组成员java,并不属于java的私有组,显然java只对.java具有r--权限,不可以编辑。此时我们可以使用sgid,来改变默认的这种行为~

[root@localhost cma]# pwd

/project/cma

[root@localhost cma]# chmod -R g+s /project/cma

[root@localhost cma]# ls -ld

drwxrwsr-x 2 root develop Jun : .

[root@localhost cma]#

注意了,出现了特殊权限位s,但是有时候可能会显示S。【如果是s说明这个权限位上以前是具有x权限的】

第四:利用sgid后,以后我们的项目组成员便可以在此目录下编辑其他成员的文件了。

[java@localhost cma]$ ls -l

total

-rw-rwSr-- 1 java java 0 Jun : .java

-rw-rw-r-- 1 java develop 0 Jun : .txt

-rw-rwSr-- 1 java java 0 Jun : .java

-rw-rw-r-- 1 java develop 0 Jun : .txt

[java@localhost cma]$

也就是说利用sgid可以帮我们达到这样的目的:

在目录下创建的文件的属组不在是用户的基本组,而是目录的属组。

4.关于sticky

此时此刻,我们的项目组成员已经可以相互编辑/project/cma下面的文件了,但是有个要求:我们希望用户只能删除自己的文件,而不可以删除别人的文件。这就要使用sticky了。

[root@localhost cma]# chmod -R o+t /project/cma

[java@localhost cma]$ id

uid=(java) gid=(java) groups=(java),(develop) context=root:system_r:unconfined_t:SystemLow-SystemHigh

[java@localhost cma]$ rm .txt

rm: cannot remove `.txt': Operation not permitted

5.串联

还记得umask吗,umask其实就是一个XYZW,四位数,其中X表示的就是suid/sgid/striky。

chmod xyzw file,其实同理。

nothing

only striky

only sgid

only suid

......

CentOS进程资源占用高原因分析命令详解 1、查看进程的线程:ps-eLf|egrep'gateserver|UID'2、跟踪线程调用:strace-p、统计线程中函数的调用小号CPU时间:strace-p-cstrace-p-oout.file#输出到out.fi

CentOS中由一般用户切换为root用户的方法 1.打开终端,提示符为$,表明该用户为普通用户,此时,直接输su,回车,输入root密码,回车,就可以切换到root用户下,此时的提示符变为#。注意,输

CentOS下如何创建且挂载光盘镜像? 在Centos下可以很方便的将多个文件,或多个文件夹下的内容打包进光盘镜像中,我们可以用:mkisofs-r-v-oxxx.iso/root/home命令将/root以及/home目录下的文件打包到x

标签: centos7权限

本文链接地址:https://www.jiuchutong.com/biancheng/357083.html 转载请保留说明!

上一篇:CentOS如何查看与用户相关文件命令?(centos查看inode)

下一篇:CentOS进程资源占用高原因分析命令详解(centos内存占用进程)

  • 增值税税额怎么算出来
  • 注册税务师考试科目
  • 什么是库存现金的盘亏
  • 单位卖二手车需要交什么税
  • 企业销售折扣折让会计分录
  • 销项税额和进项税额月底怎么结转
  • 税务信用级别为m级
  • 现金流量净额正负
  • 税申报后未交款是否可撤销?
  • 居民企业应纳税所得额税率
  • 现金支出的一般程序
  • 原材料的归集和整理
  • 公司出售房产缴纳什么税
  • 公司购买销售材料怎么写会计分录?
  • 个体工商户交纳社保办法
  • 委外技术服务费应归集哪个研发项目
  • 税务部门罚没收入会计分录
  • 价内税和价外税区别
  • 百旺金赋服务费280元发票在哪里开
  • 公司房租押金收不回来账务处理
  • 12月计提税金
  • 事业单位本年度工作小结
  • 倒发票怎么倒出钱来
  • 科研费收入如何入账?
  • win11压缩文件
  • 收到退回增值税和附加税怎么处理
  • 鸿蒙系统如何添加信任软件
  • 农业生产用水水资源税
  • 咨询服务费需要交印花税吗
  • linux怎么操作
  • linux监控系统命令
  • 事业单位投资收回账务处理
  • 该内存不能为read怎么解决?win+r弹不出来也不好使
  • php数组函数实现机选双色球
  • 一般纳税人怎么交税
  • 同一控制下的控股合并中,合并方个别财务报表
  • 研发费用加计扣除75%还是100%
  • 前端向后端传值的函数
  • 将款项汇往外地采购专用账户会计分录
  • 内部退养如何缴纳个人所得税
  • 福利费可以抵扣进项吗?
  • opencv讲解
  • Vite4+Pinia2+vue-router4+ElmentPlus搭建Vue3项目(组件、图标等按需引入)[保姆级]
  • 织梦专题页模板
  • sqlyog
  • 企业收到的国外发票可以入账吗
  • DB2 9(Viper)快速入门
  • 开收据是财务还是出纳
  • 金税四期主要核查什么?
  • 贷款收取服务费
  • 出差开会总结怎么写
  • 营利性养老院都交哪些税
  • 免征的附加税怎么做账
  • 本年利润每个月有余额吗
  • 小企业成本核算方法怎么填
  • mysql三种安装方式
  • 怎样恢复显示桌面图标
  • dell t110服务器
  • linux的安装流程和详细内容
  • incorrect email format, please re-enter.
  • gcasSWUpdater.exe是什么进程 有什么作用 gcasSWUpdater进程查询
  • win8删除所有内容并重新安装windows
  • win7系统如何关闭开机自动启动软件
  • 2021年win10累积更新
  • iptables用法
  • win8系统电脑
  • windows查看文件内容的命令
  • Unable to execute dex: Multiple dex files define Lorg/cocos2dx/lib/Cocos2dxAccelerometer
  • qt底层绘图引擎
  • jQuery Mobile 和 Kendo UI 的比较
  • for语句中的++i
  • linux bash命令详解
  • shell脚本引用文件
  • js实现超精简的快捷键
  • js基础教程
  • Android屏幕适配分屏
  • 重庆网上申报税务操作流程
  • 怎么知道自己的城乡属性
  • 消费税组成计税价格为什么要除以1-消费税率
  • 专利转让个人所得税率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设