我在一台 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
没有任何成功。有人能澄清一下这个问题吗?谢谢。