File Browser:在指定目录内提供 Web 文件管理界面的自托管工具(已归档)
File Browser 是一款“自己搭建云盘”类型的自托管软件:把它安装在服务器上并指向某个目录,就能通过网页界面上传、删除、预览和编辑文件。项目已于 2026-09-01 归档,最后一个计划内的版本已发布,之后不再有版本更新、缺陷修复或安全修复。来源同时列出两类不会再被修复的已知问题(命令执行/runner/hooks 与 会话 JWT 处理),并给出继续使用时的加固建议。许可证为 Apache License 2.0。
社区作者 · zZz
它解决什么问题
项目用途
File Browser 在指定目录内提供一个文件管理界面,支持上传、删除、预览和编辑文件。来源把它描述为 create-your-own-cloud(自建云盘)类软件:安装到服务器上、指向一个路径,即可通过一个美观的 Web 界面访问这些文件。
归档状态(重要)
- 项目于 2026-09-01 在 GitHub 上归档(archived)。
- 最后一个计划内的发布版本已经发布。
- 不会再有进一步发布、缺陷修复或安全修复。
- 背景文章:Goodbye File Browser, for Real This Time,2026 年 7 月。
安全说明
已发布的安全公告列在 security advisories 下,报告方式见 SECURITY.md。来源明确列出两类仍然存在且不会被修复的已知问题:
- 命令执行、runner 与 hooks:该功能在多个已发布的安全公告中都出现过漏洞,需要完全重写才能做到安全。它默认处于禁用状态;如果通过
--disable-exec=false重新启用它,应把“能够运行命令”视同等同于对宿主机的 shell 访问权限。背景见 issue #5199。
- 会话与 JWT 处理:会话是自包含的 JWT,而不是服务端标识符,因此无法被吊销。这意味着登出、修改密码和续期之后,此前签发的令牌在其过期之前仍然有效,并且同一个刷新令牌可以被重复兑换。应假设泄露的令牌在过期前一直有效。背景见 issue #5216。
继续运行时的加固建议(来源原文要点)
如果继续运行 File Browser,应把它视为无人维护的软件:
- 不要把它直接暴露在公网上;应放在反向代理之后,由反向代理终止 TLS 并自行完成身份认证。
- 保持命令运行器处于禁用状态。它默认关闭,就让它保持关闭。参见 issue #5199 与 docs/command-execution.md。
- 以非特权方式运行,放在容器中运行,并且只把打算对外提供的那个目录挂载进容器。
文档与开发
- 安装、配置与构建文档位于本仓库的 docs 目录。
- CONTRIBUTING.md 记录了如何构建和开发该项目,对任何 fork 该项目的人仍然有用。
图片
配图 1 为仓库 branding/banner.png 横幅图,用于项目品牌展示。
许可证
Apache License 2.0 © File Browser Contributors。
— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。
安装 / 开始使用
本次来源正文未给出可直接复制执行的安装命令;来源明确说明:安装、配置与构建文档位于本仓库的 docs 目录,构建与开发方式见 CONTRIBUTING.md,需以这两处文档为准。
来源中与部署相关的明确要求与顺序如下:
- 准备环境:不要将其直接暴露在公网;准备一个可终止 TLS 并自行进行身份认证的反向代理,把 File Browser 放在反向代理之后。
- 以非特权方式运行,并使用容器方式部署,只把打算对外提供的目录挂载进容器(来源强调仅挂载需要服务的目录)。
- 保持命令运行器(runner/hooks)处于禁用状态:该功能默认关闭,安装后保持默认关闭即可;来源提到如果设置
--disable-exec=false重新启用,则等同于把在宿主机执行命令(shell 访问)的能力开放出去。相关说明见 issue #5199 与 docs/command-execution.md。
- 首次运行与访问:来源描述的使用方式为——把它安装到服务器上,并将其指向某个路径,然后通过 Web 界面访问该目录中的文件,在界面中上传、删除、预览和编辑文件。
- 令牌与会话注意:会话为自包含 JWT,无法吊销;登出、修改密码、续期后旧令牌在过期前仍然有效,且同一刷新令牌可重复兑换,因此应假设泄露的令牌在过期前一直有效(issue #5216)。
常见问题与现状提醒:项目已于 2026-09-01 归档,最后一个计划版本已发布,不会再有版本、缺陷修复或安全修复;已发布的安全公告见仓库 security advisories,报告方式见 SECURITY.md。