如何通过 SSH 加速 X11 转发?

如何通过 SSH 加速 X11 转发?

我一直在使用 X11 转发来同时在两台机器上“无缝”工作,而且效果非常好。我遇到的一个问题是,对于某些应用程序来说,连接速度可能非常慢,我想加快速度。由于两台机器都在我的私人家庭网络上,我并不真正关心连接是否安全,因此我的第一个方法是禁用加密或切换到较弱的密码。

经过谷歌搜索后,我发现通过启用可信 X11 转发 (-Y) 和压缩 (-C) 可以获得明显更好的性能。然而,弱但快速的密码(arcfour 和blowfish)似乎已经在几个版本前从openssh 中删除了。

那么我的问题是?

  1. 是否可以启用/安装这些密码?
  2. 如果不是,当前可用的密码中哪一个是最快的?
  3. 是否有任何其他设置可以调整以加快连接速度?

编辑:远程电脑正在运行 Ubuntu 20.04,本地电脑正在运行 Pop!_OS 19.10(基于 Ubuntu 19.10)。两者都使用 GDM3 作为窗口管理器。

答案1

对于防止外部访问的内部网络,您可以启用与 Xserver 的简单 tcp 连接。很久以前,这曾经是默认设置,但出于安全考虑,现在不再是默认设置。如果使用 gdm3 作为显示管理器,您可以编辑文件/etc/gdm3/custom.conf并向安全节添加一行:

[security]
DisallowTCP=false

我不知道如何重新启动 gdm3,因此您可能必须重新启动才能生效。当您登录时,您应该会看到Xserverrunning with 选项-listen tcp。通常,这将显示在显示器 0 上,您会发现它正在侦听 tcp 端口 6000。确保您的防火墙启用此端口进行 tcp 连接。

要检查是否可以连接,您可以暂时允许所有主机未经授权进行连接:

xhost +

在客户端上,运行 X11 应用程序,并将显示设置为远程服务器,例如(假设服务器名为remoteDISPLAY=remote:0 xlogoxlogo -display remote:0。如果这有效,则在服务器上使用 反转该设置,xhost -并使用其他更具限制性的xhost选项,或从服务器的~/.Xauthority文件中复制 MIT magic cookie 密钥。为此,请在服务器上运行

xauth list

并选择具有服务器名称的行,例如

remote/unix:0  MIT-MAGIC-COOKIE-1  653dc9bd80294684b4944f2babf2fd0c

(可能会有更多线路,请确保您选择正确的线路)。在客户端上,将此密钥输入本地权限文件(使用名称:display,不带 ,/unix因为它是通过 tcp 传输的):

xauth add remote:0  MIT-MAGIC-COOKIE-1  2ac06b3b50200461378d0b8622f6d9f6

您现在应该能够再次运行应用程序,只需设置显示即可。

相关内容