我在一些网站上读过,例如(1)默认的 ssh 密码不一定是最快的。
我在本地完全安全的网络上工作。假设安全性不是问题并且我只关心延迟和速度,用户可以调整哪些 ssh 参数来获得最快的 X 隧道?
答案1
如果您使用的是安全网络,为什么要加密?无需ssh即可直接X转发,并获得更好的速度和延迟。
参见示例这个(旧但仍然有效)教程;在这里你可以使用(不安全的)Xhost 机制:
一点理论
神奇的词是DISPLAY
。在 X 窗口系统中,显示器由(简化的)键盘、鼠标和屏幕组成。显示由服务器程序(称为 X 服务器)管理。服务器向连接到它的其他程序提供显示功能。
显示器用名称表示,例如:
DISPLAY=light.uni.verse:0
DISPLAY=localhost:4
DISPLAY=:0
显示内容由主机名(例如light.uni.verse
和localhost
)、冒号 ( :
) 和序列号(例如0
和4
)组成。显示的主机名是运行 X 服务器的计算机的名称。省略的主机名表示本地主机。0
如果一台计算机连接了多个显示器,序列号通常会有所不同。
如果您遇到过附加附加信息的显示指示.n
,那就是屏幕编号。一个显示器实际上可以有多个屏幕。通常只有一个屏幕,带有 number n
= 0
,所以这是默认值。
还存在其他形式DISPLAY
,但上述形式足以满足我们的目的。
告诉客户
客户端程序(例如,您的图形应用程序)通过检查DISPLAY
环境变量知道要连接到哪个显示器。
我们的计算机被外界称为light
,并且我们位于域 中uni.verse
。如果我们运行普通的 X 服务器,则显示内容为light.uni.verse:0
.我们希望xfig
在名为 的远程计算机上运行绘图程序dark.matt.er
,并在 上显示其输出light
。
假设您已经telnet
/ rsh
/ ssh
-ed 进入远程计算机,dark.matt.er
.
如果您已sh
在远程计算机上运行:
dark$ DISPLAY=light.uni.verse:0
dark$ export DISPLAY
dark$ xfig &
或者,或者:
dark$ DISPLAY=light.uni.verse:0 xfig &
告诉服务器
服务器不会接受来自任何地方的连接。您不希望每个人都能够在您的屏幕上显示窗口。或者阅读您输入的内容 - 请记住您的键盘是显示器的一部分!
似乎很少有人意识到允许访问您的显示器会带来安全风险。有权访问您的显示器的人可以读取和写入您的屏幕、读取您的击键以及读取您的鼠标操作。
大多数服务器都知道两种验证连接的方法:主机列表机制 ( xhost
) 和 magic cookie 机制 ( xauth
)。然后是ssh
安全 shell,它可以转发 X 连接。
请注意,可以使用参数将某些 X 服务器配置为不侦听常用的 TCP 端口-nolisten tcp
。值得注意的是,Debian GNU/Linux 的默认配置是禁用 X 服务器侦听 TCP 端口。如果您希望在 Debian 系统上使用远程 X,您应该通过更改 X 服务器的启动方式来重新启用它。看看/etc/X11/xinit/xserverrc
开始吧。
X主机
Xhost 允许基于主机名进行访问。服务器维护一个允许连接到它的主机列表。它还可以完全禁用主机检查。注意:这意味着没有进行任何检查,因此每个主机都可以连接!
您可以使用该程序控制服务器的主机列表xhost
。要在前面的示例中使用此机制,请执行以下操作:
light$ xhost +dark.matt.er
这允许来自主机 dark.matt.er 的所有连接。一旦您的 X 客户端建立连接并显示一个窗口,为了安全起见,请使用以下命令撤消更多连接的权限:
light$ xhost -dark.matt.er
您可以使用以下命令禁用主机检查:
light$ xhost +
这会禁用主机访问检查,从而允许每个人进行连接。切勿在不信任所有用户的网络(例如 Internet)上执行此操作。您可以使用以下命令重新启用主机检查:
light$ xhost -
xhost -
其本身并不会从访问列表中删除所有主机(这将毫无用处 - 您将无法从任何地方进行连接,甚至无法从本地主机进行连接)。
Xhost 是一种非常不安全的机制。它不区分远程主机上的不同用户。此外,主机名(实际上是地址)也可以被欺骗。如果您位于不受信任的网络上(例如已经通过拨号 PPP 访问 Internet),这会很糟糕。
答案2
根据 proto 1 的手册页,“blowfish”是最快的,对于 proto 2 有:
aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,
aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,
aes256-cbc,arcfour
我相信blowfish-cbc将是其中最快的,但实际上它需要测试。
显然你几乎不需要Compression
。
还有IPQoS
一个选项默认为交互式会话的“低延迟”和非交互式会话的“吞吐量”。