如何检查普通用户是否具有超级用户权限

Jay*_*n T 4 linux redhat command-line-interface

我想检查普通用户是否具有超级用户权限(意味着 root 权限)。我的操作系统是 RHEL 6,我检查了/etc/passwd配置文件,但没有用。请告诉我在 Linux 机器中查找用户当前权限的任何方法。

Jan*_*nen 10

过去 Unix 世界中的根模型很容易。uid 0,您是 root 用户,您拥有一切的全部权力。不过,情况发生了一些变化。

水位

文件可以被授予suid 位,因此它们甚至可以由普通用户以 root 身份运行。好的,这可能是在原始的 Unix 中。:-)

团体

如果用户属于组 0,他可能没有完全的 root 权限,但仍然可能会看到很多不应该看到的东西。此外,在某些发行版wheel组中,您需要注意一些事项 - 属于该组的su用户如果知道 root 密码,则可以通过他们的方式进入 root 用户。

须藤

除了传统的之外su,该sudo命令还允许限制某些用户/组只能以 root 身份执行某些命令。检查一下visudo

SSH 访问

使用 ssh 可以生成一个 ssh 密钥,您可以使用该密钥以 root 身份连接,但只能使用命令 x、y 和 z。这通常用于备份等任务,其中备份过程必须能够访问系统中的每个文件。

能力

Linux 内核获得了可以授予对某些子系统(例如网络接口或块设备)的访问权限的功能。请参阅此列表

SELinux 角色

如果您的系统中启用了安全框架SELinux,则 SELinux 也具有基于角色的访问权限。请参阅Fedora 关于 SELinux 的指南