列出 Linux 上的管理员

列出 Linux 上的管理员

如何列出 Linux 上具有管理员权限的所有用户?我检查了文件 /etc/passwd/,但我不知道如何确定哪个帐户具有特权。

答案1

首先,有rootUID= 0),它始终是唯一真正的管理员或超级用户。

但是,其他用户可以被赋予模仿的能力root,从而有效地成为管理员。这可以通过以下方式实现:

  • su:此命令模拟用户并打开 shell,但您需要知道目标用户的密码。这允许任何知道 root 密码的人成为管理员。
  • sudo:此命令模拟用户并执行命令,但您需要知道调用用户的密码,并且调用用户必须具有 sudo 权限。这允许任何具有 sudo 权限的人成为管理员。

在 Ubuntu 系统上,root 帐户通常是被禁用的,这意味着 root 没有密码,您无法登录该帐户,因此su不可用。root但是仍然可以被模仿,这意味着成为管理员的主要方法是通过sudo命令。

要了解通常谁具有 sudo 权限,您可以查看sudoers位于的文件/etc/sudoers。您可能还想在手册页中查找文件格式。默认情况下,Ubuntu 有一个admin组,该组中的任何人都可以使用sudo。其他发行版可能有一个sudoers组或一个sudo组或一个staff组。grawity 补充说,大多数 KDE 和 Gnome 应用程序使用polkit来管理授权,通常使用wheel组以获得管理员权限。OS X 还使用该wheel组授予管理员对守护程序和其他系统级任务的访问权限,而该admin组用于授予管理员对用户帐户的访问权限。

除此之外,还有无数可以设置的“部分管理员”权限。Root 只是一个“管理员”,因为它本质上绕过了安全检查。如果用户对某项功能具有特定权限,那么他们也是该区域的“管理员”;例如,就像您是主目录的管理员一样,您可以让某人成为 Web 服务器的管理员,或计算机上视频/音频输出的管理员(如果我没记错的话,请查找video和组)。audio


总而言之,没有一种简单的方法可以获取“管理员列表”。但是,要快速获取大多数管理员,请执行以下操作:

  • root,只是因为。
  • 具有 sudo 权限的任何人,或具有 sudo 权限的组中的任何人。通常admin、、、、或组中的任何人(如果存在)wheelstaffsudosudoers
  • 当然,任何人都知道上述账户的密码。

答案2

您可以使用

less /etc/group

寻找群组。

答案3

在 Linux 上,特殊权限通常通过组提供。例如,sudoers 组中的人可以使用 sudo,audio 组中的人可以播放音频等。使用该groups命令列出用户所在的组。

答案4

要真正找到某个组的管理员,您需要查看该group-文件。该文件列出了所列每个组的所有管理员。只有通过SUDO或提升的管理员才能查看此文件的内容root。其他人提到的常规组文件将仅列出此类所列组的一般成员资格。

这就是 Slackware 或其他 Slackware 发行版的工作方式,但我确实记得看到其他发行版有这些文件。

相关内容