博客
ZH
Arizu Studio

Fast Tunnel:自托管网页版SSH客户端,兼管FTP与MySQL

本文译自English。 阅读原文

Fast Tunnel: Self-Hosted Web Client for FTP, MySQL and SSH
本页内容 13 个小节
  1. Fast Tunnel 是什么?网页版SSH客户端一览
  2. 主要功能
  3. FTP 文件管理器
  4. MySQL 数据库客户端
  5. SSH 网页终端
  6. 会话管理
  7. 安全架构
  8. 系统要求
  9. 如何安装 Fast Tunnel
  10. 插件系统
  11. 谁适合使用 Fast Tunnel?
  12. 开源与社区
  13. 总结

Fast Tunnel 是一款免费、开源的 PHP 应用,把 FTP 文件管理、MySQL 数据库管理和 SSH 终端访问整合到同一个浏览器仪表盘里,也是一款自托管的网页版SSH客户端。如果你曾为了管理一台服务器,在 FileZilla、phpMyAdmin 和 PuTTY 之间来回切换,Fast Tunnel 正是为解决这个问题而生。

本文将介绍 Fast Tunnel 是什么、如何工作、适合谁使用,以及如何在几分钟内把它部署到自己的服务器上。

Fast Tunnel 是什么?网页版SSH客户端一览

Fast Tunnel 是一个用 PHP 编写的自托管 Web 应用,让你在浏览器里就能获得完整的服务器管理界面。部署到支持 PHP 的服务器之后,它可以取代以下工具:

  • FileZilla:Fast Tunnel 内置完整的 FTP 文件管理器,支持拖放上传和右键菜单
  • phpMyAdmin:Fast Tunnel 内置 MySQL 客户端,支持浏览数据表、执行 SQL 查询和编辑数据行
  • PuTTY 或任何 SSH 客户端:Fast Tunnel 内置由 xterm.js 驱动的完全交互式 SSH 终端

你不必安装和维护三个独立的桌面程序,只需通过一个网址就能访问所有功能。这在共用电脑、远程工作站,或者你无法或不想在本地安装软件的环境中尤其实用。

该项目是开源的,以 MIT 许可证发布在 GitHub 上,这意味着你可以免费使用、修改,并部署到任意数量的服务器上。

Fast Tunnel:自托管的 FTP、MySQL 和 SSH 网页客户端
Fast Tunnel:自托管的 FTP、MySQL 和 SSH 网页客户端

主要功能

FTP 文件管理器

Fast Tunnel 的 FTP 模块提供完整的远程文件浏览器。你可以浏览目录树,把文件拖进浏览器窗口上传,新建文件夹,重命名文件,删除条目,还能直接在内置代码编辑器中打开任何文本文件。

代码编辑器由 Monaco Editor 驱动,也就是 Visual Studio Code 内部使用的同一套编辑器引擎,因此无需离开浏览器,就能获得语法高亮、行号和熟悉的编辑体验。

MySQL 数据库客户端

MySQL 模块可以连接任何 MySQL 5.7+ 或 MariaDB 10.3+ 实例。连接后你可以:

  • 浏览数据库中的所有数据表
  • 查看和修改字段结构
  • 通过内嵌编辑器运行自定义 SQL 查询,结果以格式化表格显示
  • 直接在界面中编辑单独的数据行
  • 删除数据表或清空数据,操作前有确认提示

在需要更快、更方便访问的环境中,Fast Tunnel 是轻量实用的 phpMyAdmin 替代品。

SSH 网页终端

Fast Tunnel 的 SSH 终端是在浏览器中通过 xterm.js 渲染的完全交互式 PTY 会话。它借助 Server-Sent Events(SSE)实现实时输入输出,所以你可以运行耗时较长的命令、监控日志,并像在原生终端应用中一样使用交互式命令行程序。

终端采用自适应轮询机制,在空闲时降低 CPU 占用,因此可以放心地在后台一直开着。

会话管理

Fast Tunnel 可以保存多个服务器连接,并随时快速切换。会话以 AES-256-GCM 加密存储。你还可以把所有会话导出为 JSON 文件,用于备份或迁移到其他设备,导出时可选择设置密码保护。

安全架构

Fast Tunnel 把安全放在首位,应用实现了多层相互独立的保护:

  • AES-256-GCM 凭据加密:每个 FTP、MySQL 和 SSH 密码在存入 PHP 会话之前都会加密。凭据只在建立连接的瞬间解密,绝不会以明文写入磁盘。
  • CSRF 防护:每个会话都会生成一个加密级随机令牌,每次 API 调用都必须在请求头中携带它。没有有效令牌的请求会在执行任何业务逻辑之前被拒绝。
  • SQL 注入防护:MySQL 的标识符输入(表名、字段名和数据类型)在构造任何查询之前,都会通过严格的白名单校验。所有用户提供的值都使用参数化查询。
  • 登录限速:系统会按 IP 地址记录失败的登录尝试。多次失败会触发锁定期,以限制针对管理员登录的暴力破解。
  • 目录锁定:SSH 流式传输使用的临时会话文件存放在受保护的目录中,该目录带有 .htaccess 规则,拒绝一切直接的 HTTP 访问。

系统要求

Fast Tunnel 可在任何标准的 PHP Web 服务器环境上运行。最低要求如下:

  • PHP:7.4 或更高版本(推荐 PHP 8.x)
  • 数据库:MySQL 5.7+ 或 MariaDB 10.3+
  • PHP 扩展:pdo_mysql、openssl、curl
  • Web 服务器:Apache 或 Nginx,并且对应用根目录有写入权限

它兼容 XAMPP、LAMP、LEMP,以及大多数满足这些要求的共享主机环境。

Fast Tunnel:自托管的 FTP、MySQL 和 SSH 网页客户端
Fast Tunnel:自托管的 FTP、MySQL 和 SSH 网页客户端

如何安装 Fast Tunnel

Fast Tunnel 自带图形化 Web 安装向导,会自动完成全部设置,无需手动导入数据库,也不用编辑配置文件。

第 1 步:克隆仓库

git clone https://github.com/arizu-id/fast-tunnel.git
cd fast-tunnel
composer install

第 2 步:把文件夹放到 Web 服务器根目录

把 fast-tunnel 文件夹移动到服务器的 Web 根目录,例如 XAMPP 的 htdocs/,或 Linux 上 Apache 的 /var/www/html/。

第 3 步:运行安装向导

打开浏览器,访问:

http://your-server/fast-tunnel/install/

安装向导会带你完成三个步骤:

  1. 系统检查:验证 PHP 扩展和写入权限
  2. 数据库配置:输入你的 MySQL 凭据。安装程序会自动创建数据库和所有必需的数据表。
  3. 管理员账户:为 Fast Tunnel 仪表盘设置用户名和密码

完成向导后,登录并开始添加你的第一个服务器连接。

安全提示:安装完成后,请删除 install/ 目录或限制对它的访问。

插件系统

Fast Tunnel 采用模块化插件架构。插件是放在 plugins/ 目录下的独立文件夹,下次页面请求时会自动加载,无需重启,也不用更改配置。

核心安装包免费附带 Ping Monitor 插件。该插件会检查你已保存的服务器主机的可达性和响应延迟,让你在尝试连接之前,一眼就能确认远程服务器是否在线。

用于扩展功能的其他插件,例如多语言支持、视觉主题和代理连接,则作为单独的附加组件提供。

谁适合使用 Fast Tunnel?

Fast Tunnel 适合以下人群:

  • Web 开发者:自己管理 VPS 或云服务器,希望用一个工具同时完成 FTP、数据库和终端访问
  • 系统管理员:需要在不同电脑上随时访问服务器,又不想在每台机器上安装客户端软件
  • 托管服务商和代理机构:管理多个客户服务器,希望有统一的管理界面
  • 学生和学习者:想通过现代、易上手的网页界面了解服务器管理
  • 所有受够了切换的人:每做一件日常服务器任务,都要在 FileZilla、phpMyAdmin 和 PuTTY 之间来回切换

开源与社区

Fast Tunnel 以 MIT 许可证发布,这意味着你可以在个人和商业项目中自由使用,按需修改,并且不受限制地再分发。

源代码托管在 GitHub:github.com/arizu-id/fast-tunnel。欢迎贡献:如果你发现了 bug、想建议新功能或想提交插件,可以在仓库中提交 issue 或 pull request。

如果你觉得 Fast Tunnel 有用,在 GitHub 上给仓库点个星,可以帮助更多开发者发现这个项目。

总结

Fast Tunnel 解决了一个真实而常见的问题:为了管理一台服务器而维护多个桌面工具所带来的麻烦。它直接在你自己服务器上通过浏览器运行,为 FTP、MySQL 和 SSH 提供一致、安全且可随身携带的界面,没有外部依赖,也没有持续的订阅费用。

该项目免费、开源,开箱即可部署。在任何标准 PHP 服务器上,你都能在五分钟内把它跑起来。

立即开始:github.com/arizu-id/fast-tunnel

Fast Tunnel 由 Arizu Studio 开发和维护。

arief zufar

Prioritize relationships over profits for long-term mutual progress, always thinking ahead.

arief zufar 的全部文章

继续阅读

评论

评论由 Disqus 提供,仅在您展开时加载。