Document
Cradear's blog
 
Contact
首页
归档
标签
关于
友链

Powered by Crazydear | Theme: Fog
载入天数...
载入时分秒...
04/10/2020


2020-08-12
6 min read

CCAA-打造离线下载服务器

实验环境

操作系统: Ubuntu 20.04 64位

软件:

Nginx | Aria2 | AriaNg | File browser

安装过程

先说最简单的方法,就是利用大佬已经做好的脚本,一键执行就行,大佬的项目在此链接,但是也并没有对所有的系统进行适配,有些系统环境还是不能部署成功。

既然是学习,就不如自己一步步地来部署CCAA这个项目,一来可以熟悉Linux命令,二来学习一些错误的处理。

本教程依然是基于大佬的项目,我只是把脚本自动执行的内容一步步分解出来。

1.安装前的准备

创建临时目录

mkdir ./ccaa_temp

创建用户和用户组

groupadd ccaa
useradd -M -g ccaa ccaa -s /sbin/nologin

2.下载软件

进入临时目录

cd ./ccaa_tmp

下载本教程软件

wget https://github.com/q3aql/aria2-static-builds/releases/download/v1.35.0/aria2-1.35.0-linux-gnu-64bit-build1.deb
wget https://github.com/filebrowser/filebrowser/releases/download/v2.6.2/linux-arm64-filebrowser.tar.gz
wget https://github.com/helloxz/ccaa/archive/master.zip

可以根据自己的情况选择适合自己的安装包,当然也可以自己下载源码编译安装

Aria2 Filebrowser
https://github.com/q3aql/aria2-static-builds/releases https://github.com/filebrowser/filebrowser/releases

3.安装软件

3.1 安装aria2

dpkg -i aria2-1.35.0-linux-gnu-64bit-build1.deb

出现下面的错误是因为下载的版本与系统有关,目前CPU是ARM64,然而我们下载的是AMD64位的安装包,所以选择适合我们的安装包 wget https://github.com/q3aql/aria2-static-builds/releases/download/v1.35.0/aria2-1.35.0-linux-gnu-arm-rbpi-build1.deb ,然后再运行 dpkg -i aria2-1.35.0-linux-gnu-arm-rbpi-build1.deb,安装成功。

3.2 安装Filebrowser

tar -zxvf linux-arm64-filebrowser.tar.gz	# 解压
mv filebrowser /usr/sbin					# 移动位置

3.3 安装Nginx

apt-get install -y nginx
systemctl enable nginx		# 开机启动

3.4 安装AriaNG

unzip master.zip	# 解压
mv ccaa-master/ccaa_dir/AriaNg/* /var/www/html/

4. 配置软件

将Aria2和Filebrowser配置文件移到/etc/ccaa

 mkdir /etc/ccaa
 mv ccaa-master/ccaa_dir/aria2.* /etc/ccaa/
 mv ccaa-master/ccaa_dir/config.json /etc/ccaa/
 touch /etc/ccaa/filebrowser.db

手动配置

osip=$(curl -4s https://api.ip.sb/ip)
mkdir /var/www/data		# 下载目录
sed -i "s%dir=%dir=/var/www/data%g" /etc/ccaa/aria2.conf
sed -i "s/rpc-secret=/rpc-secret=123456/g" /etc/ccaa/aria2.conf
sed -i "s%ccaaDown%/var/www/data%g" /etc/ccaa/config.json	#替换filebrowser读取路径
sed -i "s/server_ip/${osip}/g" /var/www/html/index.html	#替换AriaNg服务器链接

5.启动服务

nohup sudo -u ccaa aria2c --conf-path=/etc/ccaa/aria2.conf > /var/log/aria2.log 2>&1 &	#启动Aria2
nohup sudo -u ccaa filebrowser -c /etc/ccaa/config.json > /var/log/fbrun.log 2>&1 &		#运行filebrowser
service nginx start

重置权限

chown -R ccaa:ccaa /etc/ccaa/	
chown -R ccaa:ccaa /var/www/data

到这里,基本配置已经完成,可以直接访问IP或者域名使用

6. 进阶教程

cat <<EOF >/usr/sbin/ccaa
#!/bin/bash
#####		CCAA管理脚本			#####
#####		Author:xiaoz.me			#####
#####		Update:2020-02-27		#####

#导入环境变量
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/bin:/sbin
export PATH

aria2pid=\$(pgrep 'aria2c')
filebrowser_pid=\$(pgrep 'filebrowser')

case \$1 in
	'start')
		nohup sudo -u ccaa aria2c --conf-path=/etc/ccaa/aria2.conf > /var/log/aria2.log 2>&1 &
		nohup sudo -u ccaa filebrowser -c /etc/ccaa/config.json > /var/log/fbrun.log 2>&1 &
		exit
	;;
	'stop')
		kill -9 \${aria2pid}
		kill -9 \${filebrowser_pid}
	;;
	'restart')
		kill -9 \${aria2pid}
		kill -9 \${filebrowser_pid}
		nohup sudo -u ccaa aria2c --conf-path=/etc/ccaa/aria2.conf > /var/log/aria2.log 2>&1 &
		nohup sudo -u ccaa filebrowser -c /etc/ccaa/config.json > /var/log/fbrun.log 2>&1 &
		exit;
	;;
	'status')
		if [ "\$aria2pid" == "" ]
			then
				echo "Not running!"
			else
				echo '-----------------------------------------------'
				echo "Aria2 is running,pid is \${aria2pid}."
				echo "Filebrowser is running,pid is \${filebrowser_pid}."
				echo '-----------------------------------------------'
		fi
	;;
	*)
		echo '参数错误!'
		exit
	;;
esac
EOF

chmod +x /usr/sbin/ccaa		# 增加执行权限

常用命令

  • ccaa:进入CCAA操作界面
  • ccaa status:查看CCAA运行状态
  • ccaa stop:停止CCAA
  • ccaa start:启动CCAA
  • ccaa restart:重启CCAA

开放过多端口,不容易管理,也容易发生恶意入侵,所以通过nginx使用不同的域名反代到80端口。

在nginx的配置文件里加入以下代码,同时将 域名DNS解析添加 *.aria.hearme.cn到自己的服务器

# ariaRPC
server {
    listen 80;
    server_name rpc.aria.hearme.cn;
    client_max_body_size 1024m;
    location / {
        proxy_set_header HOST $host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://127.0.0.1:6800/;
    }  
}

# Filebrowser
server {
    listen 80;
    server_name fb.aria.hearme.cn;
    client_max_body_size 1024m;
    location / {
        proxy_set_header HOST $host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://127.0.0.1:6081/;
    }  
}

对应的主页上的链接也需要修改。

最后访问网站,修改下面两个地方即可大功告成。

CCAA的帮助文档可查看[这里](

上一篇 Excel 公式技巧
下一篇 Scrcpy - 开源免费在电脑显示手机画面并控制手机的工具
    • 实验环境
    • 安装过程
      • 1.安装前的准备
      • 2.下载软件
      • 3.安装软件
        • 3.1 安装aria2
        • 3.2 安装Filebrowser
        • 3.3 安装Nginx
        • 3.4 安装AriaNG
      • 4. 配置软件
      • 5.启动服务
      • 6. 进阶教程
      • 常用命令
/media/images/bgimg.png
Cradear's blog  |
  • 首页
  • 归档
  • 标签
  • 关于
  • 友链
2020-08-12
6 min read

CCAA-打造离线下载服务器

实验环境

操作系统: Ubuntu 20.04 64位

软件:

Nginx | Aria2 | AriaNg | File browser

安装过程

先说最简单的方法,就是利用大佬已经做好的脚本,一键执行就行,大佬的项目在此链接,但是也并没有对所有的系统进行适配,有些系统环境还是不能部署成功。

既然是学习,就不如自己一步步地来部署CCAA这个项目,一来可以熟悉Linux命令,二来学习一些错误的处理。

本教程依然是基于大佬的项目,我只是把脚本自动执行的内容一步步分解出来。

1.安装前的准备

创建临时目录

mkdir ./ccaa_temp

创建用户和用户组

groupadd ccaa
useradd -M -g ccaa ccaa -s /sbin/nologin

2.下载软件

进入临时目录

cd ./ccaa_tmp

下载本教程软件

wget https://github.com/q3aql/aria2-static-builds/releases/download/v1.35.0/aria2-1.35.0-linux-gnu-64bit-build1.deb
wget https://github.com/filebrowser/filebrowser/releases/download/v2.6.2/linux-arm64-filebrowser.tar.gz
wget https://github.com/helloxz/ccaa/archive/master.zip

可以根据自己的情况选择适合自己的安装包,当然也可以自己下载源码编译安装

Aria2 Filebrowser
https://github.com/q3aql/aria2-static-builds/releases https://github.com/filebrowser/filebrowser/releases

3.安装软件

3.1 安装aria2

dpkg -i aria2-1.35.0-linux-gnu-64bit-build1.deb

出现下面的错误是因为下载的版本与系统有关,目前CPU是ARM64,然而我们下载的是AMD64位的安装包,所以选择适合我们的安装包 wget https://github.com/q3aql/aria2-static-builds/releases/download/v1.35.0/aria2-1.35.0-linux-gnu-arm-rbpi-build1.deb ,然后再运行 dpkg -i aria2-1.35.0-linux-gnu-arm-rbpi-build1.deb,安装成功。

3.2 安装Filebrowser

tar -zxvf linux-arm64-filebrowser.tar.gz	# 解压
mv filebrowser /usr/sbin					# 移动位置

3.3 安装Nginx

apt-get install -y nginx
systemctl enable nginx		# 开机启动

3.4 安装AriaNG

unzip master.zip	# 解压
mv ccaa-master/ccaa_dir/AriaNg/* /var/www/html/

4. 配置软件

将Aria2和Filebrowser配置文件移到/etc/ccaa

 mkdir /etc/ccaa
 mv ccaa-master/ccaa_dir/aria2.* /etc/ccaa/
 mv ccaa-master/ccaa_dir/config.json /etc/ccaa/
 touch /etc/ccaa/filebrowser.db

手动配置

osip=$(curl -4s https://api.ip.sb/ip)
mkdir /var/www/data		# 下载目录
sed -i "s%dir=%dir=/var/www/data%g" /etc/ccaa/aria2.conf
sed -i "s/rpc-secret=/rpc-secret=123456/g" /etc/ccaa/aria2.conf
sed -i "s%ccaaDown%/var/www/data%g" /etc/ccaa/config.json	#替换filebrowser读取路径
sed -i "s/server_ip/${osip}/g" /var/www/html/index.html	#替换AriaNg服务器链接

5.启动服务

nohup sudo -u ccaa aria2c --conf-path=/etc/ccaa/aria2.conf > /var/log/aria2.log 2>&1 &	#启动Aria2
nohup sudo -u ccaa filebrowser -c /etc/ccaa/config.json > /var/log/fbrun.log 2>&1 &		#运行filebrowser
service nginx start

重置权限

chown -R ccaa:ccaa /etc/ccaa/	
chown -R ccaa:ccaa /var/www/data

到这里,基本配置已经完成,可以直接访问IP或者域名使用

6. 进阶教程

cat <<EOF >/usr/sbin/ccaa
#!/bin/bash
#####		CCAA管理脚本			#####
#####		Author:xiaoz.me			#####
#####		Update:2020-02-27		#####

#导入环境变量
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/bin:/sbin
export PATH

aria2pid=\$(pgrep 'aria2c')
filebrowser_pid=\$(pgrep 'filebrowser')

case \$1 in
	'start')
		nohup sudo -u ccaa aria2c --conf-path=/etc/ccaa/aria2.conf > /var/log/aria2.log 2>&1 &
		nohup sudo -u ccaa filebrowser -c /etc/ccaa/config.json > /var/log/fbrun.log 2>&1 &
		exit
	;;
	'stop')
		kill -9 \${aria2pid}
		kill -9 \${filebrowser_pid}
	;;
	'restart')
		kill -9 \${aria2pid}
		kill -9 \${filebrowser_pid}
		nohup sudo -u ccaa aria2c --conf-path=/etc/ccaa/aria2.conf > /var/log/aria2.log 2>&1 &
		nohup sudo -u ccaa filebrowser -c /etc/ccaa/config.json > /var/log/fbrun.log 2>&1 &
		exit;
	;;
	'status')
		if [ "\$aria2pid" == "" ]
			then
				echo "Not running!"
			else
				echo '-----------------------------------------------'
				echo "Aria2 is running,pid is \${aria2pid}."
				echo "Filebrowser is running,pid is \${filebrowser_pid}."
				echo '-----------------------------------------------'
		fi
	;;
	*)
		echo '参数错误!'
		exit
	;;
esac
EOF

chmod +x /usr/sbin/ccaa		# 增加执行权限

常用命令

  • ccaa:进入CCAA操作界面
  • ccaa status:查看CCAA运行状态
  • ccaa stop:停止CCAA
  • ccaa start:启动CCAA
  • ccaa restart:重启CCAA

开放过多端口,不容易管理,也容易发生恶意入侵,所以通过nginx使用不同的域名反代到80端口。

在nginx的配置文件里加入以下代码,同时将 域名DNS解析添加 *.aria.hearme.cn到自己的服务器

# ariaRPC
server {
    listen 80;
    server_name rpc.aria.hearme.cn;
    client_max_body_size 1024m;
    location / {
        proxy_set_header HOST $host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://127.0.0.1:6800/;
    }  
}

# Filebrowser
server {
    listen 80;
    server_name fb.aria.hearme.cn;
    client_max_body_size 1024m;
    location / {
        proxy_set_header HOST $host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://127.0.0.1:6081/;
    }  
}

对应的主页上的链接也需要修改。

最后访问网站,修改下面两个地方即可大功告成。

CCAA的帮助文档可查看[这里](

上一篇 Excel 公式技巧
下一篇 Scrcpy - 开源免费在电脑显示手机画面并控制手机的工具