SUID、SGID和Sticky Bit是Linux特殊权限,分别用于以文件所有者身份执行、继承组权限及限制删除文件。SUID用4000表示,如chmod 4755;SGID用2000,可作用于文件和目录;Sticky Bit用1000,常用于/tmp等共享目录。三者可通过数字或符号方式设置,组合使用时需谨慎以防安全风险。

在Linux系统中,文件和目录的权限管理非常关键。除了常见的读(r)、写(w)、执行(x)权限外,还有三种特殊权限位:SUID、SGID 和 Sticky Bit。它们用于实现更精细的安全控制和功能需求。下面详细介绍这三个特殊权限的作用、使用场景及设置方法。
作用:SUID 仅对可执行文件有效。当一个文件设置了 SUID 权限时,任何用户在执行该文件时,都会以该文件所有者的身份运行,而不是以执行者自己的身份。
这在需要临时提升权限的场景中非常有用。例如,普通用户需要修改密码,而密码信息保存在 /etc/shadow 文件中,默认只有 root 可写。passwd 命令就设置了 SUID,使得普通用户执行时能以 root 身份写入 shadow 文件。
如何识别与设置:
-rwsr-xr-x 1 root root 表示设置了 SUID。chmod 4755 filename 或 chmod u+s filename。作用:SGID 可作用于文件和目录。
如何识别与设置:
-rwxr-sr-x 1 user team 表示设置了 SGID。chmod 2755 dirname 或 chmod g+s dirname。作用:Sticky Bit 主要用于目录。一旦目录设置了粘滞位,只有文件的所有者、目录所有者或 root 用户才能删除或重命名该目录中的文件。
典型应用是 /tmp 目录。所有用户都可以在 /tmp 中创建文件,但不能删除别人创建的文件,防止误删或恶意操作。
如何识别与设置:
drwxrwxrwt 2 root root 表示设置了 Sticky Bit。chmod 1777 /tmp 或 chmod +t /tmp。这三个特殊权限可以组合使用,如 4755(SUID)、2755(SGID)、1777(Sticky Bit),甚至同时设置多个,如 7777 表示三项都启用(不推荐生产环境使用)。
基本上就这些。理解 SUID、SGID 和 Sticky Bit 的作用,有助于更好地管理 Linux 系统权限,既满足功能需求,又避免安全风险。注意:滥用这些权限可能带来安全隐患,应只在必要时谨慎使用。
以上就是Linux中的SUID、SGID和Sticky Bit详解的详细内容,更多请关注php中文网其它相关文章!
 
                        
                        每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
 
                Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号