How to Install SABnzbd Usenet Client on Ubuntu 16.04/17.04

SABnzbd is a free open-source and web-based Usetnet client for downloading binary content (image, audio, video, e-book, etc.) on Usetnet. It’s cross-platform, available for Linux, BSD, MacOS, UNIX, Windows, Synology, QNAP and so on. This tutorial is going to show you how to install SABnzbd on Ubuntu 16.04 and Ubuntu 17.04.

SABnzbd features:

  • You can access it from anywhere with a web browser.
  • A responsive web interface.
  • Multiple Usetnet servers (providers) are supported.
  • Mobile apps are available for Android and iOS
  • Apps like Sonarr, Sickrage, CouchPotato and Headphones can integrate with SABnzbd and automate your download process.
  • SABnzbd can also read and process RSS feeds, activate custom scripts and notify you via mail, growl, prowl, pushover and pushbullet.
  • NZB indexer integration
  • And many more

How to Install SABnzbd Usenet Client on Ubuntu 16.04/17.04

SABnzbd is available from the default Ubuntu repository. So you can open up a terminal and install it with apt.

sudo apt install sabnzbdplus

SABnzbd is being actively developed. If you want to install the latest stable version (2.0.0 at the time of this writting), then run the following commands in a terminal window to add an unofficial SABnzbd PPA, then update package index and install it.

sudo add-apt-repository ppa:jcfp/nobetas

sudo apt update

sudo apt install sabnzbdplus

ubuntu 16.04 sabnzbd

How to Start SABnzbd on Ubuntu

Once installed, start SABnzbd from Unity Dash or your preferred app launcher.

start sabnzbd on startup ubuntu

You can also start SABnzbd from command line. -d (--daemon) option makes it run in the background.

sabnzbdplus -d

If SABnzbd is installed on a headless Ubuntu server, then you can add --browser 0 option to disable automatically launching browser.

sabnzbdplus -d --browser 0

By default, SABnzbd listens on port 8080. If another process is using port 8080, then you can use the -s (--server) option to specify a different port for SABnzbd like so.

sabnzbdplus -d -s 127.0.0.1:8081 --browser 0

The quick start wizard will be opened in your web browser. You can also enter localhost:8080/sabnzbd/wizard in any web browser to see the quick start wizard.

install sabnzbd ubuntu

Select a language. In the next screen, enter the server details of your Usenet provider. I use Giganews, which offers 14 days free trial. These server details can be obtained from your Usenet provider. If your Usenet supports SSL, make sure to check SSL.

sabnzbd systemd

In order to download content (image, audio, video, e-book, etc.) from Usenet, you need to feed a NZB file to SABnzbd. NZB file, which is similar to .torrent file, can be download from Usenet index sites like nzb.is. Most of these sites are based on a freemium model. You have the option to build your own free Usenet indexer, but now for a Usetnet beginner it’s a good idea to register free accounts with these Usenet index sites to see what’s available to you.

sabnzbd ubuntu

Auto start SABnzbd on Ubuntu

To enable auto start, we can create a systemd service for SABnzbd.

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

Put the following text into the file.

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

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

[Install]
WantedBy=multi-user.target

Save and close the file. Then reload systemd.

sudo systemctl daemon-reload

Note that it’s recommended not to run sabnzbd as root, so we’ve specified in the service file that sabnzbd should run as the sabnzbd user and group, which have no root privileges. Create the sabnzbd system user and group.

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

sudo addgroup --system sabnzbd

Add the sabnzbd user to the sabnzbd group.

sudo adduser sabnzbd sabnzbd

Next, Stop the current sabnzbd process.

pkill sabnzbdplus

Use the systemd service to start sabnzbd.

sudo systemctl start sabnzbd

Enable auto start at boot time.

sudo systemctl enable sabnzbd

Now check sabnzbd status.

systemctl status sabnzbd

ubuntu sabnzbd autostart

Setting up Nginx Reverse Proxy

To access SABnzbd from a remote connection (outside your LAN) using domain name, you can set up Nginx reverse proxy. Install Nginx on Ubuntu 16.04 or Ubuntu 17.04:

sudo apt install nginx

Start Nginx web server.

sudo systemctl start nginx

Then create a new server block file in /etc/nginx/conf.d/ directory.

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

Paste the following text into the file. Replace sabnzbd.your-domain.com with your preferred domain name and don’t forget to create A record for it.

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

       location / {
              proxy_pass http://localhost: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;
        }
}

Save and close the file. Then test Nginx configuration.

sudo nginx -t

If the test is successful, reload Nginx.

sudo systemctl reload nginx

Now you can access SABnzbd Web interface via

sabnzbd.your-domain.com

Setting up Apache Reverse Proxy

If you use Apache web server rather than Nginx, then follow the instructions below to set up reverse proxy.

Install Apache web server.

sudo apt install apache2

To use Apache as a reverse proxy, we need to enable the proxy modules and we will also enable the rewritemodule.

sudo a2enmod proxy proxy_http rewrite

Then create a virtual host file for SABnzbd.

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

Put the following texts into the file. Replace sabnzbd.your-domain.com with your actual domain name and don’t forget to set an A record for it.

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

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

Save and close the file. Then enable this virtual host.

sudo a2ensite sabnzbd.conf

Reload Apache for the changes to take effect.

sudo systemctl reload apache2

Now you can remotely access SABnzbd by entering the domain name (sabnzbd.your-domain.com ) in browser address bar.

If SABnzbd is accessible from public Internet, then it’s very important to set a username and password, which can be done in settings > General > Security section. That’s it! I hope this tutorial helped you install SABnzbd on Ubuntu 16.04/17.04.

Rate this tutorial
[Total: 4 Average: 4.8]