Aria2使用www-data用户配置

前言

常规的Aria2是基于安装用户来使用的,或者基于 root 用户,这样其实很不方便管理。

搭配它的WebUI-GitHub - mayswind/AriaNg: AriaNg, a modern web frontend making aria2 easier to use.,网页使用的是Nginx或者Apache2的用户权限www-data,Aria2用的又是root,导致下载的文件都是root权限,权限问题比较杂。

这时候如果有磁盘映射(映射SMB或者WebDav的那个文件夹),特别是基于Nginx或者Apache2搭建的WebDav,这样其他的用户根本没办法对下载的文件进行编辑等操作。

也就是说,只要把Aria的权限改为www-data,那么整个文件夹权限都是统一的 www-data,一视同仁。

操作

修改Aria2的服务:

# vim /usr/lib/systemd/system/aria2c.service

[Unit]
Description=Aria2c

[Service]
User=www-data
Group=www-data
TimeoutStartSec=0
ExecStart=/usr/bin/aria2c --conf-path=/var/www/aria2/aria2.conf
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=30s

[Install]
WantedBy=multi-user.target

需要注意的就是在 [Service] 段,定义 User=www-dataGroup=www-data,以及它的conf-path 文件,conf-path 文件必须放在 www-data 权限的文件夹内才能访问,不能放在默认的 ~/.aria2 文件夹中。

执行:

systemctl daemon-reload
systemctl restart aria2c

这样就解决了Aria2核AriaNG的权限统一问题。

补充

AriaNG的WebUI需要RPC密钥才能连接,只需要使用Nginx将其代理出去即可,还可以继续使用6800的端口号:

1.修改aria2.conf配置

rpc-listen-port=16800 随意更换一个端口号

2.配置Nginx反向代理

server {
    listen 6800;
    listen [::]:6800;

    server_name xxx.com;

    location / {
        proxy_pass      http://127.0.0.1:16800;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

这样就将RPC端口仍然使用的默认6800端口。

最后

Aria2真的很香,不说速度有多快吧,但是肯定不慢,平时我下载电影都用的它,总好过开台电脑挂机下载吧。

0 0 投票数
文章评分
订阅评论
提醒
guest
0 评论
最旧
最新 最多投票
内联反馈
查看所有评论
滚动至顶部
0
希望看到您的想法,请您发表评论x