Linux有问必答:如何修复“X11 forwarding request failed on channel 0”错误

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转发请求绑定到外网卡地址上。


  1. $ sudo vi /etc/ssh/sshd_config


  1. X11Forwarding yes
  2. X11UseLocalhost no

重启SSH使设置生效:


  1. $ sudo /etc/init.d/ssh restart (Debian 6, Ubuntu or Linux Mint)
  2. $ sudo systemctl restart ssh.service (Debian 7, CentOS/RHEL 7, Fedora)
  3. $ 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”才对。)


  1. $ sudo vi /etc/ssh/sshd_config


  1. AddressFamily inet

再说一次,重启SSH服务来完成设置

原文发布时间:2014-10-15

本文来自云栖合作伙伴“linux中国”

时间: 2024-11-10 07:58:51

Linux有问必答:如何修复“X11 forwarding request failed on channel 0”错误的相关文章

Linux有问必答:如何修复“运行aclocal失败:没有该文件或目录”

Linux有问必答:如何修复"运行aclocal失败:没有该文件或目录" 问题:我试着在Linux上构建一个程序,该程序的开发版本是使用"autogen.sh"脚本进行的.当我运行它来创建配置脚本时,却发生了下面的错误: Can't exec "aclocal": No such file or directory at /usr/share/autoconf/Autom4te/FileUtils.pm line 326. autoreconf:

Linux有问必答:如何修复Chrome的"Your profile could not be opened correctly"

Linux有问必答:如何修复Chrome的"Your profile could not be opened correctly" 提问:当我在linux打开Google Chrome 浏览器时,我已经几次收到弹出窗口,提示我的配置文件没有被正确打开(Your profile could not be opened correctly.).每次我打开Chrome都要弹出来,我应该如何修复这个问题? 当你在你的Chrome上看见"Your profile could not b

linux下mysql提示"mysql deamon failed to start"错误的解决方法_Mysql

有台linux服务器,系统为centos系统. 网站突然连接不上数据库,于是朋友直接重启了一下服务器.进到cli模式下,执行 service myqsld start 发现还是提示"mysql deamon failed to start"错误信息. # /etc/init.d/mysqld start MySQL Daemon failed to start. Starting mysqld: [FAILED] 查看mysqld的log文件 #less /var/log/mysqld

Linux有问必答:如何修复“sshd error: could not load host key”

Linux有问必答:如何修复"sshd error: could not load host key" 问题:当我尝试SSH到一台远程服务器时,SSH客户端登陆失败并提示"Connection closed by X.X.X.X".在SSH服务器那端,我看到这样的错误消息:"sshd error: could not load host key.".这发生了什么问题,我怎样才能修复该错误? 该SSH连接错误的详细症状如下. SSH客户端方面:当你

Linux有问必答:如何修复“ImportError: No module named scapy.all”

Linux有问必答:如何修复"ImportError: No module named scapy.all" 问题:当我运行一个Python应用程序时,出现了这个提示消息"ImportError: No module named scapy.all".我怎样才能修复这个导入错误呢? Scapy是一个用Python写的灵活的数据包生成及嗅探程序.使用Scapy,你可以完成创建任意数据包并发送到网络上.从网络上或转储文件中读取数据包.转换数据包等工作.使用Scapy的通

Linux 有问必答:如何修复“fatal error: openssl/aes.h: No such file or directory

Linux 有问必答:如何修复"fatal error: openssl/aes.h: No such file or directory Question:我尝试在Linux编译一个程序,但是编译失败并报了一个错,"fatal error: openssl/aes.h: No such file or directory".我该怎样安装要求的头文件并在我的Linux上解决这个问题? fatal error: openssl/aes.h: No such file or di

Linux 有问必答:如何在Linux 中修复“fatal error: x264.h: No such file or directo

Linux 有问必答:如何在Linux 中修复"fatal error: x264.h: No such file or directo 提问: 我想在Linux中从源码编译视频编码程序.到那时,在编译时,我遇到了一个错误"fatal error: x264.h: No such file or directory",我该如何修复? 下面的编译错误错明你系统中没有x264开发库文件. fatal error: x264.h: No such file or directory

Linux 有问必答:如何在Linux中修复“fatal error: lame/lame.h: No such file or dir

Linux 有问必答:如何在Linux中修复"fatal error: lame/lame.h: No such file or dir 提问: 我尝试着在Linux中编译视频编码器,但是编译提示出错:"fatal error: lame/lame.h: No such file or directory", 我该如何修复这个错误? 下面的编译错误说明你的系统没有安装LAME库和它的开发文件. fatal error: lame/lame.h: No such file or

Linux 有问必答:如何修复“hda-duplex not supported in this QEMU binary”

Linux 有问必答:如何修复"hda-duplex not supported in this QEMU binary" 提问: 当我尝试在虚拟机中安装一个新的Linux时,虚拟机不能启动且报了下面这个错误:"unsupported configuration: hda-duplex not supported in this QEMU binary."("不支持的配置:hda-duplex在此QEMU文件中不支持.") 我该如何修复? 这个错