返回顶部
首页 > 资讯 > 精选 >CentOS系统特殊权限有哪些
  • 208
分享到

CentOS系统特殊权限有哪些

2023-06-10 04:06:54 208人浏览 泡泡鱼
摘要

这篇文章主要讲解了“Centos系统特殊权限有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CentOS系统特殊权限有哪些”吧!1.什么是特殊权限?我们知道权限有r,w,x。其实除了这三

这篇文章主要讲解了“Centos系统特殊权限有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CentOS系统特殊权限有哪些”吧!

1.什么是特殊权限?

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

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

                                     -rwsr-xr-x 1 root root 22960 Jul 17  2006 /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 22960 Jul 17  2006 /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 2713 Jun 13 16:34 /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 4096 Jun 14 22:14 /project/cma

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

[java02@localhost cma]$ ls -l

total 8

-rw-rw-r-- 1 java01 java01 0 Jun 14 22:24 01.java

-rw-rw-r-- 1 java02 java02 0 Jun 14 22:25 02.java

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

第三:由于项目组成员java02,并不属于java01的私有组,显然java02只对01.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 4096 Jun 14 22:25 .

[root@localhost cma]# 

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

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

[java02@localhost cma]$ ls -l

total 16

-rw-rwSr-- 1 java01 java01  0 Jun 14 22:24 01.java

-rw-rw-r-- 1 java01 develop 0 Jun 14 22:33 01.txt

-rw-rwSr-- 1 java02 java02  0 Jun 14 22:25 02.java

-rw-rw-r-- 1 java02 develop 0 Jun 14 22:33 02.txt

[java02@localhost cma]$ 

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

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

4.关于sticky

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

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

[java01@localhost cma]$ id

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

[java01@localhost cma]$ rm 02.txt

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

5.串联

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

chmod xyzw file,其实同理。

000 nothing

001 only striky

010 only sgid

100 only suid

......

感谢各位的阅读,以上就是“CentOS系统特殊权限有哪些”的内容了,经过本文的学习后,相信大家对CentOS系统特殊权限有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: CentOS系统特殊权限有哪些

本文链接: https://lsjlt.com/news/259328.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • CentOS系统特殊权限有哪些
    这篇文章主要讲解了“CentOS系统特殊权限有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CentOS系统特殊权限有哪些”吧!1.什么是特殊权限?我们知道权限有r,w,x。其实除了这三...
    99+
    2023-06-10
  • linux的特殊权限有哪些
    linux中特殊权限有:1.SUID权限,让可执行文件以当前用户文件的所有者来执行;2.SGID权限,改变执行者的所属组;3.SBID权限,设置目录权限为777;linux中特殊权限有以下三种SUID权限linux中SUID权限的作用是让可...
    99+
    2024-04-02
  • Linux系统文件的默认权限和特殊权限
    默认权限 umask [root@CentOS7 data]# touch file1 ; ll file1 -rw-r--r--. 1 root root 0 Oct 9 13:55 file1 [root@Cen...
    99+
    2022-06-04
    linux 默认权限 linux 特殊权限
  • Linux系统文件权限有哪些
    本篇内容介绍了“Linux系统文件权限有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!常用权限linux系统内有档案有三种身份 u:拥有...
    99+
    2023-06-27
  • CentOS权限系统怎么恢复
    这篇文章主要介绍CentOS权限系统怎么恢复,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!首先你必须准备一台和故障机器一样的系统,比如可以在虚拟机中安装一套一样版本的linux在新系统中创建一个 waynerQiu....
    99+
    2023-06-10
  • windows系统中输入法特殊符号打法有哪些
    这期内容当中小编将会给大家带来有关windows系统中输入法特殊符号打法有哪些,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。按住ALT,在小键盘上敲以下的数字,然后松开就出来了     alt+34148...
    99+
    2023-06-14
  • HTML特殊字符有哪些
    小编给大家分享一下HTML特殊字符有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!HTML特殊符号编码有很多种 unicod...
    99+
    2024-04-02
  • python有哪些特殊方法
    python有哪些特殊方法?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。python有哪些常用库python常用的库:1.requesuts;2.scrapy;3.pillow...
    99+
    2023-06-14
  • VB.NET特殊字符有哪些
    这篇文章主要介绍VB.NET特殊字符有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!有时需要在代码中使用特殊字符,也就是标准字母数字表中没有的字符。Visual Basic 字符集中的标点符号和特殊字符各有其用途...
    99+
    2023-06-17
  • python中有哪些特殊方法
    python中的特殊方法有:1.init方法;2.next方法;3.len方法;4.str方法;5.abs方法;6.bool方法;7.complex方法;8.floa方法;9.hash方法;10.setitem方法;11.delitem方法...
    99+
    2024-04-02
  • javascript特殊运算符有哪些
    javascript中的特殊运算符有:1.逗号运算符;2.in运算符;3.instanceof运算符;4.typeof运算符;5.delete运算符;6.void运算符;javascript中的特殊运算符有以下几种逗号运算符javascri...
    99+
    2024-04-02
  • BAT中有哪些特殊符号
    这篇文章主要介绍了BAT中有哪些特殊符号,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。^ 转义符 用在特殊符号之前 比如: echo 非常^&批处理 如果不加^ 那么...
    99+
    2023-06-08
  • mysql权限有哪些
    小编给大家分享一下mysql权限有哪些,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!               ...
    99+
    2024-04-02
  • git权限有哪些
    这篇文章主要讲解了“git权限有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“git权限有哪些”吧!git权限有5种:1、Guest,可创建issue、发表评论;2、Reporter,可...
    99+
    2023-06-21
  • Linux系统查看文件权限的命令有哪些
    本文将为大家详细介绍“Linux系统查看文件权限的命令有哪些”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“Linux系统查看文件权限的命令有哪些”能够给你意想不到的收获,请大家跟着小编的思路慢慢深入,具体内容...
    99+
    2023-06-28
  • win7系统有哪些特点
    这篇“win7系统有哪些特点”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“win7系统有哪些特点”文章吧。(1)更安全* 源...
    99+
    2023-07-01
  • html特殊字符编码有哪些
    本篇内容主要讲解“html特殊字符编码有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“html特殊字符编码有哪些”吧! html特殊字符对应代码查找表 ...
    99+
    2024-04-02
  • jQuery特殊属性操作有哪些
    这篇文章主要介绍“jQuery特殊属性操作有哪些”,在日常操作中,相信很多人在jQuery特殊属性操作有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”jQuery特殊属性...
    99+
    2024-04-02
  • html5中的特殊标签有哪些
    本文小编为大家详细介绍“html5中的特殊标签有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“html5中的特殊标签有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 ...
    99+
    2024-04-02
  • php特殊数据类型有哪些
    php中特殊的数据类型有空值和资源两种空值php中空值是一种特殊类型的变量,只有一个NULL值,空值既不表示零,也不表示空格,空值区分大小写。资源php中资源是一种不是确切的特殊数据类型,常用于存储函数或对外部数据源进行交互,当php将资源...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作