在Google Compute Engine上从Debian转发X11

时间:2014-08-27 07:41:12

标签: google-compute-engine

我正在测试Google Compute Engine(运行Debian的实例),我在通过ssh使用X11转发时遇到问题。 要连接到我的实例,我使用

  
    

gcloud compute ssh --ssh-flag =" -X"实例名称

  

连接时,我得到以下对屏幕的响应

  
    

X11转发请求在通道0上失败

  

和X11转发不起作用。 这是一个正确配置shh的问题,还是与GCE相关的问题?

我希望有人可以帮助我让X11转发并运行

4 个答案:

答案 0 :(得分:8)

我相信您受Debian bug的影响,导致您无法使用X11转发功能。

AddressFamily inet中添加/etc/ssh/sshd_config并重新启动SSH服务器应该可以正常工作。

如果仍然无效,您可以尝试在同一文件中添加X11UseLocalhost no并重新启动SSH服务器。

答案 1 :(得分:2)

我必须做两件事。

安装xauth:

  

sudo apt-get install xauth

并通过在新行上添加以下内容来修改/ etc / ssh / sshd_config: X11UseLocalhost no

退回ssh守护程序

  

sudo /etc/init.d/ssh restart

重新连接-X标志,你应该好好去。

答案 2 :(得分:0)

如果要使用X转发,则应在两端启用它。在服务器端,您需要在〜/ .ssh / config中指定ForwardX11 yes。有关使X11转发正常工作的更多要求,请参阅This answer

答案 3 :(得分:0)

在macOS上,我必须下载xquartz(开源)软件。 我打开了一个xquartz终端,并使用glcoud suite命令ssh'd。

这就是我要解决的问题:

  • 下载了gcloud套件以能够使用gcloud进行SSH
  • 下载了xquartz开源软件。下载后重新启动计算机。
  • 更新了目标服务器上的/ etc / ssh / etc_config。我有以下设定,但不确定哪一个有效。更新后重新启动ssh守护程序/服务器。

ForwardAgent是

ForwardX11是

X11UseLocalhost否

#ForwardX11Trusted是的,这已被评论

  • 打开xquartz终端,并使用-X标志输入gcloud ssh命令 例如gcloud beta计算ssh --ssh-flag =“-X” --zone“ [zone]”“ [instance]” --project“ [project]”
  • 这使我能够在xquartz终端中连接到我的gcp实例。
  • 连接后,我尝试了要执行的命令,该命令起作用了。