向非 sudoer 授予 X11 xauth 权限

向非 sudoer 授予 X11 xauth 权限

我在一台 Ubuntu 机器上有几个非 sudo 用户需要访问X11 forwarding。但是,我似乎找不到传递X11 connection rejected because of wrong authentication错误的解决方法,因为每次 sudoer 帐户注销时, 都会MAGIC-COOKIE被设置为另一个,因此非 sudo 用户将失去其正确的xauth list

重现问题的步骤:

使用 sudoer 帐户我执行以下命令:

sudo su - nonSudoerUser -c 'echo $DISPLAY'
NONE
sudo su - nonSudoerUser -c 'xauth list'
NONE
sudo su - nonSudoerUser -c 'firefox &'
X11 connection rejected because of wrong authentication

现在检查 sudoer 端:

xauth list
NAME/unix:10  MIT-MAGIC-COOKIE-1  c1ed9d514d3c1ca1166d20b3edd794b6

将其复制到非 sudoer ~/.Xauthority:

sudo su - nonSudoerUser -c 'xauth add NAME/unix:10  MIT-MAGIC-COOKIE-1  c1ed9d514d3c1ca1166d20b3edd794b6'

检查它是否正常工作:

sudo su - nonSudoerUser -c 'echo $DISPLAY'
localhost:10.0

现在,注销/登录并重新检查 sudoers 列表,我们看到MAGIC-COOKIE已更改,并且非 sudoer 无法再连接到 X11。

在我的 sshd_config 上我有:

Host *
X11Forwarding yes
ForwardX11Trusted yes
X11DisplayOffset 10

另外,我还尝试过:

$sudo xhost +
access control disabled, clients can connect from any host

没有任何成功。有人能澄清一下这个问题吗?谢谢。

相关内容