Xhost
来自Xhost man页面:
- xhost程序用于将主机名或用户名添加和删除到允许连接到X服务器的列表中。就主机而言,其提供了一种基本的隐私控制和安全措施。请注意,它只适用于工作站(单用户)环境,尽管它可以限制最严重的滥用行为。需要更复杂措施的环境应该实现基于用户的机制或使用协议中传递其他身份验证数据给服务器的钩子。
参见xhost(1)。
安装[编辑 | 编辑源代码]
安装软件包 xorg-xhost包 。
使用方法[编辑 | 编辑源代码]
警告: 此命令将授予任何本地用户对你的X屏幕的访问权限。这在单用户环境上是可以被接受的,但是通常情况下不能在多用户环境下使用。如果你想保留root用户对X屏幕的访问权限,建议设置
$XAUTHORITY
环境变量。默认情况下这个变量由 sudo 和 su 保留(但不包括su -
)。为了让使用sudo或su运行的应用程序能够访问图形服务器(X屏幕/电脑屏幕),在终端中以普通用户身份输入:
$ xhost +SI:localuser:username
要让一切恢复正常,并控制X屏幕的访问权限,输入以下命令:
$ xhost -
xhost +
将完全禁用X身份验证,除非你知道你在做什么,请不要使用这个命令。
提示"无法连接到X服务器:0.0"(cannot connect to X server :0.0)[编辑 | 编辑源代码]
警告: 此命令将会关闭访问控制,这意味着系统上的任何用户,或者网络上的任何用户(如果你打开了X服务器的网络监听),都可以在没有任何认证的情况下访问你的
$DISPLAY
。这在你的系统上打开了一个安全漏洞,允许其他用户在你的X服务器上启动应用程序(例如键盘记录器)。你可以使用xhost +
暂时消除这个提示,或者(在众多方法中),你也可以选择关闭访问认证来永久解决这个问题,将:
xhost + > /dev/null
添加到~/.bashrc
文件中。这样每次启动终端都将自动执行该命令。如果在home文件夹中没有.bashrc
文件请创建它。如果不在命令中添加> /dev/null
,每次启动终端时你将会收到信息:access control disabled, clients can connect from any host(这是提示你将在root下运行任何软件)。