86
Sharing Jellyfin (poptalk.scrubbles.tech)

Hi folks. So, I know due to a myriad of reasons I should not allow Jellyfin access to the open internet. However, in trying to switch family over from Plex, I'll need something that "just works".

How are people solving this problem? I've thought about a few solutions, like whitelisting ips (which can change of course), or setting up VPN or tail scale (but then that is more work than they will be willing to do on their side). I can even add some level of auth into my reverse proxy, but that would break Jellyfin clients.

Wondering what others have thought about for this problem

top 50 comments
sorted by: hot top new old
[-] daniskarma@lemmy.dbzer0.com 46 points 1 year ago* (last edited 1 year ago)

You can share jellyfin over the net.

The security issues that tend to be quoted are less important than some people claim them to be.

For instance the unauthorized streaming bug, often quoted as one of the worst jellyfin security issues, in order to work the attacker need to know the exact id of the item they want to stream, which is virtually impossible unless they are or have been an authorized client at some point.

Just set it up with the typical bruteforce protections and you'll be fine.

[-] BlackEco@lemmy.blackeco.com 19 points 1 year ago* (last edited 1 year ago)

This. Just setup fail2ban or similar in front of Jellyfin and you'll be fine.

[-] MaggiWuerze@feddit.org 10 points 1 year ago

It's not impossible, Far from it. The ids are not random uuids but hashes derived from the path. Since most people have a similar setup to organize their media, this gets trivial very fast

load more comments (5 replies)
load more comments (5 replies)
[-] Shimitar@downonthestreet.eu 26 points 1 year ago

You can share jellyfin on the net. I do.

The issues shared wide and large are mostly moot points, where the attacker needs to already have access to the jellyfin itself to have any surface.

Its FUD and I am convinced spread by Plex people in an effort to cover up their fuckup and enshittyfication.

[-] sugar_in_your_tea@sh.itjust.works 10 points 1 year ago

I love Jellyfin and use it. I also think the security issues are very serious and it's irresponsible to not fix them. At the very least they can make a new API and give users the option to enable or disable the insecure one until clients get updated. But they don't.

I've decided to remove public access to my Jellyfin server until it's resolved, though it's still accessible behind my VPN.

[-] possiblylinux127@lemmy.zip 8 points 1 year ago

That's a bad idea for so many reasons

The internet is full of bots pounding at your machines to get in. It is only a matter of time until the breach Jellyfin. At the very least you want a reverse proxy with proper security.

I don't see why you would put something like Jellyfin in the internet. Use a VPN solution.

[-] daniskarma@lemmy.dbzer0.com 8 points 1 year ago

I have had jellyfin exposed to the net for multiple years now.

Countless bots probing everyday, some banned by my security measures some don't. There have never been a breach. Not even close.

To begin with, of you look at what this bots are doing most of them try to target vulnerabilities from older software. I have never even seen a bot targeting jellyfin at all. It's vulnerabilities are not worth attacking, too complex to get it right and very little reward as what can mostly be done is to stream some content or messing around with someo database. No monetary gain. AFAIK there's not a jellyfin vulnerability that would allow running anything on the host. Most vulnerabilities are related to unauthorized actions of the jellyfin API.

Most bots, if not all, target other systems, mostly in search of outdated software with very bad vulnerabilities where they could really get some profit.

load more comments (2 replies)
[-] dogs0n@sh.itjust.works 3 points 1 year ago

The internet is full of bots pounding at your machines to get in. It is only a matter of time until the breach Jellyfin.

If you are talking about brute force attacks for your password, then use a good password.. and something like fail2ban to block ips that are spamming you.

This point doesn't exactly match, but: public services like google auth don't require users use vpns. They have a lot more money to keep stuff secure, but you may see my point.. auth isn't too trivial of a feature to keep secure nowadays. They implement similar protections, something to block spammers and make users have good passwords (if you dont use a good password, you are still vulnerable on any service).

[-] possiblylinux127@lemmy.zip 4 points 1 year ago

The password is totally irrelevant for the most part. The worst case is that they get access to the dashboard

The problem is when major security vulnerabilities are found like remote code execution

load more comments (8 replies)
[-] skoell13@feddit.org 17 points 1 year ago

I use a VPS and a Wiregusrd tunnel together with geoblocking and fail2ban. I've written my setup down, maybe this will help you https://codeberg.org/skjalli/jellyfin-vps-setup

[-] Chocrates@lemmy.world 14 points 1 year ago

When I did this I set up a VPN on my network and forced anyone that wanted to use it to get on my network.

[-] Blue_Morpho@lemmy.world 4 points 1 year ago

How does that work with Roku/smart TVs?

[-] Chocrates@lemmy.world 11 points 1 year ago

Probably doesn't. Might need to use the router to get the whole network on th vpn

load more comments (5 replies)
[-] ch8zer@lemmy.ca 12 points 1 year ago

AppleTV + Tailscale in and it’s been a flawless experience.

How do you do a tailscale with apple tv?

[-] ch8zer@lemmy.ca 10 points 1 year ago

You can install it right on the TV, they have a first party app.

load more comments (5 replies)
[-] Getting6409@lemm.ee 11 points 1 year ago* (last edited 1 year ago)

I expose jellyfin to the internet, and some precautions I have taken that I don't see mentioned in these answers are: 1) run jellyfin as a rootless container, and 2) use read-only storage where ever possible. If you have other tools managing things like subtitles and metadata files before jellyfin there's no reason for jellyfin to have write access to the media it hosts. While this doesn't directly address the documented security flaws with jellyfin, you may as well treat it like a diseased plague rat if you're going to expose it. To me, that means worst case scenario is the thing is breached and the only thing for an attacker to do is exfiltrate things limited to jellyfin.

[-] Darkassassin07@lemmy.ca 10 points 1 year ago

I'm so tired of seeing this overblown reaction to ancient non-news.

Yes, there are some minor vulnerabilities in Jellyfin; but they really really aren't concerning.

Unauthenticated, a random person could potentially (with some prior knowledge of this specific issue, and some significant effort randomly generating media UUIDS to tryout) retrieve/playback some media unauthorized. THATS IT. That's the ONLY real concern. And it's one you could mitigate with a fail2ban filter if you were that worried about it.

The other 'issues' here, are the potential for your already authenticated users to attack each others settings. Who do you share your server with that you're concerned about them attacking each other???

Put this to bed and stop fussing over it. It's genuinely not worth your time or attention. Exposing Jellyfin to the net is fine.

Dev comment on the situation: (4 days ago) https://github.com/jellyfin/jellyfin/issues/5415#issuecomment-2825240290

[-] Xanza@lemm.ee 9 points 1 year ago

There are two routes. VPN and VPS.

VPN; setup wireguard and offer services to your wireguard network.

VPS; setup a VPS to act as a reverse proxy for your jellyfin instance.

Each have their own perks. Each have their own caveats.

[-] possiblylinux127@lemmy.zip 3 points 1 year ago

The VPS would still involve exposing it

[-] Xanza@lemm.ee 4 points 1 year ago

You're exposing your jellyfin instance to a single IP, your VPS. That's what a reverse proxy is.

You block all communication from any IP but local, and your VPS IP from jellyfin, and forward web traffic from your VPS to your jellyfin instance. It's not the same as exposing your jellyfin instance directly. Not sure why I have to explain that...but here we are, I guess.

I do. I run it behind a caddy service so it's secured with an SSL. The port is running on a high non standard one. I do keep checking access logs but haven't had a peep apart from the 1 person I shared it with

load more comments (2 replies)
[-] non_burglar@lemmy.world 8 points 1 year ago

Oof, a lot of vitriol in this thread.

In the end, security is less about tooling and config, and more about understanding the risks and acting accordingly.

I expose jellyfin to the internet, but only to a specific public IP. That reduced my risk considerably.

[-] merthyr1831@lemmy.ml 6 points 1 year ago* (last edited 1 year ago)

I have it as an unprivileged container behind a reverse proxy and HTTPS/HSTS. I know it's not perfect but I keep backups of important shit and monitor things regularly.

I agree that Jellyfin needs to improve its API security, though. Their excuse that "it would break clients on old APIs" is moot when C# comes with API versioning features out of the box.

[-] fishynoob@infosec.pub 6 points 1 year ago

I don't do this, but I would set up oAuth like Authelia or something behind a reverse-proxy and authenticate Jellyfin clients through that.

that's what I'd like personally, but I don't think the clients would play nice with that

load more comments (1 replies)
[-] possiblylinux127@lemmy.zip 5 points 1 year ago* (last edited 1 year ago)

Netbird/Tailscale

You also could use Wireguard as it is a p2p protocol by default.

If you have IPv6 access you could put in on a IPv6 address

[-] RonnyZittledong@lemmy.world 5 points 1 year ago

You could probably set up a cloudflare tunnel. I forget what they call it. I think technically sending video through it is against their TOS but if just a few friends and family are using it I doubt you will hit their naughty list.

load more comments (2 replies)
[-] Codilingus@sh.itjust.works 4 points 1 year ago

Reverse proxy with CrowdSec, which has setups specifically for Jellyfin. Docker for everything.

load more comments (13 replies)
[-] themachine@lemmy.world 3 points 1 year ago

I just expose it to the internet.

load more comments (4 replies)
[-] Appoxo@lemmy.dbzer0.com 3 points 1 year ago

I share Jellyfin.

Behind a Reverse Proxy with 2FA that breaks client support.
So only web browser :)

[-] TheButtonJustSpins@infosec.pub 3 points 1 year ago

I've been making people use VPN, but that's been a huge barrier to entry. I'm in the process of switching to IP allow list in traefik.

[-] lowspeedchase@lemmy.dbzer0.com 3 points 1 year ago

Making a note so I can find this again - also I have been loving JellyFin over Plex.

[-] Blue_Morpho@lemmy.world 3 points 1 year ago
[-] lowspeedchase@lemmy.dbzer0.com 4 points 1 year ago

Yup, I like jelly more - not that I have one running over the other lol

[-] Blue_Morpho@lemmy.world 4 points 1 year ago

I thought there was some way to use Jelly on the backend with a Plex client!

load more comments
view more: next ›
this post was submitted on 25 Apr 2025
86 points (97.8% liked)

Selfhosted

62781 readers
1050 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

Detailed Rules Post

  1. Be civil.

  2. No spam.

  3. Posts are to be related to self-hosting.

  4. Don't duplicate the full text of your blog or readme if you're providing a link.

  5. Submission headline should match the article title.

  6. No trolling.

  7. Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.

  8. AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 3 years ago
MODERATORS