electerm v5.9.0

Published 2026-11-07

Major updates

  • Fix terminal rendering after WebGL context loss: fall back to the DOM renderer and keep sessions alive (#4702) by @forever765
  • Widget: Support password manager: an installed widget can supply passwords for SSH/ftp/VNC/Spice/Telnet/RDP bookmarks (KeePassXC ready), with a per-bookmark opt-in (#4705) by @mkneppe
  • UX: Support set icon for custom bookmark/bookmark group by @xinxingi
  • Widget: Widgets can offer bookmarks to import, with an import result report and a warning about embedded secrets (#4703) by @mkneppe
  • Support create a private key in the SSH bookmark form (#4554)
  • Editor: support markdown preview in the built-in editor (#4666)

New features/UI/Updates

  • SSH: support PKCS#8, PPK v3 and FIDO2 keys (ssh2 1.23.0), improve MFA support (#4554)
  • MCP: add a read-only command rules tool, and a rejected command now points at it (#4699) by @ifyh-W
  • Widget install from GitHub now falls back to mirror.electerm.org and jsDelivr when GitHub is unreachable; the in-app updater uses the same mirror
  • RDP: can check host reachability before connecting, show readable connect errors (#4685) by @mkneppe
  • SSH: a stale or blank private key path no longer blocks a password login (#4684) by @mkneppe
  • Use static default local bookmarks, so app start faster (#4672)
  • Bookmark import: bookmarks without a category are collected into a standalone category
  • VNC: show why a connection failed, with a hint for RealVNC's RA2 security type that no open-source client supports

Bug fixes

  • Security: fix MCP server DNS rebinding (GHSA-45rj-2wq9-r9mr)
  • Security: require approval for MCP-initiated file transfers (#4706)
  • Security: fix local clipboard leaking to the server
  • Security: keep the same-origin policy on for web session guests (#4707)
  • Security: run Windows PowerShell without a cmd.exe layer and without interpolating local paths into scripts (#4708) (#4710)
  • Fix wide-character mouse selection landing one cell off for adjacent CJK/full-width characters
  • Fix custom sync to servers with an internal CA: user-installed certificates from the login keychain were dropped
  • Fix session log failure breaking the session, and keep local paths and tokens out of imported or synced config (#4688)
  • Fix RDP email login (#4676)
  • Fix transfer websocket status control (electerm-web#31)
  • Fix drag/drop in the FTP server widget
  • Windows: do not mistake the WSL bash launcher for Git Bash (#4672) by @pcbeingused333

重大更新

  • 修复 WebGL 上下文丢失后终端渲染异常:自动回退到 DOM 渲染并保留会话 (#4702)(由 @forever765 提供)
  • 小组件:支持密码管理器,安装小组件后可为 SSH/ftp/VNC/Spice/Telnet/RDP 书签提供密码(已适配 KeePassXC),支持按书签单独开启 (#4705)(由 @mkneppe 提供)
  • 体验:支持为自定义书签/书签分组设置图标(由 @xinxingi 提供)
  • 小组件:可提供书签供导入,导入后显示结果,并对内含密钥的数据给出警告 (#4703)(由 @mkneppe 提供)
  • 支持在 SSH 书签表单中创建私钥 (#4554)
  • 编辑器:内置编辑器支持 Markdown 预览 (#4666)

新功能/界面/更新

  • SSH:支持 PKCS#8、PPK v3 和 FIDO2 密钥(ssh2 1.23.0),改进 MFA 支持 (#4554)
  • MCP:新增只读命令规则工具,命令被拒绝时会提示使用该工具 (#4699)(由 @ifyh-W 提供)
  • 从 GitHub 安装小组件时,GitHub 不可达会自动回退到 mirror.electerm.org 和 jsDelivr,应用内更新也改用同一镜像
  • RDP:支持连接前检查主机可达性,并显示可读的连接错误 (#4685)(由 @mkneppe 提供)
  • SSH:私钥路径为空或失效时不再阻塞密码登录 (#4684)(由 @mkneppe 提供)
  • 改用静态默认本地书签,应用启动更快 (#4672)
  • 书签导入:没有分类的书签会归入独立分类
  • VNC:连接失败时显示具体原因,并对 RealVNC 的 RA2 安全类型(开源客户端均不支持)给出提示

问题修复

  • 安全:修复 MCP 服务器 DNS rebinding 漏洞 (GHSA-45rj-2wq9-r9mr)
  • 安全:MCP 发起的文件传输需经用户审批 (#4706)
  • 安全:修复本地剪贴板泄漏到服务器的问题
  • 安全:Web 版会话访客保持同源策略开启 (#4707)
  • 安全:Windows PowerShell 命令不再经过 cmd.exe,也不再把本地路径拼进脚本 (#4708) (#4710)
  • 修复相邻的中文/全角字符导致鼠标选择偏移一格的问题
  • 修复自定义同步到使用内部 CA 的服务器时,用户安装到登录钥匙串的证书被忽略的问题
  • 修复会话日志失败导致会话中断,并避免导入/同步配置覆盖本机路径和令牌 (#4688)
  • 修复 RDP 邮箱账号登录问题 (#4676)
  • 修复传输 websocket 状态控制 (electerm-web#31)
  • 修复 FTP 服务器小组件的拖放
  • Windows:不再把 WSL 的 bash 启动器误判为 Git Bash (#4672)(由 @pcbeingused333 提供)

Downloads

Files for electerm v5.9.0

electerm-5.9.0-win-x64-installer.exe
Windows installer (recommended)
electerm-5.9.0-win-x64-portable.tar.gz
Portable archive
electerm-5.9.0-win-x64.tar.gz
Just extract and run
electerm-5.9.0-win-arm64-installer.exe
Windows installer (recommended)
electerm-5.9.0-win-arm64.tar.gz
Just extract and run
electerm-5.9.0-win7.tar.gz
Legacy Windows 7 compatible
electerm-5.9.0-win-x64-installer.exe
Windows installer (recommended)
electerm-5.9.0-win-x64-portable.tar.gz
Portable archive
electerm-5.9.0-win-x64.tar.gz
Just extract and run
electerm-5.9.0-win-arm64-installer.exe
Windows installer (recommended)
electerm-5.9.0-win-arm64.tar.gz
Just extract and run
electerm-5.9.0-win7.tar.gz
Legacy Windows 7 compatible
Other ways to install
npm
npm i -g electerm
electerm-5.9.0-mac-arm64.dmg
for Apple Silicon Macs (M1, M2, etc.)
electerm-5.9.0-mac-x64.dmg
for Intel Macs
electerm-5.9.0-mac10-x64.dmg
for macOS 10.x
Other ways to install
Homebrew
brew install --cask electerm
npm
npm i -g electerm
electerm-5.9.0-linux-amd64.deb
for Debian, Ubuntu...
electerm-5.9.0-linux-amd64.snap
for all linux that support snap
electerm-5.9.0-linux-x64.tar.gz
for all linux, just extract
electerm-5.9.0-linux-x86_64.AppImage
for all linux, just run it
electerm-5.9.0-linux-x86_64.rpm
for Red Hat, Fedora...
electerm-5.9.0-linux-amd64-legacy.deb
for Debian, Ubuntu... (glibc < 2.34, like UOS/Kylin/Ubuntu 18)
electerm-5.9.0-linux-x64-legacy.tar.gz
for all linux, just extract (glibc < 2.34)
electerm-5.9.0-linux-x86_64-legacy.AppImage
for all linux, just run it (glibc < 2.34)
electerm-5.9.0-linux-x86_64-legacy.rpm
for Red Hat, Fedora... (glibc < 2.34)
electerm-5.9.0-linux-aarch64.rpm
for Red Hat, Fedora...
electerm-5.9.0-linux-arm64.AppImage
for all linux, just run it
electerm-5.9.0-linux-arm64.deb
for Debian, Ubuntu...
electerm-5.9.0-linux-arm64.tar.gz
for all linux, just extract
electerm-5.9.0-linux-aarch64-legacy.rpm
for Red Hat, Fedora... (glibc < 2.34)
electerm-5.9.0-linux-arm64-legacy.AppImage
for all linux, just run it (glibc < 2.34)
electerm-5.9.0-linux-arm64-legacy.deb
for Debian, Ubuntu... (glibc < 2.34, like UOS/Kylin/Ubuntu 18)
electerm-5.9.0-linux-arm64-legacy.tar.gz
for all linux, just extract (glibc < 2.34)
electerm-5.9.0-linux-armv7l.AppImage
for all linux, just run it
electerm-5.9.0-linux-armv7l.deb
for Debian, Ubuntu...
electerm-5.9.0-linux-armv7l.rpm
for Red Hat, Fedora...
electerm-5.9.0-linux-armv7l.tar.gz
for all linux, just extract
electerm-5.9.0-linux-armv7l-legacy.AppImage
for all linux, just run it (glibc < 2.34)
electerm-5.9.0-linux-armv7l-legacy.deb
for Debian, Ubuntu... (glibc < 2.34, like UOS/Kylin/Ubuntu 18)
electerm-5.9.0-linux-armv7l-legacy.rpm
for Red Hat, Fedora... (glibc < 2.34)
electerm-5.9.0-linux-armv7l-legacy.tar.gz
for all linux, just extract (glibc < 2.34)
electerm-5.9.0-linux-loong64.deb
for new world UOS/Kylin...
electerm-5.9.0-linux-loong64.tar.gz
for new world loongarch, just extract
electerm-5.9.0-linux-loongarch64.deb
for new world Debian, Ubuntu... (loongarch64)
electerm-5.9.0-linux-loong64-legacy.deb
for old world UOS/Kylin...
electerm-5.9.0-linux-loong64-legacy.tar.gz
for old world loongarch, just extract
electerm-5.9.0-linux-loongarch64-legacy.deb
for old world Debian, Ubuntu... (loongarch64)
electerm-5.9.0-linux-riscv64.deb
for Debian, Ubuntu... (riscv64)
electerm-5.9.0-linux-riscv64.tar.gz
for all linux (riscv64), just extract
electerm-5.9.0-linux-ppc64el.deb
for Debian, Ubuntu... (ppc64le)
electerm-5.9.0-linux-ppc64le.tar.gz
for all linux (ppc64le), just extract
electerm-5.9.0-linux-amd64.deb
for Debian, Ubuntu...
electerm-5.9.0-linux-amd64.snap
for all linux that support snap
electerm-5.9.0-linux-x64.tar.gz
for all linux, just extract
electerm-5.9.0-linux-x86_64.AppImage
for all linux, just run it
electerm-5.9.0-linux-x86_64.rpm
for Red Hat, Fedora...
electerm-5.9.0-linux-amd64-legacy.deb
for Debian, Ubuntu... (glibc < 2.34, like UOS/Kylin/Ubuntu 18)
electerm-5.9.0-linux-x64-legacy.tar.gz
for all linux, just extract (glibc < 2.34)
electerm-5.9.0-linux-x86_64-legacy.AppImage
for all linux, just run it (glibc < 2.34)
electerm-5.9.0-linux-x86_64-legacy.rpm
for Red Hat, Fedora... (glibc < 2.34)
electerm-5.9.0-linux-aarch64.rpm
for Red Hat, Fedora...
electerm-5.9.0-linux-arm64.AppImage
for all linux, just run it
electerm-5.9.0-linux-arm64.deb
for Debian, Ubuntu...
electerm-5.9.0-linux-arm64.tar.gz
for all linux, just extract
electerm-5.9.0-linux-aarch64-legacy.rpm
for Red Hat, Fedora... (glibc < 2.34)
electerm-5.9.0-linux-arm64-legacy.AppImage
for all linux, just run it (glibc < 2.34)
electerm-5.9.0-linux-arm64-legacy.deb
for Debian, Ubuntu... (glibc < 2.34, like UOS/Kylin/Ubuntu 18)
electerm-5.9.0-linux-arm64-legacy.tar.gz
for all linux, just extract (glibc < 2.34)
electerm-5.9.0-linux-armv7l.AppImage
for all linux, just run it
electerm-5.9.0-linux-armv7l.deb
for Debian, Ubuntu...
electerm-5.9.0-linux-armv7l.rpm
for Red Hat, Fedora...
electerm-5.9.0-linux-armv7l.tar.gz
for all linux, just extract
electerm-5.9.0-linux-armv7l-legacy.AppImage
for all linux, just run it (glibc < 2.34)
electerm-5.9.0-linux-armv7l-legacy.deb
for Debian, Ubuntu... (glibc < 2.34, like UOS/Kylin/Ubuntu 18)
electerm-5.9.0-linux-armv7l-legacy.rpm
for Red Hat, Fedora... (glibc < 2.34)
electerm-5.9.0-linux-armv7l-legacy.tar.gz
for all linux, just extract (glibc < 2.34)
electerm-5.9.0-linux-loong64.deb
for new world UOS/Kylin...
electerm-5.9.0-linux-loong64.tar.gz
for new world loongarch, just extract
electerm-5.9.0-linux-loongarch64.deb
for new world Debian, Ubuntu... (loongarch64)
electerm-5.9.0-linux-loong64-legacy.deb
for old world UOS/Kylin...
electerm-5.9.0-linux-loong64-legacy.tar.gz
for old world loongarch, just extract
electerm-5.9.0-linux-loongarch64-legacy.deb
for old world Debian, Ubuntu... (loongarch64)
electerm-5.9.0-linux-riscv64.deb
for Debian, Ubuntu... (riscv64)
electerm-5.9.0-linux-riscv64.tar.gz
for all linux (riscv64), just extract
electerm-5.9.0-linux-ppc64el.deb
for Debian, Ubuntu... (ppc64le)
electerm-5.9.0-linux-ppc64le.tar.gz
for all linux (ppc64le), just extract
Other ways to install
Snap Store
sudo snap install electerm --classic
https://snapcraft.io/electerm
Flatpak
flatpak remote-add --if-not-exists flatpark https://dl.flatpark.org/flatpark.flatpakrepo
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak install flatpark org.electerm.Electerm
flatpark.org
APT repository
curl -fsSL https://repos.electerm.org/deb/public.key | sudo gpg --dearmor -o /usr/share/keyrings/electerm.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/electerm.gpg] https://repos.electerm.org/deb stable main" | sudo tee /etc/apt/sources.list.d/electerm.list
sudo apt update
sudo apt install -y electerm
https://repos.electerm.org/deb
RPM repository
sudo rpm --import https://repos.electerm.org/rpm/public.key
sudo tee /etc/yum.repos.d/electerm.repo <<'EOF'
[electerm]
name=Electerm Repository
baseurl=https://repos.electerm.org/rpm/
enabled=1
gpgcheck=0
repo_gpgcheck=1
gpgkey=https://repos.electerm.org/rpm/public.key
EOF
sudo dnf install -y electerm
https://repos.electerm.org/rpm
npm
npm i -g electerm
electerm-android-arm64-v8a-5.9.0.apk
for ARM64 devices (most modern phones)
electerm-android-armeabi-v7a-5.9.0.apk
for older ARM devices
electerm-android-universal-5.9.0.apk
universal (all architectures)
electerm-android-x86_64-5.9.0.apk
for x86_64 devices (emulators, some tablets)