SFTP 连接失败:DH GEX 组超出范围

SFTP 连接失败:DH GEX 组超出范围

你好,我正在尝试连接到 sftp 服务器,但是它一直失败并出现以下错误:DH GEX 组超出范围

这是详细日志……环顾四周,我发现问题与密钥大小有关

OpenSSH_7.4p1 Ubuntu-10, OpenSSL 1.0.2g  1 Mar 2016
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to **** [****] port 22.
debug1: Connection established.
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.4p1 Ubuntu-10
debug1: Remote protocol version 2.0, remote software version XFB.Gateway Windows
debug1: no match: XFB.Gateway Windows
debug1: Authenticating to ****:22 as 'User'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: algorithm: diffie-hellman-group-exchange-sha1
debug1: kex: host key algorithm: ssh-rsa
debug1: kex: server->client cipher: aes256-ctr MAC: hmac-sha1 compression: none
debug1: kex: client->server cipher: aes256-ctr MAC: hmac-sha1 compression: none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(2048<8192<8192) sent
debug1: got SSH2_MSG_KEX_DH_GEX_GROUP
ssh_dispatch_run_fatal: Connection to **** port 22: DH GEX group out of range
Couldn't read packet: Connection reset by peer

按照建议的解决方案这里不起作用:

-o KexAlgorithms=diffie-hellman-group-exchange-sha1 -o HostKeyAlgorithms=+ssh-dss

我也按照建议尝试了这个选项这里

密钥大小最小值=1024

但我得到了这个错误

command-line: line 0: Bad configuration option: kexdhmin

我知道该做什么才能修复它吗?

答案1

您正在使用新的 OpenSSH 连接到某个古老的 Windows 实现 ( XFB.Gateway Windows),该实现将最小 DH 组大小增加到 2048(这不是标准,但服务器没有理由不接受这一点)。这可能是一些商业软件,因此您应该联系您的供应商,以便他能修复它。

没有配置选项来选择此最小 DH 组大小,因此如果该服务器支持不同的密钥交换算法,您可能会幸运地使用它。这将从带有开关的调试日志中可见-vvv

相关内容