Linux中如何修复"X11 forwarding request failed on channel 0"错误

问题: 当我尝试使用SSH的X11转发选项连接到远程主机时, 我在登录时遇到了一个 "X11 forwarding request failed on channel 0" (X11 转发请求在通道0上失败)的错误。 我为什么会遇到这个错误,并且该如何修复它?

首先,我们假设你已经正确启用了SSH的X11转发。

如果你在登录时遇到"X11 forwarding request failed on channel 0" (X11 转发请求在通道0上失败),这里可能有不同的原因,解决的方法也不同。

方案一

出于安全原因,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

再说一次,重启SSH服务来完成设置,谢谢阅读,希望能帮到大家,请继续关注脚本之家,我们会努力分享更多优秀的文章。

(0)

相关推荐

  • Linux 中RPM命令参数使用详解

    此工具包最先是由Red Hat公司推出的,后来被其他Linux开发商所借用。由于它为Linux使用者省去了很多时间,所以被广泛应用于在Linux下安装、删除软件。下面就给大家介绍一下它的具体使用方法。 ...

  • Linux中errno使用

    当linux中的C api函数发生异常时,一般会将errno变量(需include errno.h)赋一个整数值,不同的值表示不同的含义,可以通过查看该值推测出错的原因,在实际编程中用这一招解决了不少 ...

  • Linux中tomcat服务成功发布但局域网浏览器无法访问的解决方法

    我在搭建Linux中服务器环境时,碰见一个问题,这里和大家分享一下.一起去看看吧! 问题描述:我在Linux搭建了一个tomcat服务器,tomcat开启后,发现在局域网浏览器上无法访问该tomcat ...

  • Linux中eth0failed解决办法

    这里介绍在Linux中启动网卡失败的解决办法. 操作方法 01 在Linux中启动网卡,经常会遇到启动失败,或者是网卡没有被激活的情况,如下图所示: 02 错误提示信息如下: Shutting dow ...

  • Linux中 如何查看Ubuntu内存信息? 查看内存信息的命令

    分享一些在Linux中,查看内存信息的命令,不明觉厉,希望以后用的到 1. 查看内存插槽数,已使用插槽数,每条内存多大 sudo dmidecode|grep -P -A 5 "Memory/s+De ...

  • 在UNIX或Linux中TTY是什么意思

    在UNIX或Linux中TTY是什么意思,TTYN跟TTYP分别具体指的是什么意思,二者有什么差别? TTY 在Linux中,TTY也许是跟终端有关系的最为混乱的术语。TTY是TeleTYpe的一个老 ...

  • 在Linux中添加普通新用户

    在Linux中添加普通新用户 ,超级用户(也称为“root”)是一个具有修改系统中任何文件权力的特别账号。在日常工作中,最好不要使用超级用户账号进入系统,因为任何错误操作都可能导致巨大的损失。由于超级 ...

  • linux中rmdir命令使用详解(删除空目录)

    今天学习一下linux中命令: rmdir命令。rmdir是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的。(注意,rm - r dir命令可代替rmdir,但是有很大危险性。)删 ...

  • Linux中QQ软件的安装和配置

    很多朋友的机器上都安装了Linux,并且想在Linux环境中使用QQ。下面就将本人在Red Hat 9.0上配置QQ的成功经验共享出来。 选择QQ软件 腾迅公司并没有推出专门应用于Linux下的QQ软 ...