和岁岁
和岁岁
发布于 2024-03-07 / 243 阅读
0
1

碰壁绿联的Aira2和远程访问

修修补补的绿联UGOS折腾了这么久,也算是能用了,虽说底层系统和逻辑依然让用户迷茫,不过就当一个文件管理系统用也还算凑合。

十分推荐去观摩chowdpa02k413写的绿联用户年度爽文:《深入解析绿联云 DX4600 Pro UGOS 系统》

不过本文不吐槽这些,简单分享下绿联的Aria2和远程下载。

试试碰壁UGOS的Aria2

遮遮掩掩的Aria2

UGOS自带了一个系统级别的Aria2,就是主菜单中的“离线下载”功能,它是一个Aria2的前端UI,用户在“离线下载”中添加的任务,会被发送到系统的Aria2里。

这个Aria2:

  1. 系统级的程序,不能停止,不能卸载,不能修改设置;

  2. 系统每次重启会自动重置它的所有设置;

  3. 它会每天自动更新trackers,尽量让用户添加的种子顺利下载;

  4. 它的配置文件的路径在:/data/.ugreen_nas/conf/aria2.conf

既然系统自带了个Aria2,就想尽可能利用起来,毕竟系统里同时运行两个工能完全重合的服务 不够优雅

在此之前,需要先了解这个Aria2的基本信息,既然它的配置文件在/data/.ugreen_nas/conf/aria2.conf ,只要打开这个文件即可:

在UGOS的WEB UI的设置中启用“调试功能-开启远程调试功能”,然后去SSH客户端中连接绿联,输入

vi /data/.ugreen_nas/conf/aria2.conf 

就可以打开这个配置文件,里面的内容大概是这样的:

按键盘上的PageDown(PgDn)往下翻,直到看到--rpc-passwd......rpc-seceret=******

使用UGOS的Aria2只需要用到密码,新建一个记事本,将rpc-seceret=后面的密码记录下来即可。

既然已经来到了SSH,正好顺便看一下UGOS的硬盘结构,它的逻辑是这样的:

在/mnt目录下,有四个文件夹,分别是:

dm-0

dm-1

dm-2

dm-3

分别对应了4个硬盘(这个和WEBUI里显示的“存储空间1~4”并不是一一对应关系,需要自己判断谁是谁…)

在每个dm-*下,有一个叫.ugreen_nas的文件夹,该文件夹中有一个六位数数字的文件夹,不明其意,比如岁岁的是242040,可能和岁岁的不一样,以实际数字为准即可。

在242040下,便是每个存储空间里的文件夹。

所以,假设需要将文件下载到硬盘1的Aria2_Downloads文件夹中,便这样写:

/mnt/dm-0/.ugreen_nas/242040/Aria2_Downloads

建议将Aria2信息和每个硬盘的下载目录信息用记事本工具记录下来,方便以后查阅。

到此,已经拿到了所需的UGOS的系统Aria2信息,只需要填入下载工具即可,总结一下:

Aria2 RPC地址(即推送地址):http://192.168.x.xxx:6800/jsonrpc

密码:在/data/.ugreen_nas/conf/aria2.conf中复制的rpc-seceret=******部分。

下载路径:/mnt/dm-0/.ugreen_nas/242040/Aria2_Downloads (修改对应的位置即可)


比如阿里云盘小白羊远程推送,可以推送阿里云盘的文件到绿联:

或者Alist的远程下载:


哎呀呀呀,不过这个UGOS的Aria2有些小小的缺点:

每次UGOS重启之后Aria2的下载路径会被重置为“unll/unll”导致任务不能顺利部署,所以一旦重启之后需要去Aria2NG “基本设置-下载路径” 中修改为需要下载的目录。

若是用的能保存推送路径的工具便不需要设置; 它每天都会去下载一个叫all_aria2.txt的文件放到/tmp里(用不用它它都会下载);

不能修改密码。

如果不能接受这些缺点,可以自己创建一个Docker Aria2>>>

!注意p3terx/aria2-pro和UGOS不兼容,可以换成别的,比如superng6/aria2。

!注意,6800端口被系统占用了,所以记得修改端口。


一个简单的Aira2NG

Aria2是一个命令行下载工具,没有用户界面,所以不能方便的管理任务,而绿联自带的“离线下载”不会显示用户自己推送的任务,所以需要创建一个UI来控制它。

此时,请出伟大的Docker,在Docker中创建一个Aira2NG:

如果你正好还在SSH中的话,直接按序执行:docker pull p3terx/ariang 拉取镜像。

然后执行 docker run -d \ --name ariang \ --log-opt max-size=1m \ --restart unless-stopped \ -p 6880:6880 \ p3terx/ariang

完成!然后浏览器中输入IP:6880就能顺利访问了,按下面的图片填写Aria2信息即可。

在这个界面中可以管理下载任务,可以按Ctrl+D添加到收藏夹:


简单好用的远程推送

上面的操作都基于内网使用,而Aria2是一个注重远程下载的工具,当然不该受困于家里的三丈围田,岁岁更希望在上班划水时为Aria2远程布置下载任务,回家之前它已经将今晚计划要看的电影下载好放在绿联里了。

Aria2支持承接各种网盘的下载任务和包括种子/磁力/https在内的不少协议,其中比较简单的是能直接承接阿里云盘/Alist/115等网盘的下载,可以直接远程将文件发送给Aria2,让它从网盘服务器中下载对应的文件。

这里使用的是操作简单+免费好看+自带证书的Cloudflare Zero Trust内网穿透服务。

前置条件:

  1. 假设已经有了一个域名(推荐使用国外的域名,国内平台三天两头叫人备案,神烦。

  2. 有Cloudflare账号,Cloudflare的网址:https://www.cloudflare.com/zh-cn

  3. 该域名已经托管到Cloudflare。

启用Cloudflare Zero Trust

1.先进入Cloudflare,点击你托管的域名,然后点"Access-启动Zero Trust"

2.,然后点击你的Cloudflare账户 ↓


会进入到这个界面,在这个界面中点击“Networks”展开,然后点“Tunnels-Create a tunnel”

Seelct your connector下面,选择Cloudflared,然后点下面的Next ↓

然后就开始为内网穿透起个名字,无所谓叫什么,比如就叫UGOS吧,岁岁打算用这个来转发绿联的所有服务。

然后点Save tunnel

创建Tunnels的Docker

接下来会进入这个页面 ↓

点击“Docker"

下面会显示Docker命令,这个命令包含了秘钥信息,所以不要泄露出去了,点击后面的图标复制这个命令即可。

!不要关闭这个页面!

在默认情况下,直接粘贴刚才复制的命令到绿联的SSH里,然后回车即可完成操作。

!但是,这条命令中默认不含“重启容器”的参数,所以可以粘贴到记事本,然后手动修改,添加一个重启参数:

--restart=unless-stopped


emmmm截图中写错参数了,请写unless-stopped

然后再复制-粘贴到SSH中回车即可,它会自动下载镜像并完成部署 ↓

回到绿联的WEB-UI,打开Docker,在容器管理中能看到Sweet-elgamal就表示容器运行成功 ↓

添加Tunnels

Dokcer那边运行没有问题之后,回到Cloudflare,再次点击Networks-Tunnels,会看到之前创建的Tunnels,找到UGPS,点击最右边的三个竖点 ↓

配置转发

点击add,开始配置第一个转发,此处以Aria2为例,请仔细看图中的说明↓

然后选择下一步即可。

保存好了之后应该就可以愉快的连接了,如果配置的是一个网页服务,就能打开这个网页了。

*emmm因为Aria2没有网页服务,所以这个页面打不开,并且Tunnel后台可能会报错,但是依然可以使用。

回到WEB-UI的Docker,点开sweet_elgamal的“详情”, 然后点“日志” ,会看到开始转发了 ↓

在AriaNG中填写转发过后的Aria2域名也可以正确的连接 ↓

举一反三

每一个Tunnel组中可以添加多个服务和域名。

同样的操作,只需要再次点击添加,将Aria2换成qb,并将下方内网地址后面的端口换成qbittorrent的端口(默认为8080),即可远程访问QB啦~

如果将端口换为9999就能直接访问UGOS的WEB-UI~


emmmm,有证书,并且不需要加端口后缀,优雅实在是优雅。


End

好累,不想写了。


评论