X11-forwarding是什么?详解

最近在使用 MobaXterm 连接远程服务器的时候遇见了 X11-forwarding ,后面跟着一个亮眼的 红叉,如下图。强迫症看见它十分不爽,于是想办法干掉它。

MobaXterm 是一款适用于Windows的免费X服务器,带有选项卡式SSH终端,telnet,RDP,VNC,Xdmcp,Mosh和X11转发,便携式或安装程序的版本。

MobaXterm X11-forwarding

 

一、什么是X11-forwarding?

X11 中的 X 指的就是 X 协议;11 指的是采用 X 协议的第 11 个版本。

X11-forwarding 说的简单明白点就是:可以通过一个支持 X Server 的 SSH 客户端,例如:MobaXterm。 连接到远程 Linux 服务器,可以在本地通过 MobaXterm 运行操作一个远程 Linux 服务器上有图形界面或命令行的程序。

 

二、X协议原理

通常来说,Linux 本身是没有图形化界面的,所谓的图形化界面系统只不过中 Linux 下的应用程序。这一点和 Windows 不一样。

 

Windows 从 Windows 95 开始,图形界面就直接在系统内核中实现了,是操作系统不可或缺的一部分。Linux 的图形化界面,底层都是基于 X 协议。

 

X 协议由 X serverX client 组成:

X server 管理主机上与显示相关的硬件设置(如显卡、硬盘、鼠标等),它负责屏幕画面的绘制与显示,以及将输入设置(如键盘、鼠标)的动作告知 X client。

X client (即 X 应用程序) 则主要负责事件的处理(即程序的逻辑)。

 

举个例子:

如果用户点击了鼠标左键,因为鼠标归 X server 管理,于是 X server 就捕捉到了鼠标点击这个动作,然后它将这个动作告诉 X client,因为 X client 负责程序逻辑,于是 X client 就根据程序预先设定的逻辑(例如,画一个圆),告诉 X server 说:“请在鼠标点击的位置,画一个圆”。最后,X server 就响应 X client 的请求,在鼠标点击的位置,绘制并显示出一个圆。

 

三、使Linux支持X11-Forwarding

Linux操作系统:CentOS 7

 

1、安装X11-Forwarding的支持

$ sudo yum install  xorg-x11-xauth xorg-x11-fonts-* xorg-x11-font-utils xorg-x11-fonts-Type1 xclock

这一堆安装的,实际上是X Client。其中最后的 xclock 是用来测试X11Forwarding功能的。

 

2、修改ssh的配置文件:/etc/ssh/sshd_config

$ sudo vim /etc/ssh/sshd_config
X11Forwarding Yes

 

3、重启SSH服务,让ssh配置文件生效。

$ systemctl restart sshd

$ /etc/rc.d/init.d/sshd resta

 

4、测试 X11-forwarding 效果

运行以下命令测试效果,正常情况下会出现一个时钟界面。

$ xclock

xclock

 

四、支持 X11-forwarding 的 SSH 客户端

  • XShell
  • MobaXterm
    A+
发布日期:2021年03月28日 12:36:43  所属分类:Linux
最后更新时间:2021-03-28 12:36:43
标签:
付杰
  • ¥ 298.0元
  • 市场价:498.0元
  • ¥ 58元
  • 市场价:58元
  • ¥ 149.0元
  • 市场价:299.0元
  • ¥ 199.0元
  • 市场价:899.0元

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: