如何在Ubuntu 16.04 / 18.04上安装SABnzbd Usenet客户端

萨布兹 是一个免费的基于Web的开源和基于Usenet的客户端,用于在Usenet上下载二进制内容(图像,音频,视频,电子书等)。 它是跨平台的,可用于Linux,BSD,macOS,UNIX,Windows,Synology,QNAP等。 本教程将向您展示 如何在Ubuntu 16.04和Ubuntu 18.04上安装SABnzbd

SABnzbd功能:

  • 您可以使用Web浏览器从任何地方访问它。
  • 响应式Web界面。
  • 支持多个Usenet服务器(提供程序)。
  • 移动应用可用于Android和iOS
  • Sonarr,Sickrage,CouchPotato和Headphones之类的应用程序可以与SABnzbd和 自动化您的下载过程
  • SABnzbd还可以阅读和处理RSS feed,激活自定义脚本,并通过邮件,咆哮,徘徊,推翻和推弹通知您。
  • NZB(纽兹二进制)索引器集成。 NZB文件就像种子文件,而NZB索引器就像种子网站。
  • 还有很多

如何在Ubuntu 16.04 / 18.04上安装SABnzbd Usenet客户端

可从默认的Ubuntu存储库中获得SABnzbd。 因此,您可以打开一个终端并使用apt安装它。

sudo apt install sabnzbdplus

SABnzbd正在积极开发中。 建议运行以下命令以从SABnzbd PPA安装最新的稳定版本(在撰写本文时为2.3.9)。

sudo add-apt-repository ppa:jcfp/nobetas

sudo add-apt-repository ppa:jcfp/sab-addons

sudo apt update

sudo apt install sabnzbdplus python-sabyenc par2-tbb

SABYenc模块可以帮助提高CPU受限设备上的下载速度。 的 par2-tbb 软件包提供了Multicore-par2模块,通过使用系统上的所有内核来显着加快验证和修复速度。

为SABnzbd创建系统服务单元

虽然 sabnzbdplus 软件包提供了传统的Init脚本(/etc/init.d/sabnzbdplus),但我发现它不起作用。 我运行以下命令来启动服务。

sudo service sabnzbdplus start

如果使用以下命令列出了Ubuntu系统上的侦听端口,则找不到8080端口(默认情况下,SABnzbd侦听8080端口),这表明该端口未运行。

sudo netstat -lnpt | grep 8080

启动SABnzbd的更好方法是使用Systemd服务单元。 我们可以使用命令行文本编辑器(例如Nano)来为SABnzbd创建Systemd服务。

sudo nano /etc/systemd/system/sabnzbd.service

将以下文本放入文件中。

[Unit]
Description=SABnzbd Usenet Client
After=network.target

[Service]
Type=simple
User=sabnzbd
Group=sabnzbd
ExecStart=/usr/bin/python3 -OO /usr/bin/sabnzbdplus --browser 0 
ExecStop=/usr/bin/pkill sabnzbdplus
Restart=always
SyslogIdentifier=SABnzbd Usenet Client

[Install]
WantedBy=multi-user.target

默认情况下,SABnzbd侦听端口8080。 如果系统上的另一个进程正在使用此端口,则SABnzbd将自动选择其他端口。 我建议直接在ExecStart参数中选择一个端口,如下所示,这将使SABnzbd侦听端口8081。

ExecStart=/usr/bin/python -OO /usr/bin/sabnzbdplus -s 127.0.0.1:8081 --browser 0

保存并关闭文件。 (要在Nano文本编辑器中保存文件,请按 Ctrl+O,然后按 Enter 确认。 要关闭文件,请按 Ctrl+X

然后重新加载Systemd。

sudo systemctl daemon-reload

请注意,SABnzbd不需要root特权即可运行。 因此我们在服务文件中指定了SABnzbd应该作为 sabnzbd 用户和组,没有root特权。 创建 sabnzbd 系统用户和组,使用以下命令。 主目录将用于保存配置文件(/home/sabnzbd/.sabnzbd/sabnzbd.ini)。

sudo adduser --system --home /home/sabnzbd --group sabnzbd

现在,我们可以使用systemd服务启动sabnzbd。

sudo systemctl start sabnzbd

在启动时启用自动启动。

sudo systemctl enable sabnzbd

现在检查sabnzbd的状态。

systemctl status sabnzbd

样本输出:

启动安装向导

您可以输入 127.0.0.1:8080/sabnzbd/wizard 在任何网络浏览器中启动快速启动向导。

安装sabnzbd ubuntu

选择一种语言。 在下一个屏幕中,输入Usenet提供程序的服务器详细信息。 我使用NewsDemon,它提供15天的免费试用期。 这些服务器详细信息可以从Usenet提供商处获得。 如果您的Usenet支持SSL,请确保检查SSL。

sabnzbd新闻恶魔

为了从Usenet下载内容(图像,音频,视频,电子书等),您需要提供 新西兰银行 文件到SABnzbd。 NZB文件类似于.torrent文件,可以从Usenet索引网站(例如nzbfinder.ws)下载。 这些站点大多数基于免费增值模式。 您可以选择构建自己的免费Usenet索引器,但是现在对于Usenet初学者,最好在这些Usenet索引站点中注册免费帐户,以查看可用的内容。 从屏幕截图中可以看到,下载速度非常快。 (16.8 MB /秒= 134.4兆位/秒)

sabnzbd newsdemon下载速度

如何更改下载目标文件夹

默认的下载文件夹是 /home/sabnzbd/Downloads。 如果要将其更改为另一个目录(例如,外部硬盘驱动器),请单击 Folder SABnzbd Web界面中的菜单。 然后单击浏览器按钮进行更改。

sabnzbd更改下载目标文件夹

请注意 sabnzbd 用户需要对您的下载目标文件夹具有读写权限。 如果使用外部USB硬盘驱动器,则可以运行以下命令来授予权限。

sudo setfacl -R -m u:sabnzbd:rwx /media/linuxbabe/

我的外部USB硬盘驱动器安装在 /media/linuxbabe/,请适当更改。

设置反向代理

要使用域名从远程连接(例如,LAN外部)访问SABnzbd Web界面,可以使用Nginx或Apache设置反向代理。

如果您没有真实域名,建议您到NameCheap购买。 价格低廉,终身免费提供Whois隐私保护。

Nginx的

在Ubuntu 16.04或Ubuntu 18.04上安装Nginx:

sudo apt install nginx

启动Nginx Web服务器。

sudo systemctl start nginx

然后在中创建一个新的服务器阻止文件 /etc/nginx/conf.d/ 目录。

sudo nano /etc/nginx/conf.d/sabnzbd.conf

将以下文本粘贴到文件中。 更换 sabnzbd.your-domain.com 使用您的首选域名,不要忘记为其创建A记录。 如果使用其他端口,请将8080更改为您自己的端口号。

server {
       listen 80;
       server_name sabnzbd.your-domain.com;

       location / {
              proxy_pass http://127.0.0.1:8080;
              proxy_set_header Host $http_host;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
              proxy_set_header X-Forwarded-Proto $scheme;
        }
}

保存并关闭文件。 然后测试Nginx配置。

sudo nginx -t

如果测试成功,请重新加载Nginx。

sudo systemctl reload nginx

现在您可以通过以下方式访问SABnzbd Web界面 sabnzbd.your-domain.com。 如果看到以下错误:

Access denied - Hostname verification failed

然后您需要编辑配置文件(/home/sabnzbd/.sabnzbd/sabnzbd.ini)并添加 sabnzbd.your-domain.com 进入白名单。

host_whitelist = sabnzbd.your-domain.com

然后重新启动SABnzbd。

sudo systemctl restart sabnzbd

阿帕奇

如果使用Apache Web服务器而不是Nginx,请按照以下说明设置反向代理。

安装Apache Web服务器。

sudo apt install apache2

要将Apache用作反向代理,我们需要启用 proxy 模块,我们还将启用 rewrite模块。

sudo a2enmod proxy proxy_http rewrite

然后为SABnzbd创建一个虚拟主机文件。

sudo nano /etc/apache2/sites-available/sabnzbd.conf

将以下文本放入文件中。 更换 sabnzbd.your-domain.com 使用您的实际域名,不要忘记为其设置A记录。 如果使用其他端口,请将8080更改为您自己的端口号。

<VirtualHost *:80>
    ServerName sabnzbd.your-domain.com

    ProxyPass / http://127.0.0.1:8080/
    ProxyPassReverse / http://127.0.0.1:8080/
</VirtualHost>

保存并关闭文件。 然后启用此虚拟主机。

sudo a2ensite sabnzbd.conf

重新加载Apache以使更改生效。

sudo systemctl reload apache2

现在,您可以通过输入域名来远程访问SABnzbd(sabnzbd.your-domain.com )在浏览器地址栏中。 如果看到以下错误:

Access denied - Hostname verification failed

然后您需要编辑配置文件(/home/sabnzbd/.sabnzbd/sabnzbd.ini)并添加 sabnzbd.your-domain.com 进入白名单。

host_whitelist = sabnzbd.your-domain.com

然后重新启动SABnzbd。

sudo systemctl restart sabnzbd

启用HTTPS

为了在您从外部访问SABnzbd Web界面时对HTTP流量进行加密,我们可以通过安装由Let’s Encrypt发行的免费TLS证书来启用HTTPS。 运行以下命令在Ubuntu上安装Let’s Encrypt客户端(certbot)。

sudo apt install certbot

如果使用Nginx,则还需要安装Certbot Nginx插件。

sudo apt install python3-certbot-nginx

接下来,运行以下命令以获取并安装TLS证书。

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d sabnzbd.your-domain.com

如果使用Apache,则需要安装Certbot Apache插件。

sudo apt install python3-certbot-apache

接下来,运行以下命令以获取并安装TLS证书。

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d sabnzbd.your-domain.com

哪里:

  • --nginx:使用nginx插件。
  • --apache:使用Apache插件。
  • --agree-tos:同意服务条款。
  • --redirect:通过301重定向强制HTTPS。
  • --hsts:将Strict-Transport-Security标头添加到每个HTTP响应。 强制浏览器始终对域使用TLS。 防御SSL / TLS剥离。
  • --staple-ocsp:启用OCSP装订。 有效的OCSP响应被装订到服务器在TLS期间提供的证书。

现在应该获得证书并自动安装。

sabnzbd ssl证书

限制访问

如果可以从公共Internet访问SABnzbd,则设置用户名和密码非常重要,可以在 设定档 > 一般 > 安全 部分。

包起来

而已! 我希望本教程可以帮助您在Ubuntu 16.04 / 18.04上安装SABnzbd。 与往常一样,如果您发现这篇文章很有用,请订阅我们的免费新闻通讯以获取更多提示和技巧。 保重🙂

Sidebar