在这个颜值当道,屌丝闪边的时代,拼不过颜值拼内涵,只有知识丰富才能提升一个人的内在气质和修养,所谓人丑就要多学习,今天图老师给大家分享Linux下出现"X11 forwarding request failed on channel 0错误,希望可以对大家能有小小的帮助。
【 tulaoshi.com - Linux教程 】
当你在使用SSH的X11转发选项到远程连接的时候,登录时可能会遇到X11 forwarding request failed on channel 0 (X11 转发请求在通道0上失败)的错误,遇到这种错误是什么原因导致的呢?又该如何解决呢?下面图老师小编就教大家在Linux下遇到该问题该如何处理。
首先,我们假设你已经正确启用了SSH的X11转发。
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com)如果你在登录时遇到X11 forwarding request failed on channel 0 (X11 转发请求在通道0上失败),这里可能有不同的原因,解决的方法也不同。
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com)方案一
出于安全原因,OpenSSH服务默认将X11转发请求绑定到本地回环地址上,并且在DISPLAY环境变量中将主机名设置为localhost。在这样的设定下,一些 X11客户端不能正确处理X11转发,这会导致报告中的错误。要解决这个问题,在/etc/ssh/sshd配置文件中加入下面这几行,它可以将X11转发请求绑定到外网卡地址上。
$ sudo vi /etc/ssh/sshd_config
X11Forwarding yesX11UseLocalhost no
重启SSH使设置生效:
$ sudo /etc/init.d/ssh restart (Debian 6, Ubuntu or Linux Mint)$ sudo systemctl restart ssh.service (Debian 7, CentOS/RHEL 7, Fedora)$ sudo service sshd restart (CentOS/RHEL 6)
方案二
如果远程主机的SSH服务禁止了IPv6,那么X11转发失败的错误也有可能发生。要解决这个情况下的错误。打开/etc/ssh/sshd配置文件,取消对AddressFamily all (如果有这条的话)的注释。接着加入下面这行。这会强制SSH服务只使用IPv4而不是IPv6。(LCTT 译注:此处恐有误,AddressFamily 没有 all 这个参数,而 any 代表同时支持 IPv6和 IPv4,以此处的场景而言,应该是关闭IPv6支持,只支持 IPv4,所以此处应该是注释掉 AddressFamily any才对。)
$ sudo vi /etc/ssh/sshd_config
AddressFamily inet
上面就是Linux下修复X11 forwarding request failed on channel 0错误的方法介绍了,造成该错误的原因有很多种,不同情况不同处理,当前提是你正确启用了SSH的X11转发。
来源:http://www.tulaoshi.com/n/20160220/1638177.html
看过《Linux下出现"X11 forwarding request failed on channel 0错误》的人还看了以下文章 更多>>