⚡ Rust · 单二进制 · 开箱即用

浏览器里的
安全 SSH 终端

WebSSHPro 用 Rust 的 WebSocket/PTY 桥接 xterm,把完整的 SSH 终端搬进浏览器。 前端在编译期内嵌进二进制,一个可执行文件即可运维,无需安装运行时。

🦀 Rust 后端 🔐 Argon2 + TOTP 认证 📦 单文件 约 9.4 MB 🖥 多标签 · 终端分屏
核心能力

为运维而生的浏览器终端

把 SSH 客户端的能力完整保留,并补齐多用户、审计与可观测性。

🖥

真正的 PTY 终端

后端在 PTY 中拉起系统 ssh 客户端,输入直达 stdin,输出流式回传 xterm.js,tmux、vim、全屏 TUI 均可正常运行。

🗂

多标签 · 终端分屏

每个 SSH 连接独占一个标签页,标签内还可左右 / 上下递归分屏并拖拽调整大小,多个终端同屏对照操作;服务端通过 MAX_SESSIONS 控制并发上限。

💾

连接配置保存

按用户保存 SSH 连接档案,支持密码(sshpass)与 OpenSSH 私钥两种认证,凭据加密存于服务端 redb。

📲

移动端适配

内置终端快捷按键栏,点击不收起软键盘,手机也能舒适敲命令;支持 zmodem 文件传输。

📊

审计与可观测

登录、会话、限流等事件以 JSON 行写入审计日志;/metrics 暴露 Prometheus 计数,/healthz 提供健康检查。

📦

单二进制交付

前端在编译期内嵌,运行时只有一个可执行文件加一份 redb 数据。Standalone、Docker、systemd 多种部署方式。

安全设计

默认即安全的访问控制

从登录、会话到出站 SSH,每一层都内置纵深防御。

Argon2 + TOTP 多因子Argon2id 口令哈希,可选 TOTP(含可扫码二维码),并支持可配置时长的可信设备免二次验证窗口。
会话绑定与 CSRF登录会话绑定客户端 IP 与 User-Agent,存于 HttpOnly SameSite Cookie,写操作要求每会话 X-CSRF-Token。
主机白名单全局 ALLOWED_HOSTS 始终先行校验,再叠加按用户授权,杜绝任意出站 SSH。
登录限流与锁定按 IP+用户名双维度限流,超过阈值在窗口期内锁定,防止暴力破解。
来源校验可选的 Origin 校验与登录源 IP/CIDR 白名单,反向代理下可信用 X-Forwarded-For。
会话超时与吊销支持绝对与空闲超时;改密、重置 MFA、禁用或删除用户会立即吊销其全部会话。

立即下载 WebSSHPro

WebSSHPro v1.3.0  已编译的发行版,含二进制、部署文件(systemd / Caddy / Nginx)、配置示例与中英文说明文档。

🐧 Linux x86_64 📦 约 3.5 MB 压缩包 🗓 构建 2026-06-19
下载方式一 · GitHub Releases
🌐 海外 / 开发者推荐,含历史版本与校验和
⬇ 前往 GitHub
下载方式二 · 百度网盘
📁 文件:websshpro 🔑 提取码:6uzg
⬇ 打开网盘
SHA-256 50fd219922167dbe2ac098bfd1b5ef5036186e3046f9515d8bc25e30e1c320e7
校验 sha256sum websshpro_1.3.0_20260619_linux_amd64.tar.gz
部署方式

三步即可上线

从本地自包含试用,到生产级 systemd / 容器部署,路径清晰。

1

解压并试用

# 解压发行包
tar -xzf websshpro_*.tar.gz
cd websshpro_*/

# 自包含模式启动
./websshpro --standalone
2

远程访问

# 绑定对外地址
WEBSSHPRO_BIND=0.0.0.0:18084 \
  ./websshpro --standalone

# 首启打印一次性 admin 密码
# 浏览器打开 http://IP:18084
3

生产部署

# systemd 服务文件已附带
deploy/systemd/websshpro.service
# 反向代理 + TLS 示例
deploy/caddy/Caddyfile
deploy/nginx/websshpro.conf

生产环境请配置显式用户、收紧 WEBSSHPRO_ALLOWED_HOSTS、置于 HTTPS 之后并开启 WEBSSHPRO_COOKIE_SECURE=true。完整说明见包内 README.md