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

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

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

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

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

据我了解,问题在于polkit对本地和远程会话的处理方式不同,并且基本上阻止了来自远程会话(如 xrdp、vnc 等)的管理操作。这很麻烦,因为设置 xrdp 服务的主要原因是可以远程管理机器!我可以通过sudo终端解决这个问题,但我真的希望它能正常工作。

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

答案1

为了更简洁地描述昨天的挫败感,我使用了一个知名的搜索引擎来搜索“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

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

答案2

对我来说效果很好。谢谢!

我不确定“Identity=unix-group:车轮“所以我将组改为‘sudo’。我猜‘用户’组也可以正常工作。

顺便说一下,我正在运行 Linux Lite 6.0。

干杯!

相关内容