当前位置: 首页 > news >正文

[250412] OpenSSH 10.0 发布,移除DSA算法,sshd默认禁用有限域DH,并分离认证代码

目录

    • OpenSSH 10.0 正式发布:关键更新摘要
      • 主要变更亮点(潜在不兼容性)

OpenSSH 10.0 正式发布:关键更新摘要

OpenSSH 10.0 已于 2025 年 4 月 9 日发布,现在可以从官网列出的镜像站点获取最新版本。

OpenSSH 是一个广泛使用的 SSH 协议(版本 2.0)的完整实现,提供了安全的远程登录和文件传输功能(包括 SFTP 客户端和服务器)。

此次发布的 10.0 版本包含一些重要的变更,部分变更可能影响现有配置或使用习惯:

主要变更亮点(潜在不兼容性)

  • 移除 DSA 签名算法支持:为了提升安全性,此版本彻底移除了对较弱的 DSA (ssh-dss) 公钥算法的支持。依赖 DSA 密钥进行认证的连接将不再可用。建议用户检查并迁移到更安全的密钥类型(如 Ed25519 或 RSA)。

  • scpsftp 行为调整scpsftp 命令在内部调用 ssh 时,将明确禁用 ControlMaster(连接共享)的自动创建。这意味着即使全局配置了 ControlMaster 自动共享,这两个命令也不会主动创建新的共享会话,避免了部分用户遇到的意外行为。注意:它们仍然可以使用已经存在的共享连接。

  • 版本号重要提示:此版本号为 10.0,其协议标识为 “SSH-2.0-OpenSSH_10.0”。请注意,如果您的自动化脚本或工具使用了过于简单的模式(例如 “OpenSSH_1*”) 来匹配版本号,可能会因为无法正确识别 “10.0” 而出现兼容性问题。

  • sshd 服务端架构变更:为了增强安全性并将关键认证代码与会话代码隔离,用户认证阶段的处理逻辑已从 sshd-session 进程移至一个新的 sshd-auth 进程。此变更对普通用户应基本透明,但系统管理员可能会注意到部分日志消息的来源变为 sshd-auth。下游发行版维护者需要确保打包了这个新的 sshd-auth 二进制文件。

  • sshd 服务端默认禁用有限域 Diffie-Hellman (DH):出于性能和安全考虑(相比 ECDH 等现代算法效率较低),sshd 服务器默认配置中禁用了传统的基于有限域(modp)的 DH 密钥交换方法(即 diffie-hellman-group*diffie-hellman-group-exchange-*)。客户端默认仍然支持这些方法,但连接到升级后使用默认配置的服务器时,需要客户端也支持更新的密钥交换算法(如 ECDH)。管理员仍可通过修改 sshd_config 中的 KEXAlgorithms 选项来启用它们(但不推荐)。

  • sshd 移除 DH Group Exchange 的部分回退机制:当管理员配置了 /etc/ssh/moduli 文件用于 Diffie-Hellman Group Exchange (DH-GEX),但该文件中没有包含客户端请求范围内的 DH 组参数时,sshd 将不再自动回退到使用内置的默认 DH 组。这给予管理员更精确的控制权,但也意味着如果 moduli 文件配置不当,可能导致连接失败。(注意:如果 /etc/ssh/moduli 文件完全不存在,回退到内置组的行为仍然保留)。

来源:

https://www.openssh.com/txt/release-10.0

更多内容请查阅 : blog-250412

相关文章:

  • Koordinator-nodeMetricController
  • 消息中间件篇——RabbitMQ,Kafka
  • ubuntu 安装pyllama教程
  • vue项目调用netcore webapi接口提示:400 Bad Request的解决
  • 英伟达Llama-3.1-Nemotron-Ultra-253B-v1语言模型论文快读:FFN Fusion
  • DAY07:【pytorch】模型构建
  • 07-并发线程 面试题-mk
  • LeetCode 每日一题 2025/4/7-2025/4/13
  • 算法题(123):回文日期
  • Seleuinm之javascript语句执行
  • React Hooks: useRef,useCallback,useMemo用法详解
  • Python中内置的数据结构类型详析(内置数据容器)
  • 【Java集合】HashSet源码深度分析
  • [python]从whl文件名认识支持python版本和操作系统
  • 第二十二: go与k8s、docker相关编写dockerfile
  • 策略模式实现 Bean 注入时怎么知道具体注入的是哪个 Bean?
  • Java中的static都能用来修饰什么?
  • 【强化学习-蘑菇书-2】通过具体的例子来学习如何与 Gym 库进行交互——小车上山(MountainCar-v0)
  • idea开发工具多账号使用拉取代码报错问题
  • 探秘 HTML5 Geolocation:精准定位用户位置,拓展网页交互边界
  • 如何查询在建项目/镇江搜索优化技巧
  • 中山网站建设技术/百度网址提交入口
  • 开发论坛网站/站长工具樱花
  • 溧阳做网站哪家好/他达拉非
  • wordpress本站只对会员开放/如何提升网站搜索排名
  • 网络营销营销型网站建设/百度引流平台