Make your own Netflix: A Jellyfin Guide
If you’re like me, you’re a fan of tactile media. You see DVDs or CDs at thrift stores or garage-sales for a dollar or two and you can’t help yourself. Wouldn’t it be cool if you could put those disks to good use, and have them all in one convenient place? Many people these days are getting ever more frustrated with streaming companies and their shoddy business practices. If you pay for a Netflix subscription, why on earth would you still want to receive advertisements? “Enough!” I say. Let’s make a media server on your laptop, so you can stream your entire collection whenever and wherever you want.
This process varies by operating system, but here are the main steps:
Step 1: Rip your DVDs and CDs to digital format.
Step 2: Install and configure Jellyfin, a media server program, on your computer.
Step 3: Enable access to your server from outside your local network.
Obtaining Our Files
First, let’s start by getting digital versions of our media. CDs are really easy: Put it into a CD drive on your computer, and copy the files directly into a folder. DVDs are a bit of a hassle, due to digital rights management (DRM). It’s a widely debated gray-area on whether it’s legal to circumvent DRM protection on DVDs. As long as you don’t give your account password to your neighbor, the FBI won’t be kicking in your door at 2 AM. Maybe. I can’t guarantee this for sure.
Here are two tools that I recommend for ripping DVDs:
MakeMKV: https://www.makemkv.com/
HandBrake: https://handbrake.fr/
(HandBrake is more of a decoder than a ripping tool. However, if MakeMKV isn’t working, you can use this program.)
Once you have your files, we can move onto the next step.
Installing Jellyfin
For Windows Users
You people are lucky. Download an executable from the website below, double click it, and follow the instructions.
Make sure you remember the port number when you set everything up. Then, log into Jellyfin by entering:
http://localhost:<your_port_here>
Documentation: https://jellyfin.org/docs/general/installation/windows/
For Linux Users
I’ve only ever installed Jellyfin on Debian and RHEL-based distros. If all else fails, you can compile from source.
Debian (Ubuntu, Linux Mint, etc)
Use this simple bash script provided by the website:
curl https://repo.jellyfin.org/install-debuntu.sh | sudo bash
RHEL
Enable rpmfusion:
sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
Install Jellyfin:
sudo dnf install jellyfin
Enable and start Jellyfin:
sudo systemctl enable --now jellyfin
After installation, log into Jellyfin by entering:
http://localhost:<your_port_here>
Documentation: https://jellyfin.org/docs/general/installation/linux
For Mac
Download a DMG file from the official website, drag the app to Applications, then launch it from the menu bar.
Make sure you remember the port number when you set everything up. Then, log into Jellyfin by entering:
http://localhost:<your_port_here>
Documentation: https://jellyfin.org/docs/general/installation/macos
Accessing Your Server
At this point, we have a working media server. Create an account, add your video or music files to a new library, and now you can stream from any device on your local network by entering:
http://<jellyfin_server_ip>:<your_port_here>
You can find your device’s IP address on Windows by opening Command Prompt and running ipconfig. On Linux or Mac, use ifconfig or simply ip.
Enabling External Access
The final step is to enable external access to your server, so that you can watch Texas Chainsaw Massacre while you’re in a McDonald’s restroom.
There are a few ways you can do this:
Port Forwarding
I don’t recommend this method because it opens up your network to attacks from the outside. If (and only if) you know what you are doing, enter your router’s IP address (generally 192.168.1.1, but double check) into your browser. Log in, find the port forwarding settings, and enter the media server IP and port number. Then test it to make sure it works.
Tailscale
Tailscale is one of the safest and easiest ways to get secure remote access. It sets up its own VPN (tailnet) using WireGuard. Just sign up, register your device, and use the IP address that Tailscale provides you.
Documentation: https://tailscale.com
And that's it. We now have our own mini-Netflix! I hope you've enjoyed this tutorial.