ssh 无法将压缩级别设置为超过 6

ssh 无法将压缩级别设置为超过 6

当我这样做时(我尝试了各种方法):

ssh -v -C -o CompressionLevel=9 user@ip
ssh -v -C -o 'CompressionLevel=9' user@ip
ssh -v -o 'Compression=yes' -o 'CompressionLevel=9' user@ip
ssh -v -o 'CompressionLevel=9' -o 'Compression=yes' user@ip
ssh -v -C -o 'CompressionLevel 9' user@ip
ssh -v -o 'Compression yes' -o 'CompressionLevel 9' user@ip
ssh -v -o 'CompressionLevel 9' -o 'Compression yes' user@ip

我启用了-v,因此我可以看到连接详细信息,并且无论我尝试什么,我都无法获得超过 6 的压缩级别,如详细输出中所示:

debug1: Enabling compression at level 6.

我不需要设置CompressionLevelssh_config我需要用cli来做。

我发现一些信息,该选项CompressionLevel仅适用于 ssh 版本 1,但不适用于 ssh 版本 2。

如何设置 ssh 版本 2 协议的最大压缩级别?

答案1

不能。正如手册页明确指出的那样,CompressionLevel这只是协议版本 1 的一个选项。

寻找可能的替代方案,但除非你真实的速度慢或连接费用昂贵,使用默认方法是一种更好的方法。

答案2

不能,ssh 协议 V2 不允许协商压缩级别。它固定在速度和压缩之间达到良好平衡的点。

答案3

好的,我想到了一个解决方案:
首先,我创建一个加密的、非压缩的 ssh v2 隧道:

ssh -fN -L frwrd_port:frwrd_ip:22 user@ip

然后,我使用 ssh v1 和一些快速密码,比如 arcfour 并在第一步中创建的隧道上启用最大压缩:

ssh -1 -c arcfour -C -o "CompressionLevel=9" -p frwrd_port user@frwrd_ip

相关内容