本地机器
[mukesh@centos ~]$ xhost 192.168.4.200
192.168.4.200 being added to access control list
远程虚拟机
[mukesh@centos ~]$ ssh [email protected]
[email protected]'s password:
Last login: Fri Jul 7 02:38:07 2017
[user@labipa ~]$ DISPLAY=192.168.1.3:0.0;export DISPLAY
[user@labipa ~]$ firefox
Error: cannot open display: 192.168.1.3:0.0
[user@labipa ~]$ su -
Password:
Last login: Fri Jul 7 02:47:53 EDT 2017 on pts/1
[root@labipa ~]# cat /etc/ssh/sshd_config | grep X11F
X11Forwarding yes
# X11Forwarding no
另外,根据http://www.softpanorama.org/Xwindows/Troubleshooting/can_not_open_display.shtml在远程机器
[root@labipa ~]# netstat -tulpen | grep "\(177\|6000\)"
tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN 0 50364 1512/Xorg
tcp6 0 0 :::6000 :::* LISTEN 0 50363 1512/Xorg
udp 0 0 0.0.0.0:177 0.0.0.0:* 0 48805 1476/gdm
contents of /etc/gdm/custom.conf
[security]
DisallowTCP=false
[xdmcp]
Enable=true
答案1
如果启用X11转发在客户端和服务器端,ssh
将自动设置DISPLAY
变量(到本地代理)。你不需要设置它,尤其是不要直接设置到机器的IP地址;这将完全绕过该ssh
机制。用于echo $DISPLAY
验证显示是否由 设定ssh
。
如果您只在服务器上启用 X11 转发(如图所示),并且不想一般启用它,ssh -X
则可以在客户端中按使用情况启用它。