📈 GH Trending Explorer 🎲 Surprise me

← all repos

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)

2026-10-20 · 311 ★ 2026-10-23 · 350 ★
LanguageTypeScript
LicenseApache-2.0
Created2026-09-18 (1mo ago)
Last push2d ago
Watchers0
OwnerUser

GitHub topics

Links

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] 
不管你