File Browser一键安装脚本用nginx进行代理

声明:本文仅限用于学术交流,引用或转载本文时请注明出处!

File Browser作为一款远程文件管理器,只需要我们的客户端与服务的网络的畅通,我们就可以把自己闲置的云服务器作为自己的私人网盘,充分利用自己在阿里云购买的服务器。

File Browser 介绍

File Browser作为一款远端文件浏览器,把服务部署在服务器上,只要保持连接设备与服务器间网络链接通畅,随时随地就可以轻松的访问位于服务器上的存储位置。这一切完全基于网页端运行,无需专门的应用就可以轻松执行复杂、粘贴、移动、新建文件夹等文件管理的操作。此外,File Browser能够拥有上传和下载的功能,这意味你完全可以把部署该服务的设备作为个人网盘使用。

一件安装脚本

Filebrowser 一键安装脚本来源于此篇文章,提供下面几个下载链接:
浏览器下载
github下载

1
wegt https://raw.githubusercontent.com/233boy/filebrowser/master/filebrowser.sh

说明:支持Ubuntu 16+ / Debian 8+ / CentOS 7+ 系统,需要使用 root 用户执行脚本安装或卸载

安装或卸载

1
2
chmod +x filebrowser.sh
./filebrowser.sh

根据脚本提示进行选择1安装或者选择2卸载.
安装完成之后,需要在服务器上修改防火墙,打开File Browser服务所对应的服务端口。
通过在浏览器输入:ip地址:端口号进行访问。
注意:默认用户名和密码都是admin,配置好后需要立即修改。

修改配置

配置文件在:/etc/filebrowser/filebrowser.json

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
"port": 9184, // Filebrowser 监听的端口
"noAuth": false,
"baseURL": "", // 访问 Filebrowser 的路径
"address": "0.0.0.0",
"reCaptchaKey": "",
"reCaptchaSecret": "",
"database": "/etc/filebrowser/database.db", // Filebrowser 数据库的路径
"log": "stdout",
"plugin": "",
"scope": "/etc/filebrowser/", // Filebrowser 可管理的目录
"allowCommands": true,
"allowEdit": true,
"allowNew": true,
"commands": [
"git",
"svn"
]
}

通常我们只需要修改port(端口号)和可管理的目录。修改完配置之后我们需要重启服务使配置生效,命令参见下面服务管理命令。

Nginx 代理设置

ip http

1
2
3
4
5
6
7
8
9
10
11
server {
listen 80;
listen [::]:80;
server_name _; #没有域名
location / {
proxy_pass http://localhost:9184; #File Browser服务部署的地址
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

域名 http

1
2
3
4
5
6
7
8
9
10
11
12
13
server {
listen 80;
listen [::]:80;
server_name file.datablog.top; #填写服务的域名即可
location / {
proxy_pass http://localhost:9184; #File Browser服务部署的地址
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
# 如果需要全局使用https,请启用下面的配置
# return 301 https://file.datablog.top$request_uri;
}

域名 https

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name file.datablog.top; #使用的域名

ssl_certificate "file.pem"; # ssl的公钥地址
ssl_certificate_key "file.key"; # ssl的私钥地址
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 10m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;

location / {
proxy_pass http://localhost:9184; #代理的服务地址
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

服务管理命令

1
2
3
4
5
状态:systemctl status filebrowser
启动:systemctl start filebrowser
停止:systemctl stop filebrowser
重启:systemctl restart filebrowser
开机启动:systemctl enable filebrowser

重置密码

忘记密码后直接删除Filebrowser 的数据库,然后重启 Filebrowser 即可,然后用户名跟密码又是 admin。

参考文献

Filebrowser 一键安装脚本
Filebrowser官方文档

wechat
欢迎您扫一扫上面的微信公众号,订阅我的博客!

当前网速较慢或者你使用的浏览器不支持博客特定功能,请尝试刷新或换用Chrome、Firefox等现代浏览器