Skip to content

GETSSH v3.0.0-preview.2

Latest

Choose a tag to compare

@github-actions github-actions released this 29 Oct 17:55
· 2 commits to main since this release

中文 · English

GETSSH 3.0 预览版 2

3.0.0-preview.2 · 2026-10-29

这一版修了插件页面和 Windows 更新检查的问题,插件页面也不能再直接联网了;Electron 和几个依赖升到了带安全修复的版本。遇到问题请在 Issues 里告诉我们。Linux 用户请继续使用 2.0。

下载

系统 处理器 文件
macOS 13 及以上 Apple Silicon GETSSH-3.0.0-preview.2-arm64.dmg
macOS 13 及以上 Intel GETSSH-3.0.0-preview.2.dmg
Windows 10 及以上 x64 GETSSH-Setup-3.0.0-preview.2-x64.exe
Windows 10 及以上 ARM64 GETSSH-Setup-3.0.0-preview.2-arm64.exe

SHA256SUMS.txt 里是这四个文件的 SHA-256。

第一次打开:应用没有 Apple 开发者签名,Windows 安装包也没有签名。从预览版更新时,新下载的文件也要这样打开一次。

  • macOS 13、14:在"应用程序"里右键点 GETSSH,选"打开"。
  • macOS 15 及以上:系统提示无法验证开发者以后,打开"系统设置 → 隐私与安全性",在下方点"仍要打开"。
  • Windows:SmartScreen 提示时,点"更多信息",再点"仍要运行"。

从 3.0 预览版更新

  • 先退出 GETSSH。macOS 上把新的 GETSSH 拖进"应用程序",替换原来的;Windows 上运行新的安装程序。
  • 服务器、私钥、设置和插件都留在原处,不用导出再导入。
  • Windows 上的 3.0.0-preview 在后台收不到新版本(见下面的"修复"),请在"设置 → 关于"里手动检查,或者直接下载。
  • 没有 T2 芯片的 Intel Mac,没设主密码时,更新后第一次打开,macOS 可能会要求输入登录密码,允许 GETSSH 读取钥匙串里的设备密钥,选"始终允许"即可。

从 2.0 升级的,数据怎么导入、怎么加密存放,见 3.0 预览版的发布说明。

插件页面不能再直接联网

插件的界面页面(getssh-plugin://),每个响应现在都带一条 CSP:

  • 页面只能加载本插件目录里的文件,以及 data:、blob: 地址。
  • fetch、WebSocket 和外部的脚本、样式、图片、字体都会被拦下;页面也不能提交表单,不能嵌入其他网页。
  • 页面读不到其他插件的文件了。3.0.0-preview 里,页面能加载别的插件的脚本,也能读到别的插件目录里的文件。
  • 页面需要联网时,用 invokeBackend() 交给自己的后端。后端在清单里声明 net:fetch 以后,经 GETSSH 的网络网关访问公网。

插件开发者请注意:页面原来从 CDN 加载的库、样式、字体和图标,要放进插件目录。详见 SDK 指南。

修复

  • 安装版里,插件页面收不到主窗口发来的消息:invokeBackend() 一直等不到结果,onBackendMessage() 收不到推送,主题和语言变了页面也不知道。
  • Windows 上的后台更新检查收不到新版本。现在和 macOS 一样,启动时和之后每 12 小时,查一次 GitHub 的发布接口。
  • "设置 → 关于"里的检查失败时,会显示原因,不再说已经是最新版本。
  • 插件页面的文件读不到时,回复里不再带本机的完整路径。

安全更新

  • Electron 从 44.5.1 升到 44.10.0:
    • 拦下经被盗用的 eMudhra 中间证书签发的证书(GHSA-jr5w-w6x2-84p9)。之前的版本里,能截获您网络流量的人拿着这种证书,可以冒充 GETSSH 访问的 HTTPS 服务,比如 AI 服务和更新检查;
    • asar 包里记录的大小和文件实际长度对不上时,处理方式修正了;
    • Chromium 升到 152.0.7977.169,Node 升到 24.22.1。
  • getssh-keystore 用到的两个 Rust 库:crypto-bigint 升到 0.7.10(RUSTSEC-2026-0387),ctutils 升到 0.4.6(RUSTSEC-2026-0385)。两个公告说的都是本该耗时固定的运算,耗时会随数据变化。
  • socks 用到的 ip-address 升到 10.7.5(GHSA-rxp7-6hxx-x8q5:一个很长的 IPv6 地址字符串会让解析卡住)。

预览版的已知情况

  • 没有 Linux 版本。
  • macOS 应用没有 Apple 开发者签名,也没有经过公证;Windows 安装包没有签名。
  • 导入备份只能整体替换,不能合并。
  • 主机指纹、连接记录、最近连接、界面设置、插件自己存的数据和终端录像,不在加密数据库里。
  • 新版本要手动下载。可以在"设置 → 关于"里检查有没有新版本。
  • 插件页面还能经 WebRTC 连到外部的 STUN、TURN 服务器,CSP 管不到 WebRTC。
  • 插件的 renderer.js 不会运行,用它注册的侧栏按钮和面板不会出现。插件页面本身照常能打开。

安装包里附带 THIRD_PARTY_NOTICES.txt,列出了用到的第三方软件和许可。MiSans 字体的许可协议原文在官网。


中文 · English

GETSSH 3.0 Preview 2

3.0.0-preview.2 · 2026-10-29

This release fixes plugin pages and the Windows update check, and plugin pages can no longer go online directly. Electron and a few dependencies are updated for security fixes. Please report problems in Issues. On Linux, please keep using 2.0.

Downloads

System Processor File
macOS 13 or later Apple Silicon GETSSH-3.0.0-preview.2-arm64.dmg
macOS 13 or later Intel GETSSH-3.0.0-preview.2.dmg
Windows 10 or later x64 GETSSH-Setup-3.0.0-preview.2-x64.exe
Windows 10 or later ARM64 GETSSH-Setup-3.0.0-preview.2-arm64.exe

SHA256SUMS.txt lists the SHA-256 of these four files.

First launch: the app is not signed with an Apple Developer ID, and the Windows installer is not signed. When you update from the preview, open the newly downloaded file this way once too.

  • macOS 13 and 14: in Applications, right-click GETSSH and choose Open.
  • macOS 15 and later: after the message that the developer cannot be verified, open System Settings → Privacy & Security and click Open Anyway near the bottom.
  • Windows: when SmartScreen appears, click More info, then Run anyway.

Updating from the 3.0 preview

  • Quit GETSSH first. On macOS, drag the new GETSSH into Applications and replace the old one; on Windows, run the new installer.
  • Servers, private keys, settings and plugins stay where they are; there is nothing to export or import.
  • 3.0.0-preview on Windows does not hear about new versions in the background (see Fixes below): use the check in Settings → About, or download this release directly.
  • On Intel Macs without a T2 chip and without a master password, the first time the updated GETSSH opens, macOS may ask for your login password so that GETSSH can read its device key in the Keychain; choose Always Allow.

Upgrading from 2.0: how the data is imported and stored encrypted is in the 3.0 preview release notes.

Plugin pages no longer go online directly

Every response of getssh-plugin://, the scheme of plugin pages, now carries a CSP:

  • A page loads only files from its own plugin's folder, plus data: and blob: URLs.
  • fetch, WebSocket, and external scripts, styles, images and fonts are blocked; a page cannot submit forms or embed other web pages.
  • A page can no longer read other plugins' files. In 3.0.0-preview it could load another plugin's scripts and read files in another plugin's folder.
  • A page that needs the network asks its own backend with invokeBackend(). A backend that declares net:fetch in its manifest reaches public addresses through GETSSH's network gateway.

For plugin developers: libraries, styles, fonts and icons that a page loaded from a CDN now have to be in the plugin's folder. See the SDK guide.

Fixes

  • In the installed app, plugin pages received no messages from the main window: invokeBackend() never got its result, onBackendMessage() got no pushes, and pages missed theme and language changes.
  • On Windows, the background update check never found new versions. Like macOS, it now asks GitHub's releases API at launch and every 12 hours.
  • When the check in Settings → About fails, it shows why instead of saying the app is up to date.
  • When a plugin page's file cannot be read, the reply no longer contains the full local path.

Security updates

  • Electron 44.5.1 → 44.10.0:
    • certificates issued through the compromised eMudhra intermediates are blocked (GHSA-jr5w-w6x2-84p9). Before, someone able to intercept your network traffic and holding such a certificate could impersonate an HTTPS service GETSSH connects to, such as an AI service or the update check;
    • malformed asar archives whose size fields do not match the file length are handled correctly;
    • Chromium 152.0.7977.169 and Node 24.22.1.
  • Two Rust libraries used by getssh-keystore: crypto-bigint 0.7.10 (RUSTSEC-2026-0387) and ctutils 0.4.6 (RUSTSEC-2026-0385). Both advisories are about operations meant to take constant time whose timing varied with the data.
  • ip-address 10.7.5, used by socks (GHSA-rxp7-6hxx-x8q5: one long IPv6 address string could stall parsing).

Known limits of the preview

  • No Linux version.
  • The macOS app is not signed with an Apple Developer ID or notarized; the Windows installer is not signed.
  • Importing a backup replaces all data; merging is not available.
  • Host fingerprints, connection history, recent hosts, interface settings, plugins' own storage and terminal recordings are not in the encrypted databases.
  • New versions are downloaded by hand. Settings → About checks for one.
  • Plugin pages can still reach external STUN and TURN servers over WebRTC, which CSP does not cover.
  • A plugin's renderer.js does not run, so the sidebar actions and panels it registers do not appear. The plugin's page itself opens as before.

The installers include THIRD_PARTY_NOTICES.txt with the third-party software and licenses used. The MiSans font license is on the website.