CentOS:xrdp 会话上的管理员用户无法执行管理操作

kbr*_*bro 5 vnc centos xrdp sysadmin rocky-linux

我正在运行带有 GNOME 和 MATE 桌面的 Rocky Linux 8.4 工作站,但我在 CentOS 7.9 上也看到了同样的问题...

\n

当我在本地显示器上登录计算机时,我可以使用控制中心应用程序执行管理用户和设置系统时间等操作(在 MATE 上,这些工具隐藏在 GNOME 的菜单中)。当我单击该工具时,我会弹出一个窗口,询问我的密码,或者在我通过身份验证之前会出现一个“解锁”按钮。这一切都有效,因为我的用户是“wheel”管理组的成员。

\n

然而,当同一个用户登录到同一个桌面环境时xrdp,管理系统的能力就消失了。在某些情况下,“解锁”按钮呈灰色,而在其他情况下,当我单击工具应用程序图标时,我会在文件中收到一条消息“作为其他用户执行命令时出错:未授权” .xsession-errors

\n

据我了解,问题在于polkit以不同方式对待本地和远程会话,并且基本上阻止来自远程会话(例如 xrdp、vnc 等)的管理操作。这是一个痛苦,因为设置 xrdp 服务的主要原因是我可以远程管理机器!sudo我可以使用终端在某种程度上解决这个问题,但实际上我希望它只是工作\xe2\x84\xa2。

\n

所以我的问题是 - 如何配置polkit以将管理员用户的远程会话与本地会话相同地对待?(始终假设 polkit 是我问题的根源!)

\n

kbr*_*bro 3

更简洁地描述了昨天的挫败感后,我使用了一个著名的搜索引擎来查找“linux polkit 本地和远程会话”,并得到了最重要的结果 -为非本地用户启用系统管理权限 - 到底是如何polkit工作的,无论如何? 答案(对链接问题稍加修改)是创建一个/etc/polkit-1/localauthority/50-local.d/10-remote-admin-allow.pkla包含

[Allow Remote Admin]
Identity=unix-group:wheel
Action=*
ResultAny=auth_admin_keep
ResultInactive=auth_admin_keep
ResultActive=auth_admin_keep
Run Code Online (Sandbox Code Playgroud)

并运行systemctl restart polkit(这很重要,但在另一个问题中被忽略了)。您也可以将此文件放在 下/var/lib/polkit-1,但根据pklocalauthority.8,前者用于本地配置,而后者用于第 3 方软件包。