AriaNg + Caddy FileManager: 打造自己的离线下载网盘

2018年1月21日星期日

AriaNg + Caddy FileManager: 打造自己的离线下载网盘


转载自逗比集中营的两篇文章:AriaNgCaddy FileManager

简单介绍


Aria2 是一个命令行下运行、多协议、多来源下载工具,支持磁力链接、BT 种子、HTTP、FTP 等下载协议,当然因为它是命令行下载工具,所以我们想下载一个东西还需要去敲命令自然是不方便,于是就有一些人根据 Aria2 的 API 开发了一些在线管理面板,可以直接在网页上面添加管理任务。

本教程介绍的是 AriaNg,Github 项目:https://github.com/mayswind/AriaNg

Aria2 是一个后端 (服务端) 的程序,而 AriaNg 是一个前端 (HTML+JS 静态) 控制面板,不需要和 Aria2(后端 / 服务端)放在一个服务器或者设备中,你甚至可以只在服务器上面搭建 Aria2 后端,然后访问别人建好的 AriaNg 前端面板,也可以远程操作 Aria2 后端!

注意不要使用 HTTPS 协议,监听地址不支持的!




演示



  • 如果有需要,可以看哈这些机器
    截一下图:







教程环境


一个纯净的 Debian 7 x64 系统的服务器(VPS)
一个域名(可选)


准备工作



apt-get update -y && apt-get upgrade -y




后端安装


这里指的就是 Aria2


  • 换源



mv /etc/apt/sources.list /etc/apt/sources.list.bak && wget --no-check-certificate -P /etc/apt "https://softs.fun/Bash/sources/us.sources_stretch.list" && mv /etc/apt/us.sources_stretch.list /etc/apt/sources.list



  • 安装 Aria2 等软件



apt-get update && apt-get install aria2 curl unzip vim -y



  • 还原备份的 包管理器源,注意下次再安装软件的时候,请先运行 apt-get update ,否则包列表还是前面测试版源!



rm -rf /etc/apt/sources.list && mv /etc/apt/sources.list.bak /etc/apt/sources.list



  • 如果以上过程没有报错,然后通过以下命令来检查 Aria2 是否安装成功。



aria2c -v
# 正常情况下应该返回 一大串的版本信息,如果返回 找不到命令,那么说明安装失败。



配置后端



# 创建Aria2配置文件夹
mkdir /root/.aria2 && cd /root/.aria2
# 下载Aria2配置文件、DHT文件(BT有没有速度就靠这个)
wget --no-check-certificate https://softs.fun/Other/Aria2/aria2.conf
wget --no-check-certificate https://softs.fun/Other/Aria2/dht.dat
# 创建一个空的 Aria2 下载任务保存文件
echo '' > /root/.aria2/aria2.session



  • 默认我已经配置好了 Aria2 的配置文件,如果你想要修改,那么你可以输入 vi /root/.aria2/aria2.conf 或者 把这个文件下载到本地修改(有中文注释,# 井号是注释的,不懂的参数不要乱动,默认就好)。

  • 主要就是下面这两个选项:下载目录 (dir)、RPC 监听端口 (rpc-listen-port)、RPC 令牌 (rpc-secret),默认是下面这样:



下载目录:dir=/usr/local/caddy/www/aria2/Download
RPC监听端口:rpc-listen-port=6800 (默认#注释)
RPC令牌:rpc-secret=doub.io (如果不需要,则修改配置文件在参数前面加上 # 注释即可)
RPC令牌就相当于 Aria2(后端/服务端)远程API连接的授权密码,默认是开启的PRC令牌是 doub.io
正式使用建议更改 PRC监听端口和令牌 ,避免安全隐患!



后端使用方法



  • 启动 Aria2(后端 / 服务端)



nohup aria2c -c &>/root/.aria2/aria2.log &


如果使用 nohup 进程无法后台运行或者其他问题,可以使用 screen 来做这个事儿

  • 停止 Aria2(后端 / 服务端)



kill -9 $(ps -ef|grep "aria2c"|grep -v "grep"|awk '{print $2}')



  • 重启就是先停止后启动喽~

  • 查看 Aria2 输出的日志
    这个命令是监控 日志输出,如果想要退出监控,那么按 Ctrl+C 键即可。



tail -f /root/.aria2/aria2.log



前端安装


这里指的就是 AriaNg / FileManager


  • 这里安装 Caddy 一个很简单的 HTTP 服务器,如果你想要使用 Nginx/Apache 或者 LNMP 一键包之类的,使用方法自行谷歌。



wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh install http.filemanager



  • 如果上面这个脚本无法下载,尝试使用备用下载:



wget -N --no-check-certificate https://softs.fun/Bash/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh install http.filemanager



  • 安装 Caddy 成功后,继续新建一个虚拟主机文件夹,



mkdir /usr/local/caddy/www && mkdir /usr/local/caddy/www/aria2



  • 写入配置到 Caddy 配置文件,注意下面这五行要一起复制粘贴,不是一行一行复制!


注意:

  • 将域名替换为你自己的!



  1. 第四行basicauth / user233 doub.io和第七行user233:可以删除,不删除代表的意思是你的前端用户和密码分别是:user233doub.io,你也可以改成你想要的用户名密码。


echo "dl.liyuans.com {
root /usr/local/caddy/www/aria2
gzip
basicauth / user233 doub.io
filemanager /Download {
show /usr/local/caddy/www/aria2/Download
user233:
allow_new true
allow_edit true
allow_commands true
}
}" > /usr/local/caddy/Caddyfile



安装 AriaNg



# 新建Aria2下载文件夹 并进入文件夹 #
mkdir /usr/local/caddy/www/aria2/Download && cd /usr/local/caddy/www/aria2

# 下载并解压 AriaNg 文件,注意下面这一段是需要一起输入的,这段代码会自动检测并下载最新版本 #
Ver=$(curl -m 10 -s "https://github.com/mayswind/AriaNg/releases/latest" | perl -e 'while($_=<>){ /\/tag\/(.*)\">redirected/; print $1;}') && wget "https://github.com/mayswind/AriaNg/releases/download/${Ver}/aria-ng-${Ver}.zip" && unzip aria-ng-${Ver}.zip && rm -rf aria-ng-${Ver}.zip

# 赋予虚拟主机文件夹权限 #
chmod -R 755 /usr/local/caddy/www/aria2



  • 上面代码都执行完后,就可以启动 Caddy 了。



service caddy start



  • 如果 Caddy 运行正常,那么你打开你的域名即可看到 AriaNg 的页面了!



配置 AriaNg



  • 进入 AriaNg 的网页后,默认是英文语言,你可以 点击左侧选项菜单 —— AriaNg Setting ,然后在新页面中 Language 选项选择 简体中文,然后刷新页面后即可生效。

  • 如果你的 Aria2(后端 / 服务端) 还没有运行,请先根据 Aria2 使用说明 启动 Aria2(后端 / 服务端)。

  • 依然是 左侧选项菜单 —— AriaNg 设置 —— RPC —— 依次输入 / 选择下图各选项。



Aria2 RPC 主机:就是填写你 安装Aria2(后端/服务端)的服务器IP 或者 域名。
Aria2 RPC 端口:默认 6800 。
Aria2 RPC 协议:选择 http ,如果你配置了https,那么就选择https。
Aria2 RPC 密匙:输入你的RPC密匙(令牌),如果你安装后没有修改配置文件中的RPC密匙(令牌),那么你这里需要填写 doub.io 。
强烈建议打开 RPC密匙(令牌)来保证安全性。



  • 设置完毕后,刷新页面即可生效。

  • 正常情况下,右上角会提示 连接成功,点击左侧选项菜单 —— Aria2 状态,即可看到当前 AriaNg 前端面板连接到的 Aria2(后端 / 服务端) 的信息。







其他



  • Caddy 使用方法



启动:service caddy start
停止:service caddy stop
重启:service caddy restart
查看状态:service caddy status
Caddy 配置文件:/usr/local/caddy/Caddyfile
Caddy 虚拟主机:/usr/local/caddy/www
AriaNg 虚拟主机文件夹:/usr/local/caddy/www/aria2
AriaNg 下载文件夹:/usr/local/caddy/www/aria2/Download



注意事项



  • Caddy 启动失败,打开 http://ip 显示的是 It works !
    一些系统会自带 apache2 ,而 apache2 会占用 80 端口,导致 Caddy 无法绑定端口,所以只要关掉就好了。



netstat -lntp
# 我们可以通过这个命令查看是不是被其他软件占用了 80 端口。



不过 apache2 会默认开机自启动,如果不需要可以关闭自启动或者卸载 apache2 。

  • 停止 Apache2



service apache2 stop
# 尝试使用上面这个关闭,如果没效果或者提示什么错误无法关闭,那就用下面这个强行关闭进程。
kill -9 $(ps -ef|grep "apache2"|grep -v "grep"|awk '{print $2}')



  • 取消开机自启动



update-rc.d -f apache2 remove



  • 卸载 Apache2



apt-get remove --purge apache2



  • 关闭 Apache2 后,就可以尝试启动 Caddy ,并试试能不能打开网页。



service caddy stop
service caddy start

0 评论 :

发表评论