aozorae / EdgeSSH
git clone https://github.com/aozorae/EdgeSSH.git
基于 Cloudflare Workers 的轻量 WebSSH 工作台,支持主机管理、加密存储、SFTP、进程监控与地球可视化。A lightweight WebSSH workspace on Cloudflare Workers with host management, encrypted storage, SFTP, process monitoring and globe visualization.
+17
stars, 24h · #2,118
+~91
stars, 7 days · #2,361
+~390
stars, 30 days · #2,098
350
★ total · +35% this week
164
forks · 0 open issues
Star history (as recorded here)
LanguageTypeScript
LicenseApache-2.0
Created2026-09-18 (1mo ago)
Last push2d ago
Watchers0
OwnerUser
GitHub topics
Links
- GitHub: github.com/aozorae/EdgeSSH
- Homepage: https://edgessh-docs.pages.dev/
- Releases · Issues · Hacker News mentions
README excerpt
# EdgeSSH · 开源 WebSSH 工作台 浏览器里的 SSH 终端与 SFTP 文件管理,运行在你自己的 Cloudflare 上。 把主机管理、在线终端、文件传输、进程监控与远程 HTTP 服务预览,收进一个个人服务器管理工作台,无需额外维护 SSH 中转服务器。 An open-source, self-hosted WebSSH client on Cloudflare Workers — browser-based SSH terminal, SFTP file manager, and server monitoring. **Cloudflare-native · Self-hosted · Single-admin · Open source** 快速部署 · 功能特性 · 安全设计 · 本地开发 · 文档站 → 全部演示数据使用文档保留地址与虚构信息,不对应任何真实服务器。 **你的服务器 · 你的凭据 · 你的 Cloudflare · 你的 SSH 工作台** 快速导航 · 功能、部署与技术说明 - **了解产品**:为什么是 EdgeSSH · 功能特性 · 当前支持 - **开始使用**:快速部署 · 认证方式 · 完整部署指南 - **了解边界**:安全设计 · 信任边界 · 端口转发安全 - **参与开发**:本地开发 · 项目结构 · Contributing --- ## 为什么是 EdgeSSH? SSH 客户端不少,WebSSH 也算不上新鲜。 EdgeSSH 想解决的是另一件事: > **能不能不再维护一套 SSH 中转服务器,却依然拥有一个随时能从浏览器打开的个人 SSH 工作台?** EdgeSSH 把 WebSSH 的连接层、主机管理与工作台界面,一起部署在 Cloudflare 上。 浏览器只负责交互;应用逻辑与认证交给 Cloudflare Worker;每一个 SSH 会话都由独立的 Durable Object 承载,再通过 Cloudflare TCP Sockets 连到你的服务器。 ### ☁️ Cloudflare Native 跑在 Cloudflare Workers 上。 不用再单独维护一台 WebSSH 中转 VPS。 ### 🧰 SSH Workspace 不只是一个 Terminal。 主机、文件、进程、代码片段和远程服务,都在同一个工作台里。 ### 🔐 Self-hosted 部署在你自己的 Cloudflare 账户里。 数据库、Worker 和配置,全部由你掌控。 ### 👤 Single Admin 面向个人服务器管理场景。 没有多租户、没有成员系统,也没有复杂的权限模型。 **它不只是塞进浏览器里的一个 Terminal。** 它是部署在 Cloudflare 上的个人 SSH 工作台。 --- ## 功能特性 ### 一个地方,管好你所有的服务器 EdgeSSH 把散落各处的服务器连接信息,收进统一的主机库。 在这里你可以: - 保存、编辑服务器信息 - 搜索与整理主机 - 记录系统类型与服务器所在地 - 从 Dashboard 直接跳进 SSH - 用密码、上传的 SSH 私钥或密钥链中的已有密钥认证 - 在不同设备间访问同一份工作区 主机资料与连接凭据会先用 **AES-256-GCM** 加密,再写入 D1。 ### 密钥链 - 直接粘贴或上传未设口令的 OpenSSH Ed25519 / RSA / ECDSA 私钥;也可点击「生成」将 Ed25519 公私钥填入输入框,确认后保存 - 公钥可填写并校验,也可从私钥自动提取;支持复制公钥和按需下载私钥 - 私钥加密保存在 D1,列表不返回私钥;主机只保存密钥引用,连接时由 Worker 解密 - 同一密钥可用于多台主机,以及终端、文件管理和端口转发;仍被主机引用时不可删除 下载的私钥文件未设口令,请妥善保管。密钥链不会自动把公钥安装到目标服务器。 --- ### 🖥️ SSH 在线终端 · Terminal **打开浏览器,就是进了服务器。** 基于 xterm.js 的交互式终端,支持: - SSH 2.0 - PTY - 窗口尺寸同步 - Keepalive - 全屏终端 - UTF-8 / GB18030 / Big5 - 密码认证 - keyboard-interactive - OpenSSH 私钥认证 第一次连接某台服务器时,EdgeSSH 会先展示它的 **SHA-256 Host Key Fingerprint**。 只有你确认无误后,才会继续发送 SSH 凭据。 --- ### 📁 SFTP 文件管理 · File Manager **不必为了改一个文件,再多开一个工具。** EdgeSSH 内置了一个基于 SFTP 的文件管理器: - 浏览服务器目录 - 上传与下载 - 新建文件夹 - 重命名 - 删除文件 - 键盘导航 - 文件类型图标 - 从文件管理器直接跳回 SSH Terminal Terminal 与 File Manager 共用同一个 SSH 会话,切换之间不必重新连接。 --- ### 📊 服务器进程监控 · Server Monitor 在 SSH 会话里就能直接看到: **CPU · Load · Memory · Swap · Processes · OS · Architecture** 不需要跳出工作台,也不需要在服务器上额外装一个 Agent。 --- ### 🔌 HTTP 端口转发 · Port Forwarding 服务器上有些服务只监听: [code] 在 EdgeSSH 里,同样可以打开它。 EdgeSSH 能借助已有的 SSH 会话,访问服务器本地的 HTTP 服务,并在浏览器里给出一个临时预览。 适合这些场景: **开发服务器 · 本地 Dashboard · 管理面板 · 调试接口** 如果要打开的是一个不太信任的网页,可以改用独立的 Preview Worker,把预览页面和 EdgeSSH 管理界面隔离开来。 > Port Forwarding 不是一个通用反向代理。WebSocket、HTTPS 上游以及部分复杂 Web 应用,目前还有一些限制。 查看端口转发与安全说明 → --- ### 📝 命令片段库 · Code Snippets 把常用命令存下来: [code] 需要的时候: **搜索 → 填入 Terminal → 检查一遍 → 执行** 代码片段通过 D1 同步,而不是只存在某一个浏览器里。 --- ### 🌍 服务器,也可以从地球上看 EdgeSSH 会根据服务器的公网 IP,估算出大致地理位置,并画在 Dashboard 的地球上。 点一下主机,就能从地图直接跳进对应的服务器。 地球组件用的是轻量的 Canvas 球面投影,没有引入 Three.js 这类较重的 3D Runtime。 > 地理位置仅用于可视化展示,不代表服务器的实时在线状态。 --- ## 一套工作台,多种服务器管理方式 [code] 不管你