Linux系统管理_附加控制权限-Redhat Enterprise 5

简介:

Linux系统管理_附加控制权限-Redhat Enterprise 5


附加权限控制

即特殊权限:

-叠加于权限位的u、g、o之上

-用来传递程序执行身份、限制目录写入权


类别

字符标示

数字标示

叠加位置

Set UID

s

4

User的x位

Set GID

s

2

Group的x位

Sticky Bit

t

1

Other的x位



一,SUID

仅对可执行程序有效

占用该命令所属主的x位

显示为s或者S,取决于属主是否具有x权限,有x权限为s,没有则为S,其他用户执行带有SUID标记的程序时,将具有属主的身份和相应权限。

注:一般程序为管理员root用户拥有

一个程序的SUID位为S是没有,因为为S的前提是该程序一定没有x权限,如果一个程序没有x权限,也就不能称为可执行程序了。

如果为S,则可以通过chmod u+x 程序来将其SUID位修改为s !!!


示例:

mkdir属于命令的所有者为root,那么为mkdir分配了SUID之后,普通用户使用mkdir创建的目录由于SUID的存在,所有者将属于mkdir的所有者root。

[root@localhost ~]# cp /bin/mkdir /bin/smkdir

[root@localhost ~]# ll /bin/smkdir

-rwxr-xr-x 1 root root 28016 02-19 23:41 /bin/smkdir

[root@localhost ~]# chmod u+s /bin/smkdir   //给smkdir命令添加SUID权限

[root@localhost ~]# ll /bin/smkdir

-rwsr-xr-x 1 root root28016 02-19 23:41 /bin/smkdir

[root@localhost ~]# su  - user1

[user1@localhost ~]$smkdir test1

[user1@localhost ~]$ll //可以看到新建的文件所有者为smkdir的所有者root

总计 4

drwxrwxr-x2 root user1 4096 02-19 23:41 test1

[user1@localhost ~]$


二,SGID

对程序和目录有效

显示为s或S,取决于属组是否有x权限,如果有x权限则为s,没有的话为S。


1,对程序来说,其他用户执行带有GUID标记的程序时,具有该命令所属组的身份和相应权限;

示例:使用上面的smkdir命令,移除其SUID权限,并设置为SGID权限,那么普通用户使用smkdir创建一个目录是,所属组将为smkdir的所属组root

[root@localhost ~]# ll /bin/smkdir

-rwsr-xr-x 1 rootroot 28016 02-19 23:50 /bin/smkdir

[root@localhost ~]# chmod u-s /bin/smkdir

[root@localhost ~]#ll /bin/smkdir

-rwxr-xr-x 1 rootroot 28016 02-19 23:50 /bin/smkdir

[root@localhost ~]# chmod g+s /bin/smkdir   //增加其smkdir的GUID权限

[root@localhost ~]#ll /bin/smkdir

-rwxr-sr-x 1 rootroot 28016 02-19 23:50 /bin/smkdir

[root@localhost ~]# su - user1

[user1@localhost ~]$smkdir test2

[user1@localhost ~]$ll     //可以看到test2的所属组为root

总计 8

drwxrwxr-x2 root  user1 4096 02-19 23:54 test1

drwxrwxr-x2 user1 root 4096 02-19 23:52 test2

[user1@localhost ~]$


2,对于目录来说,其他用户在此目录中创建的文件或文件夹所属组应该为该目录的所属组。

示例:

[root@localhost ~]# mkdir /abc

[root@localhost ~]# ll -d /abc/

drwxr-xr-x 2 rootroot 4096 02-19 23:56 /abc/

[root@localhost ~]# chmod 777 /abc/

[root@localhost ~]# chmod g+s /abc/

[root@localhost ~]# ll -d /abc/

drwxrwsrwx 2 rootroot 4096 02-19 23:56 /abc/

[root@localhost ~]# su - user1

[user1@localhost ~]$cd /abc/

[user1@localhostabc]$ touch file1.txt

[user1@localhostabc]$ mkdir test1

[user1@localhostabc]$ ll -d ./test1/ ./file1.txt   //可以看到file1.txt和test1的所属组都为该目录/abc的所属组。

-rw-rw-r--1 user1 root    0 02-19 23:58 ./file1.txt

drwxrwsr-x2 user1 root 4096 02-19 23:58 ./test1/

[user1@localhostabc]$


三:Sticky Bit

对目录来说

-占用other分组的x位,显示为t

-仅当用户对目录有w写入权限是才生效

-效果:在设置了粘滞位的文件夹下,所有用户有写入权限,也不能删除或改名他人的文档。

-应用:主要用户公共目录的用户文件或目录的安全

示例:

在根目录下新建一个目录public,并将其权限设置为777;分别创建user1、user2和user3三个用户,并分别使用user1用户创建文件file1.txt,user2用户创建文件file2.txt,使用user3登录系统,删除file1.txt和file2.txt,可以看到是可以删除的;为/public目录设置粘滞位,然后重复user1、user2和user3的操作,这时可以看到,user3是不能删除file1.txt和file2.txt两个文件的。

第一段:

[root@localhost /]# mkdir public

[root@localhost /]# chmod 777 /public/

[root@localhost /]# ll -d /public/

drwxrwxrwx 2 rootroot 4096 02-17 18:52 /public/

[root@localhost /]# useradd user1

[root@localhost /]# useradd user2

[root@localhost /]# useradd user3

[root@localhost /]# cd public/

[root@localhostpublic]# su user1//切换到user1用户并创建文件

[user1@localhostpublic]$ touch file1.txt

[user1@localhostpublic]$ exit

exit

[root@localhostpublic]# su user2

[user2@localhostpublic]$ touch file2.txt

[user2@localhostpublic]$ exit

exit

[root@localhostpublic]# su user3

[user3@localhostpublic]$ ll

总计 0

-rw-rw-r--1 user1 user1 0 02-17 18:53 file1.txt

-rw-rw-r--1 user2 user2 0 02-17 18:53 file2.txt

[user3@localhostpublic]$ rm -rf file*  //user3用户用rm –rf 可以删除user1和user2的文件

[user3@localhostpublic]$ ll        

总计 0

第二段:

[user3@localhostpublic]$ exit

exit

[root@localhostpublic]# chmod o+t /public/ //增加粘滞位属性

[root@localhostpublic]# ll -d /public/ //再次查看的时候,发现other用户的可执行权限位置变为了t

drwxrwxrwt 2 rootroot 4096 02-17 18:53 /public/

[root@localhostpublic]# su user1       //再次使用user1,user2创建文件file1.txt和file2.txt

[user1@localhostpublic]$ touch file1.txt

[user1@localhostpublic]$ exit

exit

[root@localhostpublic]# su user2

[user2@localhost public]$touch file2.txt

[user2@localhostpublic]$ su user3

口令:



[user2@localhostpublic]$ exit

exit

[root@localhostpublic]# su user3

[user3@localhostpublic]$ ll

总计 0

-rw-rw-r-- 1 user1user1 0 02-17 18:55 file1.txt

-rw-rw-r-- 1 user2user2 0 02-17 18:56 file2.txt

[user3@localhostpublic]$ rm -rf file*  //这时删除的时候不能删除了,证明了粘滞位的作用

rm: 无法删除 “file1.txt”: 不允许的操作

rm: 无法删除 “file2.txt”: 不允许的操作

[user3@localhostpublic]$



扩展:

Linux系统管理_用户和用户组http://murongqingqqq.blog.51cto.com/2902694/1360239

Linux系统管理_基本权限和归属http://murongqingqqq.blog.51cto.com/2902694/1360265

Linux系统管理_ACL访问控制:http://murongqingqqq.blog.51cto.com/2902694/1361506




本文转自 murongqingqqq  51CTO博客,原文链接:http://blog.51cto.com/murongqingqqq/1360874



相关文章
|
3月前
|
人工智能 Java 关系型数据库
Red Hat Enterprise Linux 9.5 发布下载,新增功能亮点概述
Red Hat Enterprise Linux 9.5 发布下载,新增功能亮点概述
161 4
Red Hat Enterprise Linux 9.5 发布下载,新增功能亮点概述
|
3月前
|
Linux 数据安全/隐私保护
linux特殊权限!!
本文介绍了Linux系统中的特殊权限,包括suid、sgid和sbit。suid使普通用户在执行特定命令时获得root权限;sgid使用户在创建文件时继承目录的用户组权限;sbit确保用户只能删除自己在共享目录中创建的文件。此外,文章还讲解了chattr和lsattr命令,用于更改和查看文件的扩展属性,以及umask的概念和计算方法,帮助理解文件和目录的默认权限。
86 1
linux特殊权限!!
|
3月前
|
安全 Linux 数据安全/隐私保护
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。本文介绍了使用 `ls -l` 和 `stat` 命令查找文件所有者的基本方法,以及通过文件路径、通配符和结合其他命令的高级技巧。还提供了实际案例分析和注意事项,帮助读者更好地掌握这一操作。
73 6
|
4月前
|
Ubuntu Linux 测试技术
Linux系统之Ubuntu安装cockpit管理工具
【10月更文挑战第13天】Linux系统之Ubuntu安装cockpit管理工具
343 4
Linux系统之Ubuntu安装cockpit管理工具
|
3月前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
106 2
|
3月前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
136 3
|
4月前
|
Linux 应用服务中间件 nginx
Linux下权限设置之suid、sgid、sticky
Linux下权限设置之suid、sgid、sticky
|
9月前
|
安全 Linux 网络安全
如何在 VM 虚拟机中安装 Red Hat Enterprise Linux 9.3 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 Red Hat Enterprise Linux 9.3 操作系统保姆级教程(附链接)
|
9月前
|
存储 Linux
Redhat Enterprise Linux磁带机简单操作
Redhat Enterprise Linux磁带机简单操作
111 2
|
网络协议 关系型数据库 MySQL
Red Hat enterprise linux 5 -mysql安装步骤
Red Hat enterprise linux 5 -mysql安装步骤
122 0