A Fully Automated Usenet Piracy Machine with Plex, Sabnzbd and Sonarr

There’s plenty of ways to get your pirated media fix, some that don’t involve paying at all, but I like Usenet because it’s usually where the highest quality media (in terms of bit-rate and lack of transcoding) is available and it’s also the easiest to automate. I also like that there’s no need to join private torrent trackers and maintain a ratio or be active in the community.

This post is for when people ask me how they can set up their own automatic piracy machine. I assume you’re used to torrents, but beyond that have no concept of what Usenet is or how it works.

The goal here is to have your favourite TV shows and movies automatically appear in Plex, ready to watch whenever a new episode or release is available.

Some terms to get familiar with before we start:

Indexers

These are kinda like torrent sites. You sign up to one or more of these and they contain NZB files, which are similar to torrent files. You search for a movie or TV show on the indexer’s website, download the NZB file and add it to Sabnzbd. The more indexers you have access to, the more likely you are to find an NZB, particularly for older/niche stuff.


DOGnzb, a popular Usenet indexer

Sabnzbd

Think of Sabnzbd like a torrent client. You need to configure it first by entering your Usenet server’s details. When you upload the NZB file to Sabnzbd, it then searches your Usenet server(s) for the messages, downloads them, unzips them and plonks the resulting file on your disk.


The Sabnzbd download queue

Usenet Server

This is where things get different to Bittorrent. Instead of downloading little chunks of a file off other people’s computers then uploading those little chunks to the other pirates, Usenet servers have all this stuff on a single server. It was originally set up for people to share messages and have conversations (like a forum), but you can attach files to those messages and now people just use it to share the files, messages be damned.


A list of servers I pay for access to download stuff from

The upside of usenet is that you don’t need to maintain a ratio, or upload anything. It’s also faster as you’re downloading from a server with loads of bandwidth instead of a bunch of randos around the world. The downside is that you gotta pay for it and sometimes there’s files missing.

Radarr/Sonarr

These apps automate the entire process of searching the indexer for an NZB, adding it to Sabnzbd and then placing it in the right spot on your disk so Plex finds it. Sonarr is for TV shows and Radarr is for movies. They rely on using the APIs of the indexers and Sabnzbd to talk to them directly.

You can set it to search for stuff that’s already been shown or broadcast and build up your collection, or you can enter things that haven’t been released yet so when it does become available, it downloads right away. There’s a shitload more you can do with Radarr and Sonarr, but these are the basics.


My Sonarr setup. It’s empty as I’m not a person that collects TV shows. I download, watch, then delete.

Jackett

If you don’t want to bother with Usenet, you can use a service called Jackett. It pretends to be a usenet indexer for Sonarr and Radarr, but instead of grabbing NZB files, it connects to your favourite torrent trackers and grabs torrent files instead and passes them on to your torrent client. I’m focussing on usenet in this post as it’s what I like, but if you’re too cheap to even pay for an indexer & usenet server, you can fuck around with Jackett. Some people have Usetnet and torrents going at the same time, they’re not mutually exclusive.

Plex

You could just open the downloaded files in VLC or whatever and watch them, there’s nothing wrong with that - but if you want to track your progress in a TV series, have a nice presentation of your media collection, watch your media library remotely or share it with other people, then Plex is pretty good. Jellyfin is also very good if you wanna try that instead of Plex. I actually use the non-pirate features in Plex (like the DVR and the Music player).


Some movies on my Plex server

1. Get access to a usenet server

Not all usenet servers are equal. There’s a handful of “backbone” providers (Abavia, Giganews, Newscene, Omicron, United, Speedium, Usenet.Farm, Usenet Express & Uzo) that contain the data and then hundreds of resellers that sell access to that backbone server. It’s also not quite enough to have access to the one backbone as you might miss out on content that’s been removed from one provider, but not the other, due to DMCA takedown requests. This Reddit post contains map showing how they’re all related.

It can be quite confusing and expensive, so if you can’t be fucked doing any research, pay US$12/m for UsenetNews All Access. With a single payment you get access to three separate backbones (Usenet.Farm, Usenet Express & Uzo Reto), which should provide plenty of coverage.

2. Get access to a few indexers

Indexers are also not equal, some are way better than others and have a larger collection of stuff. They are also not free to use. You probably want access to at least 2, ideally 3. This Reddit page has a list of all the indexers out there. The best ones need an invite, but there’s still good indexers that are open signup:

  • nzb.su - US$15/yr, US$28/2yr or US$42/3 years
  • NZBgeek - US$12/yr or US$80/lifetime
  • NZBFinder - 25 euro/year

If you sign up for those 3, I’ll be surprised if you can’t get 95% of what you want.

3. Build yourself a server

The aim here is to have everything running in the background on a little box that your TV talks to over your local network. You don’t need anything that fancy unless you’re gonna have a huge 400TB collection of stuff that 50 of your mates are gonna have access to.

For the vast majority of people reading this I would recommend either a refurb small form factor PC running a 7th-gen or newer i5/i7 Intel CPU like a Dell, Lenovo or HP, or a Synology NAS with an Intel CPU and a RAM upgrade.


Dell Optiplex 7050 - a workhorse SFF PC that’ll run Plex like a champ thanks to Intel QuickSync built-in to the i5 7500 CPU

You can find the SFF PCs on eBay or Facebook Marketplace. An i5-8500 Dell Optiplex 7060 can be had for just under $300 delivered. I love these SFF PCs because they have space for a 3.5" HDD and an M.2 PCIe SSD slot. Chuck a fast SSD in the M.2 slot as your boot & processing drive and a huge 3.5" HDD (Disk Prices is a great site that shows you the cheapest disks per TB on Amazon) for your media storage and you’re all set. They also support a modern version of QuickSync video encoding/decoding, which is handy for Plex.

If buying a 2nd hand PC and installing Linux on it scares you, cough up the cash for a Synology NAS. I strongly recommend getting a model that has an M.2 NVMe slot so you can install an SSD in there. It’ll speed up the post-processing of downloads and other system related operations big time. Unfortunately, they’ve moved their better units to use the Ryzen range of CPUs, which Plex doesn’t support for hardware video decode/encode. The only Synology unit with an M.2 slot and an Intel CPU that supports QuickSync is the DS423+. QNAP have more options with more modern CPUs.

4. Install & Configure Plex, Sabnzbd, Sonarr & Radarr

How you set these apps up depends on what you’re running them on. They’ll work on Windows, Mac, Linux or even a NAS (Qnap/Synology). I won’t go into detail on how to install and configure them as there’s plenty of info about that on the web and YouTube.

HomelabOS, YunoHost, Unraid, Umbrel and possibly others are great “self-host” operating systems that make installing all the components and services a one-click process. They’ll also provide a nice dashboard and regular updates. Handy if you want to run other stuff besides Plex and Sonarr too, like Pi-Hole, a Tailscale node, Home Assistant and so on.

Personally, I’m a big fan of the lightweight Alpine Linux and just installing everything (Plex, Sabnzbd, Sonarr & Radarr) as Docker containers. I might do a quick write-up of how to install everything from scratch on Alpine Linux.

5. Get a Plex client for your TV

The great thing about Plex is that they have a client for practically every goddamn thing with a screen or that can be plugged into a TV. XBox/Playstation, Apple TV, smart TVs, tablets, smartphones, set top boxes, etc - chances are there’s a Plex client available.

Once your Plex server is running, just download the Plex app on whatever you want to watch stuff on, sign in and the media on your server is now available to view.

If you want to enable remote viewing (i.e: so you can watch stuff on your phone while you’re not at home for example), you’ll need to crack open port 32400 on your router so your plex client can talk to your plex server directly.

Some people don’t like (security), or are simply unable (i.e: CGNAT) to open a port on their network, so in that case you’ll need to set up a VPN. This way you’re able to pretend that your remote device is sitting on your local network. I love Tailscale for this. Easy to use, fast and free.

To share your library with your mates, it’s just a matter of them signing up for a free Plex account, installing the client on their TV and you entering their Plex username on your server. Plex’s website has instructions:

Keep in mind here that if you’ve got a lot of people watching your stuff at once you might run out upload bandwidth. If you’re on a 100/20 NBN connection for example, that’s just 20mbit of upload speed. A 4K movie or TV show will likely exceed that. If you’re really savvy you could run a Plex server in the cloud on a VPS or dedicated server - just keep in mind storage and bandwidth requirements!

6. Misc tips and notes

Avoid Transcoding

Plex has a nifty feature that’ll convert media on the fly in real time if the device you’re trying to watch it on doesn’t support the file type (i.e: HEVC/x265 on a crappy smart TV’s Plex app). While it’s great it works, it means lower quality as you’re converting an already compressed file and potentially stuttering playback if you’re server isn’t fast enough to do it in real-time. You can avoid this by using a good playback device, like an Apple TV or an Nvidia Shield, which supports pretty much everything.

Increase Remote Playback Quality

By default, remote playback is set to potato quality 2mbit 720p. This is on purpose to make sure even the shittiest of internet connections cope. I strongly suggest you go into the settings on your playback device (smartphone, Apple TV, web browser, whatever it is you’re watching Plex on) and enable “Automatically adjust quality” and bump up the video quality to “maximum” so it adjusts the video bitrate to your internet connection.

Permissions

This is a big pain in the arse for Linux newbies. If Plex hasn’t got permission to read the directory containing your media, it isn’t going to be able to play it! Ditto Sabnzbd needing permission to the download directory and Sonarr and Radarr needing permission to your library directory. Make sure you’ve got the right users in the right groups. Plex has a whole support document dedicated to it:

Media Formats

When poking around the indexers you might see multiple files of the same movie or TV show episode, but with different suffixes attached to the file name. Here’s a quick explainer of what to look for:

WEB-DL - means the file was downloaded off a streaming service, bypassing DRM. It’s the best quality you’ll get for shows that were only on Netflix or HBO Max for example.

DoVI - a few TV shows and movies are now streaming with Dolby Vision HDR. If you see DoVI in the filename, it means the uploader has kept that HDR info attached. If your playback device supports DoVI, awesome, grab it, but don’t be surprised if the colours are all fucked up if your device chain (set top box, playback app, amp/receiver and TV) doesn’t support it properly.

REMUX - this is the good shit. Remux means someone’s grabbed the Blu-ray disc and copied the data off it then uploaded it to the internet for us. No re-compression, totally unadulterated. Yeah the files are big, but the quality is the exact same as what you’d get as if you has the original Blu-ray disc. Unfortunately more and more content isn’t even bothering to get a Blu-Ray release, mostly movies now.

Webrip - this is kinda like WEB-DL, but instead of busting the DRM and geting a perfect copy, the uploaded captured it somehow, usually via HDMI output and bypassing the HDMI copy protection. It’s not ideal, but sometimes there’s no other way as the content may be on a platform that hasn’t had its DRM busted yet.