2021年9月,OpenSSH项目组正式发布了版本。该版本并非仅是一次常规更新,而是针对长期存在的安全隐患做出的重要调整。其中最引人注目的变化,是默认禁用SSH-RSA公钥签名算法,这一举措直接影响了大量依赖旧协议的系统和设备。
OpenSSH团队指出,SSH-RSA(即使用SHA-1哈希的RSA签名)已不再具备足够的安全性。尽管RSA密钥本身强度尚可,但其依赖的SHA-1算法已被证明存在碰撞风险。例如,2017年Google与CWI Amsterdam合作成功演示了SHA-1碰撞攻击(“SHAttered”),这成为推动淘汰该算法的关键事件。因此,OpenSSH 8.8默认拒绝使用ssh-rsa进行主机认证或用户认证,除非用户手动启用。
许多老旧服务器、嵌入式设备(如网络摄像头、工业控制器)仍在使用基于SSH-RSA的密钥对,升级到OpenSSH 8.8后可能出现连接失败。例如,某企业运维人员在升级跳板机后发现无法登录一批2015年部署的IoT设备,日志显示“no mutual signature algorithm”。解决方法包括:在客户端临时启用ssh-rsa支持(通过-o PubkeyAcceptedAlgorithms=+ssh-rsa),或更推荐的方式——为设备生成新的ed25519密钥对并替换旧密钥。
OpenSSH 8.8的改动释放出明确信号:向更安全的现代加密算法迁移已是必然。ed25519不仅速度更快、密钥更短,而且基于椭圆曲线密码学,抗量子计算能力也更强。建议系统管理员尽快审计现有SSH配置,优先采用ed25519或ecdsa-sha2-nistp256等算法,并定期更新OpenSSH版本以获取最新安全补丁。