No awards are needed, just wanted to share my excitement that while my Jellyfin server still keeps loosing my entire library every 24 hours at least now it has a domain and ssl cert!
That is all. Happy Friday everyone
I don’t trust my self with this kind of responsibility.
a domain and cert doesn’t equal zero trust network.
Right. Zero trust means at the very least you need to add AuthN and AuthZ to every endpoint with no exceptions for internal IP addresses.
I do also have a zero trust network. Zero friends= zero trust
Lol.
Still got the library issue, eh? Gonna have to just turn off services/apps/processes until you find the culprit.
lol, yeah. Gitea is next on the list, but I don’t have much more I’m afraid, Immich and Nextcloud are critical apps for me, so if it isn’t gitea or minecraft, then I might just setup a new server out of an old laptop to be my Jellyfin server and migrate my library there.
Are you losing your library on reboot?
Not even on reboot, it just get’s deleted somehow, been happening for the past couple of months and I haven’t been able to figure out why yet. I posted all about it here (https://lemmy.world/post/32756942) if you are interested in reading about it.
Do you have the media cleanup plugin installed for Jellyfin? I wonder if you change the PUID and/or GUID if you couldn’t make sure Jellyfin wasn’t the source of the deletion.
I don’t have that plugin from what I can tell, and I did not install it manually either. What should I try changing the PUID and GUID to?
I would think the Jellyfin logs would say if it deleted something. But I have to say, I cannot fully understand GUID and PUID in all cases. But you can try to subtract 1 digit from PUID (100 to 99) and then try to delete a show or movie within Jellyfin’s interface. If it won’t do it, then you’ve got the permissions at least where it can’t delete things. It is possible to not view things as well, so it might take some research or trial and error and make sure you write down where it is now. But, it will remove one factor at least.
Finally caught it! It was Jellyfin stupid ass deleting my media!
Can you spin up a VM or a docker image?
I’ve done this when services misbehave, and just migrate the DB over (Syncthing in particular).
I may try that at some point but work keeps me pretty busy so it may take me a few weeks before I can try.
You didn’t expose it to the internet right?
If you want remote access setup client certs
What’s wrong with exposing Jellyfin to the internet?
Nothing. People fearmonger
There are a few security issues with it, but all of the worst known issues require a valid login token. So an attacker would already need to have valid login credentials before they could actually do anything bad. Things like being able to stream video without authentication (but it requires already having a list of the stored media on the server, which means you have been logged in before). Or being able to change other users’ settings (but it requires already being logged in to a valid user).
Basically, make sure you use good passwords, and actually trust any other users to do the same.
The bug you mentioned actually just requires the attacker knows your local media paths to generate the hash. The issue is that most people use trash guides to setup *arr which means they probably have the same paths for everything
You really shouldn’t expose anything directly to the internet. It is a security problem waiting to happen. (Assuming it hasn’t already)
This is how giant botnets form.
What security problems?
Bots randomly attack stuff, and if you leave something insecure, they’ll install a bot net node.
How?
Ya got three options.
Option A is to create your own certificate that is self-signed. You will then have to load the certificate into any client you want to use. Easier than people realize, just a couple terminal commands. Give this a go if you want to learn how they work.
Option B is to generate a certificate with Let’s Encrypt via an application like certbot. I suggest you use a DNS challenge to create a wildcard certificate.
Option C is to buy a certificate from your DNS provider aka something like cloudflare.
IMO the best is Option B. Takes a bit to figure it out but its free and rotates automatically which I like.
I like helping and fixing stuff, if you’d like to know anything just ask :D
None of these are client certificates btw. These are just ways to have your server use TLS encryption with any client that connects but it offers no authorization. If you want authorization with client certificates you need to implement mTLS (Mutual TLS).
Nor is it authentication.
deleted by creator
Oooo ya know I actually don’t know about these. I’ve done both A and B for my homelab and C for work.
Any good resources / insight into mTLS? I appreciate the response btw!
https://www.youtube.com/watch?v=YhuWay9XJyw
You really should not expose stuff to the internet willy nilly. If you must you need to have extensive monitoring and security controls plus you should understand the application at a deep level.
Google?
Well ya know this is a forum and I was trying to engage in a friendly conversation to learn about something you brought up.
But yeah I know how to fucking Google lol
Yes it’s a forum. But just because I corrected your error doesn’t mean I am obligated to do a whole fucking write up for you or go to google myself for you. Grow up.
That is for server side certs not client side. I’m talking about Mutual TLS.
Setting up https is not going to stop bots. All it does is prevent man in the middle attacks. You want to limit who and what can access Jellyfin so that you don’t end up being a victim of an automated exploit.
Kleopatra
That isn’t mutualTLS
It just is a frontend for gpg. You need OpenSSL for mutual certs.