为Cloudreve添加离线下载节点
前言
在配置Cloudreve期间,发现VPS仅有的60G空间对于离线下载远远不够,因此决定将内网的一台机器作为Cloudreve的离线下载节点。
思路
在子节点上运行Cloudreve和Aria2,并通过frp将子节点服务暴露给公网,最后通过Cloudreve自带的功能进行子节点离线下载
Cloudreve 支持“从机离线下载”,您可以将离线下载任务分流至多台服务器处理,避免这些任务过多占用主机的资源。每个负责处理离线下载任务的节点需要运行一组 Cloudreve 和 Aria2 实例。您可以按照管理面板中的节点添加向导指引配置并添加新节点。
Requirements
准备步骤
内网机
安装Cloudreve
安装frp
安装aria2
apt install aria2
# 创建aria2配置文件
mkdir -p /etc/aria2
nano /etc/aria2/aria2.conf
在/etc/aria2/aria2.conf
中添加
# 启用 RPC 服务
enable-rpc=true
# RPC 监听端口
rpc-listen-port=6800
# RPC 授权令牌,可自行设定
rpc-secret=<your token>
创建aria2用户
useradd aria2
编辑/etc/systemd/system/aria2c.service
:
[Unit]
Description= Aria2c Service
After=network.target
[Service]
Type=simple
User=aria2
ExecStart=/usr/bin/aria2c --conf-path=/etc/aria2/aria2.conf
[Install]
WantedBy=multi-user.target
创建离线下载临时文件夹,并设置权限防止报错
mkdir /offline_download
# 将所有者改为aria2用户并设置权限
chown -R aria2 /offline_download
chmod -R 777 /offline_download
配置frp
/etc/frp/frpc.ini
[common]
server_addr = 公网机ip
server_port = 7000
[https2http]
type = https
custom_domains = 访问内网服务用的域名
plugin = https2http
plugin_local_addr = 127.0.0.1:5212
# HTTPS 证书相关的配置
plugin_crt_path = 域名证书crt文件路径
plugin_key_path = 域名证书key文件路径
plugin_host_header_rewrite = 127.0.0.1
plugin_header_X-From-Where = frp
注:这里我公网机Cloudreve使用了https,则暴露内网机服务时必须也使用https
公网机
安装frp、Cloudreve略
配置frp
在服务端frp配置中添加用于访问内网Cloudreve的HTTPS端口
/etc/frp/frps.ini
:
[common]
bind_port = 7000
vhost_https_port = 访问用端口
配置Cloudreve
现在可以通过https://[公网机ip]:端口
访问内网的Cloudreve了
打开公网机上的Cloudreve,点击管理面板
→离线下载节点
→接入新节点
,打开添加新节点界面,复制生成的从机密钥
在内网机上Cloudreve配置文件中添加:
[Slave]
Secret = 从机密钥
并修改Mode
字段的值为slave
,重启Cloudreve
在管理面板从机地址中填入https://[公网机ip]:端口
,并测试是否正常
点下一步
→启用
,在RPC授权令牌
中填入aria2c.conf
中的rpc-secret
RPC服务地址
填http://127.0.0.1:6800/
绝对路径填离线下载文件夹在内网机上的位置,如/offline_download
完成后测试aria2通信
,检查是否正常
点击下一步设置节点名字,自此,离线下载节点添加完成