提示 error: ssh: handshake failed: crypto/rsa: 512-bit keys are insecure (see https://go.dev/pkg/crypto/rsa#hdr-Minimum_key_size)
实际该设备未用到RSA密钥对方式,其他同型号同版本设备均正常,显示用加密方式为AES-128-ctr
当前版本是Versionv4.10.12,之前版本是4.10.4,回退到4.10.4后恢复
我也是刚升级了4.10.12,其中一台交换机碰到了同样的问题,暂时还没回退,因为4.10.10之前有漏洞,暂时那台交换机必须要用的时候用别的方法登录。
-
确认交换机 SSH 配置:检查交换机是否仅支持小于 2048 位的 RSA 密钥,v4.10.12 默认要求 RSA 密钥长度 ≥ 2048,部分老旧设备可能不兼容。
-
临时解决方案:编辑 JumpServer 的
config.yml文件,添加以下配置以允许使用短密钥:KOLO_RSA_KEY_SIZE: 1024 -
重启 JumpServer 相关服务:修改后重启
koko和luna服务以应用配置变更。 -
长期建议:联系交换机厂商确认是否支持更新 SSH 密钥长度,或考虑使用 ED25519 等现代密钥算法替代 RSA。
如需进一步支持,请联系 JumpServer 技术支持。
我通过修改交换机SSH配置,删除了原有的RSA密钥,重新生成了2048位的RSA密钥,解决了这个问题.
- 删除现有不安全的 RSA 密钥
Switch(config)# crypto key zeroize rsa
- 生成 2048 位 RSA 密钥(推荐安全长度)
Switch(config)# crypto key generate rsa general-keys modulus 2048
- 启用 SSH 版本 2
Switch(config)# ip ssh version 2