自从我从 Ubuntu 18.04 升级到 19.10 后,我的远程 TCP-XWindows 坏了,我需要它来工作。
我正在开发一个非常旧的当前生产系统,它使用旧式 X11 TCP 连接。它不能使用SSH X 转发。我需要让 Ubuntu 接受远程 TCP 连接(来自老化的 Solaris 机器)。
这与如何使 X.org 监听端口 6000 上的远程连接密切相关?. 但是,我已经完成了答案中的所有操作,问题仍然存在。
我需要能够运行远程 X-Windows 应用程序,例如:
xeyes -display 192.168.1.111:0.0
并让它出现在我的本地工作站上。但我得到的是(当然):
Error: Can't open display: 192.168.1.111:0.0
我已编辑/etc/gdm3/custom.conf
, 以包含:
[security]
DisallowTCP=false
[xdmcp]
ServerArguments=-listen tcp
我肯定在跑步gdm
,而不是lightdm
。
我还编辑/etc/X11/xinit/xserverrc
了 ,现在它说:
exec /usr/bin/X -listen tcp "$@"
尽管我希望无论如何都会gdm
修改这一点。
我已经发出命令xhost +remote_server_name
和xhost +
(绝望地)。
我可以看到 X11 在端口 6001 上侦听。(x11-1 是 6001 /etc/services
......为什么这不是 x11-0 / 6000?)
$ netstat -a | grep x11
tcp 0 0 0.0.0.0:x11-1 0.0.0.0:* LISTEN
tcp6 0 0 [::]:x11-1 [::]:* LISTEN
(并在这些更改后重新启动)。
是否在 Ubuntu 19 中添加了一些“额外层”配置以防止 X11 以这种方式运行?
编辑:似乎进程运行正常:
2196 tty2 Ssl+ 0:00 /usr/lib/gdm3/gdm-x-session --register-session --run-script --allow-remote-connections cinnamon-session-cinnamon
2198 tty2 Sl+ 16:53 /usr/lib/xorg/Xorg vt2 -displayfd 3 -auth /run/user/1000/gdm/Xauthority -listen tcp -background none -noreset -keeptty -verbose 3
EDIT2:评论者更新旧应用程序通过命令行显示,例如:--display 192.168.1.111:0.0
然后它自己在远程显示上打开更多窗口。
我试过xhost +
了,没有区别。
我正在使用 Ubuntu 20.04。尽管您正在谈论所有选项,但我无法连接到端口 6000。
最终起作用的是这个黑客:
并添加
-listen tcp
到 Xorg 命令:然后保存并退出文件并重新启动用户图形界面:
然后检查端口 6000 是否打开: