tssh v0.1.26 已经发布,支持 trz/tsz 的 ssh 客户端
tssh v0.1.26 已经发布,支持 trz/tsz 的 ssh 客户端
此版本更新内容包括:
# 发布 v0.1.26 (Release v0.1.26)
本次发布为 SSH 多路复用 (Multiplexing) 和 UDP 会话管理带来了重要的新功能,同时包含了广泛的兼容性改进、新的配置选项以及大量的 Bug 修复。
## 核心新特性 (Major Features)
- **多路复用与 ControlMaster 支持:**
- 新增 `-M` 参数以启用多路复用主节点模式。
- 新增 `-O <ctl_cmd>` 参数以控制多路复用主进程 (#260)。
- 新增 `-S` (ControlPath) 支持,使 `tssh` 能够作为 Mosh 等工具的底层 SSH 客户端。
- 迁移至上游 `golang.org/x/crypto` 原生的 `ssh.NewControlClientConn`,提供更安全、原生的 OpenSSH ControlMaster 代理支持。
- **UDP 会话分离与恢复 (Attach & Detach):** 支持分离 (detach) 当前活跃的 UDP 会话,并支持跨设备连接 (attach) 到已存在的 UDP 会话。
- **主机密钥验证与管理:**
- 新增对 `VerifyHostKeyDNS` 的支持,用于基于 SSHFP 的主机密钥验证 (#261)。
- 新增 `--remove-host-key` 选项,可轻松清理 `known_hosts` 中的过期条目 (#267)。
- 新增对 `HashKnownHosts` SSH 配置的支持。
- **主机名规范化 (Host Canonicalization):** 实现了对规范主机名 (canonical host) 查找及 `CanonicalizeHostname` 的支持,并修复了 `CanonicalizeMaxDots` 的行为问题 (#248, #251)。
- **协议覆盖:** 新增 `--tcp` 和 `--quic` 选项,以便快速覆盖默认的 `UdpMode` 设置 (#263)。
## ✨ 功能增强 (Enhancements)
- **连接与稳定性:**
- 升级 `tsshd` 依赖,显著提升了重连能力和诊断功能。
- 新增可配置的 `UdpReconnectExitKey`(如 `Ctrl+D`),允许在 UDP 连接丢失时手动快捷退出 (#244)。
- 将默认的 `UdpAliveTimeout` (UDP 保活超时) 延长至 10 天,并优化了时间格式的显示。
- 优化了 UDP 预览的获取、渲染及终端重绘机制。
- 改进了端口转发关闭及会话附加 (attach) 时的错误处理机制。
- **配置与 DNS:**
- 在 `tssh.conf` 中新增 `CustomDnsServer` 配置(可通过 `--dns` 参数覆盖)。
- 支持加载符合 XDG 目录规范以及传统的 SSH 配置文件。
- 新增模糊查找(fuzzy selection) 主机的配置项及取消时的退出状态码 (#269)。
- **界面与体验 (UI & UX):**
- 在终端标题栏中直接显示连接的 RTT 延迟。
- 在 "tiny" 主题下,当主机名为空或与别名相同时自动隐藏主机信息 (#252)。
- 新增 `-n` (`NoStdin`) 参数支持。
- **兼容性:**
- 支持 `KexAlgorithms` 配置,统一了 SSH 算法的处理方式 (#240)。
- 支持在 UDP 模式下使用 `ProxyCommand`(自动隐含 TCP 代理模式)(#262)。
- 增加对更多远程操作系统和架构变体的支持 (#242, #243)。
- 对齐 OpenSSH 规范,优化了 Agent 密钥匹配和代理配置的逻辑 (#247)。
## Bug 修复 (Bug Fixes)
- **网络:** 在网络地址存在歧义时,正确遵循 `AddressFamily` 优先设置 (#256)。
- **文件路径:** 修复了解析身份认证文件时主目录 (`~/`) 的路径展开问题 (#259)。
- **终端问题:**
- 当标准输出被管道重定向时,跳过 Windows 虚拟终端初始化逻辑 (#264)。
- 过滤 `ESC[6n` 序列时,忽略终端的光标位置报告。
- **路由与状态:**
- 修复了非 UDP 目标位于 UDP 跳板机 (jump host) 后方时的退出通知异常。
- 确保当远程 Shell 结束时,客户端能够正确退出。
- 在连接丢失期间丢弃服务端输出,防止终端出现界面破坏或乱码。
- 将 `args.Destination` 与解析后的最终主机名同步,确保后续的配置处理阶段能正确应用 `Host` / `Match` 规则块 (#251)。
- **常规修复:**
- 确保通过临时文件进行二进制文件的原子化安装,防止更新时文件损坏 (#245)。
- 修复了重复的主机别名被错误解析的问题 (#249)。
- 修复了 macOS 下默认的 `ssh-sk-helper` 路径解析问题 (#241)。
- 将字符串判断中的 `strings.ToLower` 替换为 `strings.EqualFold`,实现更安全的忽略大小写比较。
## 底层与内部改进 (Build & Docs)
- 在 CI 中添加了自动化的预发布 (pre-release) 构建部署流程。
- 优化了 README 的排版、表格布局、官方网站 URL 以及安装指南。
- 将 Debian 打包元数据的 section 从 `utils` 调整为 `net`。
- 更新了项目包元数据并升级了底层依赖项。
## 新贡献者 (New Contributors)
- @p3ddd 在 [https://github.com/trzsz/trzsz-ssh/pull/241](https://github.com/trzsz/trzsz-ssh/pull/241) 提交了他们的首次贡献
- [@shoaly](https://gitee.com/shoaly) 在 [https://github.com/trzsz/trzsz-ssh/pull/244](https://github.com/trzsz/trzsz-ssh/pull/244) 提交了他们的首次贡献
- @mvanhorn 在 [https://github.com/trzsz/trzsz-ssh/pull/260](https://github.com/trzsz/trzsz-ssh/pull/260) 提交了他们的首次贡献
**完整的更新日志**: [https://gitee.com/trzsz/tssh/compare/v0.1.25...v0.1.26](https://gitee.com/trzsz/tssh/compare/v0.1.25...v0.1.26)
详情查看: [https://gitee.com/trzsz/tssh/releases/v0.1.26](https://gitee.com/trzsz/tssh/releases/v0.1.26)
---
原文链接:[点击查看](https://www.oschina.net/news/479481)
此版本更新内容包括:
# 发布 v0.1.26 (Release v0.1.26)
本次发布为 SSH 多路复用 (Multiplexing) 和 UDP 会话管理带来了重要的新功能,同时包含了广泛的兼容性改进、新的配置选项以及大量的 Bug 修复。
## 核心新特性 (Major Features)
- **多路复用与 ControlMaster 支持:**
- 新增 `-M` 参数以启用多路复用主节点模式。
- 新增 `-O <ctl_cmd>` 参数以控制多路复用主进程 (#260)。
- 新增 `-S` (ControlPath) 支持,使 `tssh` 能够作为 Mosh 等工具的底层 SSH 客户端。
- 迁移至上游 `golang.org/x/crypto` 原生的 `ssh.NewControlClientConn`,提供更安全、原生的 OpenSSH ControlMaster 代理支持。
- **UDP 会话分离与恢复 (Attach & Detach):** 支持分离 (detach) 当前活跃的 UDP 会话,并支持跨设备连接 (attach) 到已存在的 UDP 会话。
- **主机密钥验证与管理:**
- 新增对 `VerifyHostKeyDNS` 的支持,用于基于 SSHFP 的主机密钥验证 (#261)。
- 新增 `--remove-host-key` 选项,可轻松清理 `known_hosts` 中的过期条目 (#267)。
- 新增对 `HashKnownHosts` SSH 配置的支持。
- **主机名规范化 (Host Canonicalization):** 实现了对规范主机名 (canonical host) 查找及 `CanonicalizeHostname` 的支持,并修复了 `CanonicalizeMaxDots` 的行为问题 (#248, #251)。
- **协议覆盖:** 新增 `--tcp` 和 `--quic` 选项,以便快速覆盖默认的 `UdpMode` 设置 (#263)。
## ✨ 功能增强 (Enhancements)
- **连接与稳定性:**
- 升级 `tsshd` 依赖,显著提升了重连能力和诊断功能。
- 新增可配置的 `UdpReconnectExitKey`(如 `Ctrl+D`),允许在 UDP 连接丢失时手动快捷退出 (#244)。
- 将默认的 `UdpAliveTimeout` (UDP 保活超时) 延长至 10 天,并优化了时间格式的显示。
- 优化了 UDP 预览的获取、渲染及终端重绘机制。
- 改进了端口转发关闭及会话附加 (attach) 时的错误处理机制。
- **配置与 DNS:**
- 在 `tssh.conf` 中新增 `CustomDnsServer` 配置(可通过 `--dns` 参数覆盖)。
- 支持加载符合 XDG 目录规范以及传统的 SSH 配置文件。
- 新增模糊查找(fuzzy selection) 主机的配置项及取消时的退出状态码 (#269)。
- **界面与体验 (UI & UX):**
- 在终端标题栏中直接显示连接的 RTT 延迟。
- 在 "tiny" 主题下,当主机名为空或与别名相同时自动隐藏主机信息 (#252)。
- 新增 `-n` (`NoStdin`) 参数支持。
- **兼容性:**
- 支持 `KexAlgorithms` 配置,统一了 SSH 算法的处理方式 (#240)。
- 支持在 UDP 模式下使用 `ProxyCommand`(自动隐含 TCP 代理模式)(#262)。
- 增加对更多远程操作系统和架构变体的支持 (#242, #243)。
- 对齐 OpenSSH 规范,优化了 Agent 密钥匹配和代理配置的逻辑 (#247)。
## Bug 修复 (Bug Fixes)
- **网络:** 在网络地址存在歧义时,正确遵循 `AddressFamily` 优先设置 (#256)。
- **文件路径:** 修复了解析身份认证文件时主目录 (`~/`) 的路径展开问题 (#259)。
- **终端问题:**
- 当标准输出被管道重定向时,跳过 Windows 虚拟终端初始化逻辑 (#264)。
- 过滤 `ESC[6n` 序列时,忽略终端的光标位置报告。
- **路由与状态:**
- 修复了非 UDP 目标位于 UDP 跳板机 (jump host) 后方时的退出通知异常。
- 确保当远程 Shell 结束时,客户端能够正确退出。
- 在连接丢失期间丢弃服务端输出,防止终端出现界面破坏或乱码。
- 将 `args.Destination` 与解析后的最终主机名同步,确保后续的配置处理阶段能正确应用 `Host` / `Match` 规则块 (#251)。
- **常规修复:**
- 确保通过临时文件进行二进制文件的原子化安装,防止更新时文件损坏 (#245)。
- 修复了重复的主机别名被错误解析的问题 (#249)。
- 修复了 macOS 下默认的 `ssh-sk-helper` 路径解析问题 (#241)。
- 将字符串判断中的 `strings.ToLower` 替换为 `strings.EqualFold`,实现更安全的忽略大小写比较。
## 底层与内部改进 (Build & Docs)
- 在 CI 中添加了自动化的预发布 (pre-release) 构建部署流程。
- 优化了 README 的排版、表格布局、官方网站 URL 以及安装指南。
- 将 Debian 打包元数据的 section 从 `utils` 调整为 `net`。
- 更新了项目包元数据并升级了底层依赖项。
## 新贡献者 (New Contributors)
- @p3ddd 在 [https://github.com/trzsz/trzsz-ssh/pull/241](https://github.com/trzsz/trzsz-ssh/pull/241) 提交了他们的首次贡献
- [@shoaly](https://gitee.com/shoaly) 在 [https://github.com/trzsz/trzsz-ssh/pull/244](https://github.com/trzsz/trzsz-ssh/pull/244) 提交了他们的首次贡献
- @mvanhorn 在 [https://github.com/trzsz/trzsz-ssh/pull/260](https://github.com/trzsz/trzsz-ssh/pull/260) 提交了他们的首次贡献
**完整的更新日志**: [https://gitee.com/trzsz/tssh/compare/v0.1.25...v0.1.26](https://gitee.com/trzsz/tssh/compare/v0.1.25...v0.1.26)
详情查看: [https://gitee.com/trzsz/tssh/releases/v0.1.26](https://gitee.com/trzsz/tssh/releases/v0.1.26)
---
原文链接:[点击查看](https://www.oschina.net/news/479481)
评论
暂无评论。