Skip to Content
NZBGet

NZBGet

High-performance Usenet downloader with web interface

NZBGet is a binary downloader that retrieves files from Usenet based on NZB files. Written in C++, NZBGet is renowned for its extraordinary performance and efficiency—using minimal CPU and memory while maximizing download speeds. On QuickBox, NZBGet runs as a per-user daemon with its binary at /opt/username/NZBGet/nzbget and a web interface published through the nginx reverse proxy.

Per-User Binary

Dedicated binary in /opt//NZBGet with user-owned permissions

🌐 Reverse-Proxy Ready

nginx location /username/nzbget with HTTP auth backed by htpasswd

📜 Post-Processing

Built-in scripts copied to /home//.config/NZBGet/scripts

🔐 TLS Artifacts

Self-signed certs and CA bundle created under /home//.ssl

Usenet Provider Required

NZBGet requires a Usenet provider subscription and an indexer to obtain NZB files. Configure your provider credentials in the NZBGet web interface after installation.


Installation

Prerequisites

  • QuickBox Pro v3 installed and up to date
  • Target QuickBox user exists (qb user create)
  • Usenet provider + indexer credentials ready
  • Dashboard/nginx working over HTTPS (QuickBox default)

What you get

  • Per-user NZBGet binary/config at /opt/username/NZBGet and /home/username/.config/NZBGet
  • Reverse-proxied access at https://yourserver.com/username/nzbget/
  • Auto-assigned Control/Secure ports written to service + nginx (check dashboard or /etc/nginx/software/username.nzbget.conf)
  • Managed systemd service nzbget@username with journalctl logs
qb install nzbget -u username
Command
qb install nzbget -u username
Description
Install NZBGet for the specified user (per-user binary + config)
Command
qb reinstall nzbget -u username
Description
Reinstall while preserving config and nginx/service wiring
Command
qb update nzbget -u username
Description
Update NZBGet binary from nzbgetcom/nzbget release feed
Command
qb remove nzbget -u username
Description
Stop service, clean files, and remove DB entries

CLI Options

-u, --usernameRequired

Target QuickBox username for install/remove/update operations


Directory Layout

/opt/username/NZBGet
nzbget# NZBGet binary executable
nzbget.conf# Default configuration template
scripts/# Built-in post-processing scripts
/home/username/.config/NZBGet
nzbget.conf# User configuration (auto-written with QuickBox defaults)
nzbget.log# Application log
downloads/# MainDir: active downloads
completed/# DestDir: finished files
intermediate/# InterDir: temp staging
queue/# QueueDir: NZB queue data
tmp/# TempDir: temporary working files
nzb/# NzbDir: watch folder
scripts/# ScriptDir: post-processing scripts (built-ins copied here)
nzbget.lock# LockFile
/home/username/.ssl
cacert.pem# CA bundle fetched from curl.se
username-selfsigned.crt# Self-signed cert generated per user
username-selfsigned.key# TLS key; permissions 750

Network & Access

NZBGet binds to localhost on auto-assigned Control/Secure ports (defaults start at 6789/6791 if free). QuickBox publishes the UI through nginx at:

https://yourserver.com/username/nzbget/

Auth: nginx uses Basic Auth with /etc/htpasswd.d/htpasswd.username (your QuickBox credentials). Upstream NZBGet control credentials are set to the same username/password and bound to 127.0.0.1.

Proxy details

Traffic terminates at nginx over HTTPS, then proxies to http://127.0.0.1:<assigned_port>/username/nzbget (port is assigned during install and written to the service/nginx configs). The self-signed SecurePort is present but not used by the reverse proxy.

First Login

After installation, access the web interface to configure your Usenet provider (news servers), indexers, and download categories.


Services

NZBGet uses a templated systemd unit (nzbget@.service) running as a forking daemon:

# Check status systemctl status nzbget@username # View logs journalctl -u nzbget@username -f # Restart service systemctl restart nzbget@username # Reload configuration systemctl reload nzbget@username

Service definition highlights:

[Unit] Description=NZBGet Daemon Documentation=http://nzbget.net/Documentation After=network.target [Service] Type=forking User=%i Group=%i ExecStart=/opt/%i/NZBGet/nzbget -c /home/%i/.config/NZBGet/nzbget.conf -D ExecStop=/opt/%i/NZBGet/nzbget -Q ExecReload=/opt/%i/NZBGet/nzbget -O KillMode=process Restart=on-failure [Install] WantedBy=multi-user.target

Service file values explained

  • -c /home/%i/.config/NZBGet/nzbget.conf: Specifies the user config file location.
  • -D: Starts NZBGet as a daemon (forks to background).
  • -Q: Stops NZBGet gracefully.
  • -O: Reloads the NZBGet configuration without stopping the service.

  • %i is replaced with the username when the service is started (e.g., nzbget@username).
  • Type=forking indicates that the service will fork a child process and the parent will exit, which is typical for daemon processes.
  • KillMode=process ensures that only the main process is killed on stop/restart, leaving any child processes intact.
  • Restart=on-failure configures the service to automatically restart if it crashes.

Logs

Runtime logs live at /home/username/.config/NZBGet/nzbget.log.


FileBot Post-Processing (courtesy setup)

QuickBox can wire NZBGet to FileBot during FileBot installation:

  1. Install FileBot with the NZBGet option:
qb install filebot -u username -o nzbget -mp /path/to/media
  1. QuickBox drops ~/.config/NZBGet/scripts/nzbget-postprocess.sh and rewrites it with your username and media path.
  2. In NZBGet → Settings → Extension Scripts, add nzbget-postprocess.sh and enable it for relevant categories.

What the script does

Invokes /usr/local/bin/username/filebot with the AMC preset, duplicates to your media path, skips conflicts, and honors /home/username/.filebot/.excludes.


Integrations

NZBGet Integrations

NZBGet works seamlessly with media automation tools.

🎬

Media Automation

🛠️

Post-Processing


Configuration

You can connect *arr apps directly to NZBGet by providing the following details in their download client settings:

Setting
Host
Value
localhost
Setting
Port
Value
443
Setting
Use SSL
Value
Enabled
Setting
URL Base
Value
/username/nzbget/
Setting
Username
Value
QuickBox username
Setting
Password
Value
QuickBox user password

Not seeing the URL Base option?

If you are not seeing the URL Base field, click the cog icon to enable advanced settings in the download client configuration.


Best Practices

Do

  • Configure multiple news servers for redundancy and completion.
  • Use SSL connections to your Usenet provider.
  • Keep categories aligned with your *arr apps and FileBot scripts.
  • Use qb update nzbget to pull the latest nzbgetcom/nzbget binary.

Don't

  • Do not manually edit systemd or nginx files—use qb commands.
  • Do not store completed downloads in the intermediate folder.

Additional Resources

Join the Community

Media server operators sharing configs, getting support, and shaping the future of QuickBox Pro.

Dedicated Support
Feature Previews
Community Configs
Active Discussions
Join Discord Server