`
网络接口
  • 浏览: 44871 次
文章分类
社区版块
存档分类
最新评论

Linux的特殊权限

 
阅读更多

Linux引入suid、sgid、sticky这三种特殊权限,能够更加方便、有效和安全地控制文件。
当在一个目录或文件上加入suid特殊权限时,如过原来目录或文件的属主具有x(执行)权限,就会用小写的s来替代x;如果原来文件或目录不具有x(执行)权限,就会用大写的S来代替x。
同样,sgid和suid相同,如过原来目录或文件的属组具有x(执行)权限,就会用小写的s来替代x;如果原来文件或目录不具有x(执行)权限,就会用大写的S来代替X。
同样,如果在一个文件或目录上加入sticky权限时,若原文件或目录的其他用户有x(可执行)权限时,就用小写t代替x;如果原文件或目录没有x权限时,就用大写T替代x权限。下例说明。
可以chmod的字符或数字的方式修改特殊权限,下例以数字方式实现。
# -rw-r--r-- 1 root root 0 Nov  6 07:40 test1  ugo都没执行权限
# chmod 7644 test1                            原权限是644,都加上特殊权限
# -rwSr-Sr-T 1 root root 0 Nov  6 07:43 test1  属主、属组、其他用户执行权限变为S、S、T.

# -rwxr-xr-x 1 root root 0 Nov  6 07:43 test2  ugo都有执行权限
# chmod 7755 test2                            原权限是655,都加上特殊权限
# -rwsr-sr-t 1 root root 0 Nov  6 07:49 test2  属主、属组、其他用户执行权限变为s、s、t.

特殊权限对可执行文件的作用:
suid特殊权限是以可执行文件的所有者的权限来运行这一文件,不是以执行者的权限运行该命令。
sgid特殊权限是以可执行文件的群组的权限来运行这一文件。下例说明:
ls -l /bin/ping
-rwsr-xr-x 1 root root 35832 Apr 24  2009 /bin/ping
可见ping命令有suid特殊权限。ping可以测试网络是否连通。切换到yaoyao用户,ping一下可见网络确实连通。
[yaoyao@localhost test2]# ping www.baidu.com -c4
PING www.linuxidc.com (61.135.169.121) 56(84) bytes of data.
64 bytes from 61.135.169.121: icmp_seq=1 ttl=47 time=10.0 ms
64 bytes from 61.135.169.121: icmp_seq=2 ttl=46 time=14.3 ms
64 bytes from 61.135.169.121: icmp_seq=3 ttl=46 time=17.7 ms
64 bytes from 61.135.169.121: icmp_seq=4 ttl=46 time=23.9 ms

--- www.linuxidc.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3000ms
rtt min/avg/max/mdev = 10.090/16.539/23.938/5.067 ms
切换到root用户,用chmod命令去掉ping命令的suid权限,再切换到yaoyao用户,测试一下是否能ping通。
# chmod u-s /bin/ping
# ls -l /bin/ping
# -rwxr-xr-x 1 root root 35832 Apr 24  2009 /bin/ping
$ $ ping www.baidu.com
ping: icmp open socket: Operation not permitted
这次就无法ping通,由此可见,suid特殊权限是以可执行文件的所有者的权限来运行这一文件,不是以执行者的权限运行该命令。

特殊权限对目录的作用:
在一个目录上设置了sticky特殊权限,只有文件的所有者和用户才能删除该目录的文件,而不理会属组和其他用户的写权限。
在一个目录上设置sgid特殊权限,则只要是同组成员,都可以在此目录查看、创建、删除文件。
经常会对目录设置sticky和suid权限以方便管理。即同组成员可以查看和写入本目录下的各个文件,却不能删除。如下:
首先创建两个用户xiaoyao和linuxidc用于测试,再创建一个house目录。创建一个love分组,于是xiaoyao和linuxidc便相爱了...将这对恋人xiaoyao和linuxidc加入love分组,house目录属组设置为love,再给house目录设置sgid和sticky这两个特殊权限。

# useradd xiaoyao
# useradd linuxidc
# mkdir house
# groupadd love

将xiaoyao和linuxidc加入love组内。
# usermod -G love xiaoyao
# usermod -G love linuxidc

#id xiaoyao;id linuxidc
uid=503(xiaoyao) gid=504(xiaoyao) groups=504(xiaoyao),506(love) context=root:system_r:unco nfined_t:SystemLow-SystemHigh
uid=504(linuxidc) gid=505(linuxidc) groups=505(linuxidc),506(love) context=root:system_r:u nconfined_t:SystemLow-SystemHigh    可以看到用户xiaoyao和linuxidc都在love组内。

将house目录属组改为love组
# chown :love house
# ls -l
drwxr-xr-x 2 root love 4096 Nov  6 09:34 house

添加sgid和sticky特殊权限,并且属组具有写权限(属组内用户可以创建文件,否则不能)。
# chmod 3775 house
drwxr-sr-t 2 root love 4096 Nov  6 09:34 house

切换到用户linuxidc,并创建文件xiaoming,写入一句话"I love you"
$ echo "I love you xiaoyao." > linuxidc

切换到用户xiaoyao,创建文件xiaoyao,且写入"Me too."
$ echo "Me too" > xiaoyao

查看house目录内容,可发现所创建文件属组都是love。
ls -l
-rw-rw-r-- 1 linuxidc love 19 Nov  6 09:40 linuxidc
-rw-rw-r-- 1 xiaoyao  love  6 Nov  6 09:41 xiaoyao

用户xiaoyao尝试删除house目录下的linuxidc,这时提示不允许,但可以写入,这就是共享信息吧。
[xiaoyao@localhost house]$ rm linuxidc
rm: cannot remove `linuxidc': Operation not permitted
$ echo "Baby." >> linuxidc
$ cat linuxidc
Me too.
Baby.

分享到:
评论

相关推荐

    linux系统权限管理文件特殊权限PPT学习教案.pptx

    "Linux 系统权限管理文件特殊权限学习教案" Linux 系统权限管理文件特殊权限是 Linux 操作系统中的一种重要机制,用于控制用户对文件和目录的访问权限。本学习教案将详细介绍 Linux 系统权限管理文件特殊权限的概念...

    Linux基础课件特殊权限设置SGID权限共9页.pdf

    本课件聚焦于Linux特殊权限之一——SGID(Set Group ID),它是一种增强协作和权限控制的机制。 SGID权限通常用于文件和目录,其主要作用在于改变执行文件运行时的组身份,或者对目录进行特殊控制,以实现特定的...

    linux中特殊权限问题

    本文将深入探讨Linux中的特殊权限SUID、SGID和SBIT,以及与进程相关的ID。 首先,我们来看Linux中的用户和权限。用户分为两种类型:超级用户(root)和普通用户。超级用户拥有系统的所有权限,而普通用户则受到一定...

    Linux文件特殊权限SGID-UID详解

    ### Linux 文件特殊权限 SGID/SUID/Sticky Bit 详析 #### 一、引言 在 Linux 操作系统中,为了实现更为灵活和安全的权限管理机制,除了基本的读(r)、写(w)、执行(x)权限外,还引入了一些特殊的权限控制方式,包括 ...

    linux系统权限管理文件特殊权限学习教案.ppt

    在这个"Linux系统权限管理文件特殊权限学习教案"中,主要介绍了Linux中的ACL(Access Control List)权限、文件特殊权限、文件系统属性chattr以及系统命令sudo的相关知识。 8.1 ACL权限:在传统的Linux文件权限系统...

    linux 文件权限设置技巧

    除了基本的读、写、执行权限外,Linux 文件系统还提供了 setuid、setgid 和 sticky bit 等特殊权限位,以满足更复杂的权限控制需求。 setuid 权限位是指在执行文件时,以文件所有者的权限执行该文件。典型的文件是 ...

    linux系统权限总结

    接下来,我们将详细解析Linux系统的权限体系,特别是SUID与SGID特殊权限的概念及应用。 ### Linux文件权限基础 Linux中的文件权限通常由读(r)、写(w)与执行(x)三个基本部分组成。这三种权限分别对应于文件的...

    linux系统权限管理文件特殊权限PPT课件.pptx

    linux系统权限管理文件特殊权限PPT课件.pptx

    linux系统权限管理文件特殊权限学习教案.pptx

    linux系统权限管理文件特殊权限学习教案.pptx

    linux基础权限介绍

    ### Linux基础权限详解 #### 一、文件与目录权限概览 在Linux系统中,文件和目录的权限管理是至关重要的。...此外,掌握特殊权限如SUID、SGID和Sticky Bit的使用场景,有助于进一步提升系统的安全性。

    LINUX 目录的特殊权限.html

    LINUX 目录的特殊权限.html详细讲解

    Linux基础课件特殊权限设置SUID权限共10页.pdf

    本篇课件聚焦于Linux中的特殊权限——SUID(Set-User-ID)权限,通过10页的内容深入解析这一关键概念。 SUID权限是Linux权限系统中的一个独特特性,允许用户临时获得执行文件所属者的权限。这种权限通常用于提供...

    Linux系统基本权限ACL及特殊权限命令操作修改

    Linux系统基本权限ACL及特殊权限命令操作修改 一、基本权限 ACL 1、区分 请思考:使用chmod能针对独立用户设置文件不同的权限吗? user01 rwx file1 user02 rw file1 user03 r file1 user04 rwx file1 user05 rw ...

    linux-权限管理视频教程

    08.2.1 权限管理-文件特殊权限-SetUID.mp4 08.2.2 权限管理-文件特殊权限-SetGID.mp4 08.2.3 权限管理-文件特殊权限-Sticky BIT.mp4 08.3 权限管理-chattr权限.mp4 08.4 权限管理-sudo权限.mp4

    linux系统权限管理文件特殊权限实用教案.ppt

    本教程聚焦于Linux中的特殊权限,包括ACL(Access Control Lists)、文件特殊权限(如SetUID、SetGID和Sticky Bit)以及系统命令sudo的权限管理。 1. **SetUID**(设置用户ID) SetUID权限允许一个文件(通常是二...

    linux 权限

    linux 权限,只介绍了一般权限的介绍,没有特殊权限的介绍。

    Linux基础课件特殊权限设置SBIT权限共9页.pdf

    在实际操作中,合理利用这些特殊权限,可以有效提升系统的安全性,同时确保用户之间的协作和数据保护。在学习和使用Linux时,理解并掌握SUID、SGID和SBIT是至关重要的,这将有助于你更好地管理和维护Linux环境。通过...

    浅谈LINUX文件系统的特殊权限设置与应用.pdf

    【Linux 文件系统的特殊权限设置与应用】 Linux操作系统以其强大的稳定性和安全性著称,其中关键的一环就是完善的文件权限管理系统。这个系统包括基本权限、特殊权限以及访问控制列表,确保了多用户环境下的资源...

    恢复LINUX权限

    这些特殊权限位允许一个普通用户以文件所有者的身份执行文件。例如,要使 `/usr/bin/passwd` 和 `/usr/bin/su` 命令具有 SUID 权限,可以使用以下命令: ``` chmod u+s `which passwd` chmod u+s `which su` ``` ...

    Linux应用技术:Linux文件权限管理.pptx

    项目3 Linux磁盘文件管理;第三讲 主要内容;查看Linux文件权限;...拓展:特殊权限;拓展:特殊权限;拓展:验证特殊权限sgid;;拓展:特殊权限;验证:sticky特殊权限;练习:设置特殊权限;拓展:文件默认权限umask掩码

Global site tag (gtag.js) - Google Analytics