我正在使用cygwin进入远程linux盒子并使用cygwin XWin服务器来显示gui应用程序。
首次连接远程计算机时,会显示以下警告:
Warning: untrusted X11 forwarding setup failed: xauth key data not generated
Warning: No xauth data; using fake authentication data for X11 forwarding.
无论警告如何,XWin最初看起来都很完美。过了一会儿(通常是大约15分钟),它将不可避免地失去联系。 cygwin X服务器图标仍显示在Windows任务栏中,因此我知道它仍在运行。到目前为止,我发现的唯一解决方法是注销然后重新进入ssh。超级烦人!请帮忙!
谢谢,
-Derek
答案 0 :(得分:2)
我通过使用:
解决了这个问题ssh -Y user@server
而不是
ssh -X user@server
显然,-Y和-X标志都做同样的事情(启用X11转发)。不同之处在于-X使用安全模式,-Y使用可信模式。如果您信任要连接的机器,则仅使用-Y。如果使用-X,则远程计算机将受限于显示器的功能。对我来说,这意味着我的显示器会在一段时间后超时。使用-Y代替,我的连接永远不会超时。
答案 1 :(得分:1)
答案 2 :(得分:1)
tl; dr 使用ssh -Y
自openssh 5.6起,当您与ssh -X
连接,请求不受信任的连接时,即使不受信任的X11转发设置失败并建立了可信连接,也会强制执行ForwardX11Timeout值(默认为20分钟)。 (我找不到任何关于此更改的公告,但请参阅[1]以了解相关的代码更改)。
此超时是您在使用ssh -X
时要求的“安全”策略的一部分,并阻止在超时到期后与X服务器建立新连接。
如果您将-v
选项添加到ssh,这在调查ssh问题时通常很有用,那么当您尝试启动新客户端时,应该会收到“在ForwardX11Timeout过期后拒绝X11连接”消息。
[1] http://www.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/clientloop.c.diff?r1=1.220;r2=1.221;f=h