为什么 root 可以访问我的 x-server?

为什么 root 可以访问我的 x-server?

我在我的机器上运行 Debian 9.5,当我运行命令时,xhost有以下输出:

access control enabled, only authorized clients can connect
SI:localuser:username

因此,根据我的理解,root 不应该被允许访问 x-server,但是当我切换到 root 并su从终端运行 GUI 应用程序时,一切都运行良好,尽管它不应该。

那么有人可以解释为什么我的 x-server 忽略访问控制列表中的条目吗?

答案1

如果您曾经su切换到 root,则XAUTHORITY环境变量在由 启动的 root shell 中可用su。由于 root 可以读取您的文件,因此它可以访问 Xauthority 文件。在我的系统上:

root@host# medit   

启动正常,但清空XAUTHORITY会导致失败:

root@host# XAUTHORITY= medit
No protocol specified

(medit:25388): Gtk-WARNING **: 12:35:31.963: cannot open display: :1

相关内容