通常,通过为 vCenter Server 系统管理的 ESXi 主机对象分配权限,可向用户授予特权。如果使用的是独立 ESXi 主机,则可以直接分配特权。

vCenter Server 管理的 ESXi 主机分配权限

如果 ESXi 主机由 vCenter Server 管理,请通过 vSphere Client 执行管理任务。

您可以在 vCenter Server 对象层次结构中选择 ESXi 主机对象,并为有限数量的用户分配管理员角色。随后,这些用户可以对 ESXi 主机执行直接管理。请参见使用 vCenter Server 角色分配特权

最佳做法是至少创建一个指定用户帐户,并为其分配对主机的完全管理特权,然后使用该帐户,而不是 root 帐户。为 root 帐户设置一个高度复杂的密码,并限制 root 帐户的使用。不要移除 root 帐户。

为独立的 ESXi 主机分配权限

可以在 VMware Host Client 的“管理”选项卡中添加本地用户及定义自定义角色。请参见《vSphere 单台主机管理 - VMware Host Client》文档。

对于所有版本的 ESXi,都可以在 /etc/passwd 文件中查看预定义用户列表。

系统预定义了以下角色。

只读
允许用户查看与 ESXi 主机关联的对象,但不允许对对象进行任何更改。
管理员
管理员角色。
无权访问
无权访问。此角色为默认角色。可以替代默认角色。

您可以使用直接连接到 ESXi 主机的 VMware Host Client 管理本地用户和组以及将本地自定义角色添加到 ESXi 主机。请参见《vSphere 单台主机管理 - VMware Host Client》文档。

在 vSphere 6.0 及更高版本中,您可以使用 ESXCLI 帐户管理命令管理 ESXi 本地用户帐户。您可以使用 ESXCLI 权限管理命令设置或移除对 Active Directory 帐户(用户和组)及对 ESXi 本地帐户(仅限用户)的权限。

注: 如果通过直接连接到 ESXi 主机为该主机定义一个用户,而 vCenter Server 中也存在同名的用户,则这两个用户不同。如果为 ESXi 用户分配某个角色,则不会为 vCenter Server 用户分配同一角色。

预定义的 ESXi 用户和特权

如果您的环境不包含 vCenter Server 系统,则会预定义以下用户。

root 用户

默认情况下,每个 ESXi 主机都有一个具有管理员角色的 root 用户帐户。该 root 用户帐户可用于本地管理,并可用于将主机连接到 vCenter Server

分配 root 用户权限可以更方便地访问 ESXi 主机,因为其名称已知。但是使用公共 root 帐户难以确定每个用户执行的操作。

为了更好地进行审核,可以创建具有管理员特权的各个帐户。为 root 帐户设置一个高度复杂的密码,并限制 root 帐户的使用,例如向 vCenter Server 添加主机时使用 root 帐户。不要移除 root 帐户。有关向 ESXi 主机的用户分配权限的详细信息,请参见《vSphere 单台主机管理 - VMware Host Client》文档。

最佳做法是确保将 ESXi 主机上具有管理员角色的任何帐户分配给具有指定帐户的特定用户。使用 ESXi Active Directory 功能,以便管理 Active Directory 凭据。
重要说明: 您可以移除 root 用户的访问特权。但是,必须首先在 root 级别创建可向另一个用户分配管理员角色的另一种权限。
vpxuser 用户
管理主机的活动时, vCenter Server 使用 vpxuser 特权。

vCenter Server 管理员可在主机上执行可以由 Root 用户执行的大多数任务,并调度任务和处理模板等。但是,vCenter Server 管理员不能为主机直接创建、删除或编辑本地用户和组。只有拥有管理员特权的用户才能直接在主机上执行这些任务。

无法使用 Active Directory 管理 vpxuser 用户。

小心: 不要以任何方式更改 vpxuser 用户。不要更改其密码。不要更改其权限。如果进行了更改,在通过 vCenter Server 处理主机时可能会出现问题。
dcui 用户
dcui 用户以管理员权限在主机上操作。此用户的主要目的是从直接控制台用户界面 (DCUI) 配置锁定模式的主机。

此用户将充当直接控制台的代理,无法由交互式用户来修改或使用。

停用非 ESXi 用户的 Shell 访问

在 vSphere 8.0 及更高版本中,可以停用非 root ESXi 用户(如预定义的 vpxuser 和 dcui 用户)的 shell 访问。通过停用 shell 访问,可对这些用户强制实施“仅 API”策略来增强安全性。

要停用 shell 访问,可以使用 esxcli system account set --id user --shell-access false 命令。相应的 API 为 LocalAccountManager.updateUser。您还可以使用 VMware Host Client 更改 ESXi 本地用户的“启用 Shell 访问”标记。

注: 当您停用具有管理访问权限的用户的 shell 访问权限时,由于 shell 访问被拒绝,该用户无法向其他用户授予 shell 访问权限,或更改具有 shell 访问权限的用户的密码。其他权限(如主机配置文件)仍允许 vpxuser 和 dcui 等用户更改其他用户的密码。

做出此类更改时,请确认它们不会破坏现有的第三方工作流。