You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法向sshd_config添加KexAlgorithms,Cisco灾备系统无法连接SFTP服务器

Ubuntu 20.04 SFTP服务器适配Cisco设备旧加密算法配置方案

问题根源

Ubuntu 20.04自带的OpenSSH 8.2p1默认禁用了部分老旧加密算法和密钥交换(KEX)协议,直接替换Ciphers和KexAlgorithms配置会覆盖默认安全算法列表,导致sshd服务因缺少必要组件启动失败。

解决方案步骤

1. 确认支持的算法列表

先检查当前OpenSSH支持的加密算法和KEX协议,确保目标算法在支持范围内:

# 查看支持的加密套件
ssh -Q cipher
# 查看支持的密钥交换算法
ssh -Q kex

确认aes128-cbc、diffie-hellman-group-exchange-sha1、diffie-hellman-group1-sha1出现在输出结果中。

2. 修改sshd_config配置

不要直接替换默认算法列表,而是追加需要的旧算法,这样既保留安全的现代算法,又兼容Cisco设备:
编辑/etc/ssh/sshd_config,添加以下两行:

Ciphers +aes128-cbc
KexAlgorithms +diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1

+符号表示在默认算法集合后追加指定项,而非替换全部,这是避免服务启动失败的关键。

3. 验证配置并重启服务

修改后先检查配置语法是否正确,无报错再重启服务:

# 验证配置语法
sudo sshd -t
# 重启SSH服务
sudo systemctl restart sshd

4. 测试连接

  • 用Cisco设备尝试SFTP连接
  • 或在本地用客户端模拟强制使用指定KEX测试:
sftp -o KexAlgorithms=diffie-hellman-group1-sha1 你的Cisco用户名@服务器IP

5. 排查启动失败的额外手段

如果服务仍无法启动,查看系统日志定位具体错误:

# 查看SSH服务日志
journalctl -u sshd
# 或查看认证日志
cat /var/log/auth.log

常见错误包括算法名称拼写错误、系统缺少对应加密模块等,根据日志提示调整配置。

内容的提问来源于stack exchange,提问作者Chris Daniels

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 00:22:22