Filebrowser
#
下载 ¶
文档 ¶
githubfilebrowser/filebrowser: 📂 Web File Browser filebrowser-docs/cli at master · maxant/filebrowser-docs
配置 ¶
Filebrowser 部署 | gobai's notes
{
"port": 8080,
"baseURL": "/files",
"address": "0.0.0.0",
"log": "/var/lib/filebrowser/filebrowser.log",
"database": "/var/lib/filebrowser/filebrowser.db",
"name": "Myproject",
"root": "/var/lib/filebrowser/Myproject",
"plugin": "",
"allowCommands": true,
"commands": [
"ls",
"df"
],
"enableNewUser": false,
"shell": "/bin/zsh",
"locale": "zh-cn",
"branding": {
"name": "Myproject",
"files": "/var/lib/filebrowser/Myproject/branding",
"disableExternal": true
}
sudo ufw status # Ubuntu
sudo firewall-cmd --list-all # CentOS
放行 8080 端口
sudo ufw allow 8080/tcp
如果有端口已经占用
sudo lsof -i:8080
配置服务 ¶
/etc/systemd/system/filebrowser.service
[Unit]
Description=File Browser Service
After=network.target
[Service]
# 使用 filebrowser 用户运行
<div markdown="1" style="margin-top: -30px; font-size: 0.75em; opacity: 0.7;">
:material-circle-edit-outline: 约 302 个字 :fontawesome-solid-code: 49 行代码 :material-clock-time-two-outline: 预计阅读时间 2 分钟
</div>
User=filebrowser
Group=filebrowser
# File Browser 可执行文件和配置文件
ExecStart=/path/to/filebrowser -c /etc/filebrowser/.filebrowser.json
# 自动重启策略
Restart=on-failure
# 工作目录(你的文件根目录)
WorkingDirectory=/path/to/dict/
# 输出日志到 systemd journal
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable filebrowser
sudo systemctl restart filebrowser
sudo systemctl status filebrowser
访问 ¶
可以使用 url 进行访问,但需要配置服务
认证方式 ¶
认证方式有三种
filebrowser config set --auth.method=json
增加 reCAPTCHA
filebrowser config set --auth.method=json \
--recaptcha.key site-key \
--recaptcha.secret private-key \
--recaptcha.host https://recaptcha.net
Proxy Header(代理头认证)
描述:如果你通过 反向代理 登录用户,可以使用这个方式。代理在转发请求时,会在 HTTP header 里带上用户名,File Browser 读取 header 来识别用户。
filebrowser config set --auth.method=proxy --auth.header=X-My-Header
注意事项:
X-My-Header
是你的代理发送的 header 名称。- 非常信任代理:File Browser 会完全信任这个 header。
- 如果代理被绕过或篡改,攻击者可能直接伪造 header 获取 admin 权限。
No Authentication(无认证)
描述:完全关闭认证,适合 私有网络或家用网络,无需登录即可访问。
filebrowser config set --auth.method=noauth
Custom¶
免费 Favicon 图标生成器 - 在线制作 ICO、PNG、SVG 网站图标 | Favicon.im
假设 /abs/path/to/my/dir 是你的品牌目录:
文件夹结构
/my-brand/
custom.css
img/
logo.svg
icons/
favicon.ico
favicon.svg
filebrowser config set --branding.name "My Name" \
--branding.files "/abs/path/to/my/dir" \
--branding.disableExternal
Debug¶
sudo tail -f /var/lib/filebrowser/filebrowser.log