Fantetic Blog

Fantetic Terminal:一个现代化的开源远程终端工作空间

最近我在做一个开源项目:Fantetic Terminal

它是一个可私有部署的远程终端工作空间,主要面向开发者、Homelab 用户、小团队和轻量级 DevOps 场景。

闲来无事,公司配发的token根本用不掉😀(怎么可能!),只能烧点token解解乏🤭,所以做了这个项目,参考的 nexus-terminal

挺喜欢这个项目的,但是作者很久没更新了,渐渐的改动比较大,故重新命名为 Fantetic Terminal

它是什么?

Fantetic Terminal 不是一个单纯的 Web SSH 工具。

它希望把日常服务器管理中常用的能力整合到一个统一界面里:

  • SSH / Telnet 终端
  • SFTP 文件管理
  • RDP / VNC 远程桌面
  • 多标签和分屏
  • 会话挂起与恢复
  • 用户、用户组和资产权限
  • 审计日志和终端录像
  • Web、PWA 和 Electron 桌面端

简单来说,它更像是一个:

面向 SSH、RDP、VNC 和 SFTP 的现代化远程工作空间。


为什么要做?

现在远程管理工具很多,但大多数工具都只解决一部分问题。

SSH 客户端体验好,但偏本地化。 Web SSH 部署方便,但功能通常比较单一。 Guacamole 协议能力强,但整体体验偏传统。 JumpServer 功能完整,但对个人和小团队来说偏重。 Nexterm 比较轻量,但桌面端、终端体验和扩展方向还有提升空间。

所以 Fantetic Terminal 想做的是:

一个轻量、现代、可私有部署,并且同时支持终端、文件和远程桌面的工作平台。


核心功能

终端

支持 SSH 和 Telnet,提供多标签、分屏、会话重连、会话挂起、命令历史、快捷命令等能力。

后续会继续增强终端体验,比如日志高亮、JSON 高亮、SQL 高亮,以及更接近 WindTerm 的终端视觉体验。

文件管理

内置 SFTP 文件管理器,支持上传、下载、拖拽上传、复制、移动、删除、权限修改、压缩解压和在线编辑。

日常改配置、传脚本、看日志,不需要频繁切换工具。

远程桌面

通过独立 Remote Gateway 支持 RDP 和 VNC,并集成 guacd。

远程桌面后续会重点优化剪贴板、文件传输、多窗口和更接近原生远程桌面的体验。

多用户和权限

支持多用户、用户组、角色、资产授权和管理中心。

适合从个人使用逐步扩展到小团队使用。

审计和录像

支持结构化审计日志,以及 SSH / Telnet 会话录像,方便后续排查问题、回放操作和追踪访问行为。

Web + Electron

除了 Web 端,也提供 Electron 桌面客户端,后续希望让它既能作为私有部署平台,也能作为日常桌面远程管理工具使用。


技术架构

项目采用 Monorepo 结构:

fantetic-terminal
├── packages
│   ├── backend
│   ├── contracts
│   ├── frontend
│   └── remote-gateway
├── electron-app
├── build-tools
├── docs
└── docker-compose.yml

主要技术栈包括:

  • TypeScript
  • Vue
  • Node.js
  • Electron
  • WebSocket
  • xterm.js
  • guacd
  • Docker

快速部署

使用 Docker Compose 可以快速启动:

mkdir ./fantetic-terminal
cd ./fantetic-terminal

wget https://raw.githubusercontent.com/spfantop/fantetic-terminal/refs/heads/main/docker-compose.yml -O docker-compose.yml
wget https://raw.githubusercontent.com/spfantop/fantetic-terminal/refs/heads/main/.env.example -O .env

docker compose up -d

启动后访问:

http://localhost:18111

项目定位

Fantetic Terminal 当前更适合:

  • 个人服务器管理
  • Homelab
  • 小团队远程访问
  • 轻量级 DevOps 工作台
  • Web SSH + SFTP + RDP/VNC 一体化场景

它目前还不是完整的企业级堡垒机替代品。

如果需要审批流程、不可篡改审计、高可用、多节点集群和强合规能力,JumpServer 这类成熟堡垒机会更合适。

Fantetic Terminal 更关注的是:

轻量、现代、易部署、体验好、可扩展。


后续计划

接下来会重点打磨几个方向:

  • 更好的终端高亮
  • 更接近 WindTerm 的终端体验
  • RDP 剪贴板增强
  • RDP 文件传输增强
  • 远程桌面多窗口
  • PostgreSQL 支持
  • 插件系统
  • 更完整的文档和演示环境

总结

Fantetic Terminal 想做的不是又一个普通 Web SSH。

它的目标是成为一个现代化的远程工作空间:

  • 可以管理 SSH
  • 可以管理 SFTP
  • 可以访问 RDP / VNC
  • 可以支持多用户和权限
  • 可以审计和录像
  • 可以 Web 使用,也可以桌面端使用

如果你正在寻找一个轻量、现代、可私有部署的远程终端和远程桌面管理工具,可以看看这个项目。

GitHub地址:https://github.com/spfantop/fantetic-terminal

如果觉得项目方向不错,欢迎点一个 Star 支持一下。

开源 Terminal SSH