Azure Repos 停止支持 SSH-RSA 加密方法

Azure Repos 停止支持 SSH-RSA 加密方法

💡 原文英文,约1000词,阅读约需4分钟。
📝

内容提要

微软将停止支持SSH-RSA加密方法连接Azure Repos,用户需迁移到更安全的RSA-SHA2-256或RSA-SHA2-512加密方法。从2024年3月开始逐步限制使用SSH-RSA,2024年第二季度完全停止支持。用户需升级到支持新加密方法的Azure DevOps Server版本。

🔎

延伸解读

迁移时间线与影响范围

微软已公布SSH-RSA弃用的明确时间表:2024年3月起延迟操作,4月引入随机故障,第二季度末完全移除。Azure DevOps Service用户将直接受影响,而Azure DevOps Server用户在当前版本中仍可使用,但升级到2022.3后也将不再支持。用户应尽早规划迁移,避免服务中断。

迁移步骤与注意事项

迁移到RSA-SHA2-256或RSA-SHA2-512需生成新密钥、添加到SSH代理、调整本地SSH配置使新密钥优先,并上传公钥至Azure DevOps。关键是要确保新密钥在SSH-RSA密钥之前,以便优先使用更安全的算法。此过程可自愿进行,但建议在限制阶段前完成。

故障阶段的具体表现

2024年4月的故障阶段将分四个子阶段逐步增加失败频率,从每天30分钟到12小时,失败在随机时间发生。操作失败时会显示错误信息,提示用户SSH-RSA即将弃用。这可能导致间歇性连接问题,影响开发工作流,用户需留意命令行输出并及时迁移。

对Azure DevOps Server用户的建议

虽然Azure DevOps Server当前仍支持SSH-RSA,但未来版本将移除支持。使用2019 Update 1.2 Patch 4、2020 Update 1.2 Patch 7或2022版本的用户应尽快迁移到更安全的加密方法。若版本过旧不支持新加密,需先升级服务器。提前迁移可避免未来升级时的兼容性问题。

❓

Q&A

Azure Repos 为什么停止支持 SSH-RSA?

SSH-RSA 是一种弱加密方法,已被 OpenSSH 弃用,且默认不可用,除非显式启用。为了提高安全性,微软决定停止支持 SSH-RSA,并推荐使用更安全的 RSA-SHA2-256 或 RSA-SHA2-512。

Azure Repos 停止支持 SSH-RSA 的时间线是怎样的?

停止支持分四个阶段:第一阶段(用户自愿迁移)立即开始;第二阶段(限流/延迟)从 2024 年 3 月初开始;第三阶段(故障阶段)在 2024 年 4 月进行;第四阶段(完全移除)在 2024 年第二季度末。

如何将 SSH 密钥迁移到更安全的加密方法?

迁移步骤:1. 使用 ssh-keygen -t rsa-sha2-256 或 ssh-keygen -t rsa-sha2-512 生成新密钥;2. 使用 ssh-add <私钥路径> 将新密钥添加到 SSH 代理;3. 修改本地 SSH 配置,将新密钥列在 SSH-RSA 密钥之前;4. 将新密钥的公钥部分上传到 Azure DevOps。

Azure DevOps Server 用户现在还能使用 SSH-RSA 吗?

目前仍可使用,但未来版本的 Azure DevOps Server 将移除对 SSH-RSA 的支持。建议用户尽快迁移到更安全的加密方法,以避免升级后出现问题。

在故障阶段,使用 SSH-RSA 会遇到什么错误?

在故障阶段(2024 年 4 月),使用 SSH-RSA 的操作会随机失败,并显示错误信息:“You’re using ssh-rsa that is about to be deprecated and your request has been blocked intentionally. Any SSH session using SSH-RSA is subject to brown out (failure during random time periods). Please use rsa-sha2-256 or rsa-sha2-512 instead.”

如果 Azure DevOps Server 版本不支持新加密方法,该怎么办?

需要升级到支持新加密方法的 Azure DevOps Server 版本。支持新加密方法的版本包括:Azure DevOps Server 2019 Update 1.2 Patch 4 及更高版本、2020 Update 1.2 Patch 7 及更高版本、2022 以及 2022.3(预计 2024 年底发布)。

🏷️

标签

➡️

继续阅读