File Browser 是一个单文件 Web 文件管理器,适合替代 FTP 做临时文件分发。
安装
curl -fsSL https://raw.githubusercontent.com/filebrowser/get/master/get.sh | bash
二进制会被安装到 /usr/local/bin/filebrowser。
准备目录与配置文件
mkdir -p /data/filebrowser && cd /data/filebrowser
写入配置 filebrowser.json:
cat > /data/filebrowser/filebrowser.json <<EOF
{
"address": "0.0.0.0",
"port": 8093,
"database": "/data/filebrowser/filebrowser.db",
"log": "/data/filebrowser/filebrowser.log",
"locale": "zh-cn",
"username": "admin",
"password": "admin@****",
"root": "/",
"scope": "/"
}
EOF
初始化数据库与管理员
filebrowser -d /data/filebrowser/filebrowser.db config init
filebrowser -d /data/filebrowser/filebrowser.db config set --address 0.0.0.0
filebrowser -d /data/filebrowser/filebrowser.db config set --port 7080
filebrowser -d /data/filebrowser/filebrowser.db config set --locale zh-cn
filebrowser -d /data/filebrowser/filebrowser.db config set --log /data/filebrowser/filebrowser.log
filebrowser -d /data/filebrowser/filebrowser.db users add admin admin@**** --perm.admin
命令行
config set --port与filebrowser.json中的port二选一即可,同时存在时以实际启动参数为准。
注册为 systemd 服务
cat > /etc/systemd/system/filebrowser.service <<EOF
[Unit]
Description=filebrowser
Documentation=https://filebrowser.org/
After=network.target
[Service]
ExecStart=/data/filebrowser/filebrowser -c /data/filebrowser/filebrowser.json
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable --now filebrowser
systemctl status filebrowser
关闭 SELinux 与防火墙
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
systemctl stop firewalld
直接关闭防火墙风险较高,生产环境建议只放行对应端口(如
8093),参考 firewalld 配置。