为什么我可以将显示从linux导出到linux?

为什么我可以将显示从linux导出到linux?

本地机器

[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则可以在客户端中按使用情况启用它。

相关内容