Ubuntu 服务器的无法使用WinSCP低版本连接登录

如果需要通过修改 Ubuntu 服务器的 SSH 配置 来解决客户端连接时的密钥算法不兼容问题(比如客户端无法支持服务器默认的现代算法),可以按以下步骤操作,允许服务器支持更多兼容旧客户端的算法:
步骤:修改服务器 SSH 配置
编辑 SSH 服务配置文件执行以下命令打开
sshd_config(SSH 服务的主配置文件):bash
sudo vi/etc/ssh/sshd_config添加兼容的密钥算法在文件末尾添加以下内容(允许旧客户端常用的
ssh-rsa算法,或其他需要兼容的算法):conf
# 允许旧客户端支持的 RSA 算法(根据需要添加) HostKeyAlgorithms +ssh-rsa PubkeyAcceptedAlgorithms +ssh-rsa- 解释:
+表示在现有算法列表基础上追加该算法,而非替换。 - 如果客户端提示其他算法不支持,可根据错误信息添加对应的算法(例如
ecdsa-sha2-nistp256等)。
- 解释:
保存并重启 SSH 服务
- 按
Ctrl+O保存,Ctrl+X退出编辑器。 - 重启 SSH 服务使配置生效:
bash
sudo systemctl restart sshd
- 按
验证配置
重启后,客户端再次尝试连接(例如 ssh 用户名@服务器IP),此时服务器会支持新增的兼容算法,通常能解决连接失败问题。
注意事项
- 允许
ssh-rsa等旧算法可能降低安全性(现代算法更安全),建议仅在临时兼容旧客户端时使用,长期应升级客户端以支持现代算法。 - 如果不清楚客户端支持的算法,可在客户端执行
ssh -Q key查看其支持的密钥算法,再在服务器配置中添加对应项。
这样通过修改服务器配置,即可兼容更多客户端的密钥算法需求。
