ternssh

ternssh

Cloudflare SSH工作台

连接官网

应用介绍

< #SSH #远程运维 #Web终端 #SFTP #Cloudflare #自托管 #开源软件

ternssh 是一个跑在浏览器里的 SSH 工作台,整套服务部署在 Cloudflare Workers 边缘节点上,不用自建跳板机也不用开 VPN。界面是一块可拖拽的仪表盘,服务器列表、终端、文件管理、状态监控这些组件由你自己排布位置和大小,排好的布局会持久化保存,也能导出成 JSON 带走。

底层没有套用现成的 SSH 库,而是用 TypeScript 自己实现了握手、Shell、SFTP 和远程命令执行;每个 SSH 会话对应一个 Durable Object 实例,通过 WebSocket 保持长连接,服务器、凭据、布局等数据存在 D1 里。除了 Cloudflare Workers,也可以用官方镜像直接 Docker 起一个自托管实例。项目采用 GPL-3.0-or-later 协议。

软件功能



可拖拽仪表盘:服务器列表、终端、文件管理器、监控面板等组件按网格自由排布,大小与位置都会保存,布局支持 JSON 导入导出,换机器也能沿用同一套工作区。

Web 终端:基于 xterm.js 的完整 SSH 终端,同一台服务器可以开多个标签页,支持命令联想与历史补全,终端配色可自定义。

SFTP 文件管理:在浏览器里浏览远程目录、上传下载、拖拽上传,双击或右键即可直接编辑远程文件,编辑器是带语法高亮的 CodeMirror,单文件上限 2MB。

状态监控:CPU、内存、磁盘占用,网络上下行带宽曲线,以及按 CPU 排序的进程列表,都作为独立组件挂在仪表盘上实时刷新。

快捷命令:把常用命令存下来一键执行,可以只发给当前终端,也可以广播到全部会话;内置了 uptime、磁盘、内存、Docker 容器列表等预设。

AI 命令助手:用自然语言描述要做的事,由兼容 OpenAI 接口的模型生成对应的 Shell 命令,生成后可以先改再发送到终端,不会替你直接执行。

凭据库:密码与私钥统一存放在 D1 的凭据库中,添加新服务器时可以直接复用已保存的凭据,不必重复粘贴。

三种鉴权模式:未配置时首次访问强制走 onboarding 设置账号密码(PBKDF2 哈希存储),之后走 HTTP Basic Auth;部署在 Workers 上可改用 Cloudflare Access 做边缘 JWT 门禁。启用认证后所有路径都需要通过校验,响应还会带上 noindex 头。

两种部署方式:一键部署到 Cloudflare Workers,或者用官方预构建镜像 docker run 起来(默认 8787 端口),Docker Compose 与源码构建同样支持。

开源项目:项目源码托管在 GitHub,方便开发者查看实现方式、参与开发,或者根据自己的需求进行二次定制。

相关推荐