this post was submitted on 30 Oct 2026
170 points (100.0% liked)

Selfhosted

63437 readers
455 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
 

Hi all,

I am running proxmox on a mini PC with a handful of services in my stack. I also run NPM in an LXC to reach my services through my domain name (service.domain.tld).

For my Arr related stuff, I use Usenet, and everything runs through a VPN.

I have three services which are public. Jellyfin, Seer and BookOrbit (for syncing Kobos).

Currently I have no security besides the built in login managers from the services, but I am considering setting up Authentik. I know I'm asking for trouble with my current set up.

I have elderly and extremely tech averse family members who live in two countries other than me, so tech support can be a challenge.

A lot of people suggest running a VPN, but it would be difficult for my family and I don't know how to make it work syncing our Kobos with BookOrbit.

I've also seen some posts about tunneling to a VPS somewhere and users can connect to the VPS without a VPN.

I feel this question has been asked several times, and I tried searching here and on the internet in general, but my knowledge is not good enough to use the right terms and to get something that is idiot proof.

Any suggestions on best practices or links to guides you recommend would be much appreciated. Also, what EU based affordable VPS would you recommend?

(page 2) 28 comments
sorted by: hot top controversial new old
[–] Treczoks@lemmy.world 4 points 2 days ago (1 children)

Ask yourself: is there any service that really, really needs to be public? Or is this only about availability for you or a very limited group (family, friends), which could be implemented via a VPN solution?

[–] neo2478@sh.itjust.works 2 points 2 days ago (2 children)

It's just for family, but elderly family in two different very far away countries, across multiple devices.

[–] Treczoks@lemmy.world 2 points 2 days ago

See that you get a solid VPN bridge, much better than trying to fix a ton of different services if things go awry.

load more comments (1 replies)
[–] fonix232@fedia.io 6 points 2 days ago (4 children)

Authentik (and other auth systems) are super heavy for single/low-user systems. They're geared for more MSO use than SOHO. For auth, I'd really recommend something lighter, like Pocket-ID (as long as you don't mind passkeys instead of passwords - Seerr and BookOrbit support WebAuthn so you can use it directly, and Jellyfin supports it with an extension for the web interface + you can set password for a Jellyfin account for clients that need direct auth). For any service that doesn't support it, Pocket-ID has an auth gateway/wrapper you can use with your reverse proxy (I use Caddy, config is fairly straightforward).

For security, I'd recommend some automated IDP systems. You could run Suricata on your router (if it can host heavier apps), which is what Ubiquiti uses. It can talk to your firewall and set up rules on the fly to block intrusions, specific users etc.

Beyond that I'd also recommend crowdsec. One half is the detection (you hook it up as part of your reverse proxy, so it can inspect packets and full flows), and the other is the actioning (you hook it up with your router/gateway/firewall to apply blocking rules). Big benefit is that their open database (the free to access one) has all the 0-day fingerprints and CVE-specific behaviour is detected and blocked.

Here's a quick preview of what it's been doing today on my setup:

altr

Since most indirect attackers (people randomly probing your homelab instead of directly targeting you and your services) will come from various data centers (routed through a VPS or directly relying on the infrastructure), a 4h block is generally enough to not interrupt other services while blocking attackers from probing once they hit a limit.

And of course you also need proper container network setups. For example, every single container I can, I run in rootless, read-only mode. This means the container itself can't be edited - only a handful of paths (left as volume mount points) are RW: the config folder, media folders only if the container needs write access to them, and caches. Each path is mounted noexec so even if a backdoor is found into the container, the attacker can't do much as they can't execute anything they'd deliver as payload (can't write to paths that are executable, can't execute from writeable paths), and since the container is rootless, there aren't many tools to run: no ash/bash/zsh/fish, no interactive shell at all, no operating system beyond a barebones Linux kernel and the bare minimum tooling needed for the specific software.

Docker networking is also hardened, with routing strictly limited, and containers only seeing other containers they need access to.

I'd also recommend using LLMs to expand on your security. No I'm not talking about giving Claude access to your entire network and homelab... But you can ask for general hardening guidance, and most frontier models will gladly walk through your stack using basic reporting (you run a command on the homelab nodes, it returns a report, you give that report to the model), and give recommendations on making it more secure.

load more comments (4 replies)
[–] Klox@lemmy.world 6 points 2 days ago* (last edited 2 days ago)

to get something that is idiot proof.

The problem with Jellyfin in particular is that it needs to support binary streaming protocols. You can implement some gateway/firewall-based security in front of Jellyfin, but in the end it is still Jellyfin's internal mechanisms mostly responsible for its own security. I don't use Authentik but I have read many good things. The only real "advantage" of it is that it forces your users to somewhat better credential handling. Jellyfin still only supports LDAP, so the users will have to enter their Authentik username and password -- very similar to just local accounts managed by Jellyfin. So IMO, not offering you that much extra in terms of security. You will be better served by firewall tools like fail2ban, crowdsec, geo-fencing, etc.

Depending on where/how your users access Jellyfin you could have something a bit tighter. If they never run it on a TV you could do something more advanced like mTLS where you issue them a certificate with a TTL of several years, walk them through installing it on their phones/laptops, and then have that in a reverse proxy. But at that point you might as well walk them through setting up a VPN mesh network.

For Seerr, it's just a standard web app .You could put a reverse proxy in front that requires OIDC with Authentik. Seerr is also pretty close to having native OIDC integration. Personally I prefer having two rounds of OIDC -- reverse proxy really narrows what the public can see as a first layer.

For BookOrbit, I am not familiar enough with the Kobos. My guess is, you could put BookOrbit behind a reverse proxy that enforces OIDC, but you might have to allow a bypass for /api route. Then you're relying on BookOrbit to authenticate all /api requests through API tokens. This would look like the normal Kobo linking process, so no real difference, but then your BookOrbit web UI is locked behind OIDC authentication.

[–] GreenKnight23@lemmy.world 4 points 2 days ago (1 children)

I have three services which are public. Jellyfin, Seer and BookOrbit (for syncing Kobos).

1000004791

don't expose services to the internet. expose a proxy.

Imagine if your house had doors to the outside for every room in your house. not very secure, right?

I'm going to hope when you mentioned NPM you were referring to nginx proxy manager.

also, use a separate host for your proxy that is firewalled off from everything else on your network other than the host with your services and only on those specific ports. it doesn't have to be powerful, just has to have a fast network connection. I wouldn't use anything less than 1gbps. you could vlan as well, but that would require advanced routing or a second NIC for your services host. don't forget to firewall your services host off the rest of your network.

finally, monitor the shit out of that proxy host. use SIEM tools like graylog, wazuh, splunk, etc. you cannot make an impenetrable fortress, it's only a matter of time before you experience a penetration. setting up proper logging and alerting is imperative to securing your network.

[–] neo2478@sh.itjust.works 2 points 2 days ago (1 children)

Yes everything goes through nginx proxy manager and I only forward port 443 in my router.

I guess running NPM on a raspberryPi could work?

[–] GreenKnight23@lemmy.world 2 points 2 days ago* (last edited 2 days ago)

it should as long as it's got that 1gbps Ethernet. 100mbps just won't be enough for video streaming with jellyfin.

having it separate also allows you to patch routinely with minimal downtime.

[–] Decronym@lemmy.decronym.xyz 3 points 2 days ago* (last edited 16 hours ago)

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
AP WiFi Access Point
DNS Domain Name Service/System
NAS Network-Attached Storage
NAT Network Address Translation
SSD Solid State Drive mass storage
SSH Secure Shell for remote terminal access
VPN Virtual Private Network
VPS Virtual Private Server (opposed to shared hosting)
nginx Popular HTTP server

[Thread #151 for this comm, first seen 30th Oct 2026, 19:00] [FAQ] [Full list] [Contact] [Source code]

[–] brewery@feddit.uk 3 points 2 days ago

Hetzner is great as a provider, highly recommend.

I use authentik with fail2ban, crowdsec and ufw. I use netbird to act as a VPN between different servers - most services need users to login through there but have a couple on the internet. I also restrict countries to ones my clients are on and update when im going on holiday.

I use caddy as my reverse proxy with rate limits and crowdsec. I moved from NPM just to try it and liked it.

SSH is on a different port and restricted to keys only. I also setup ntfy to notify my phone if there are logins (to check it's just me).

I use unattended upgrades for security but try to upgrade frequently the servers and docker services.

Hetzner is usually the top choice for non us cloud

Wireguard is fairly simple to configure and many routers support it; it could be made to be transparent to your relatives.

[–] possiblylinux127@lemmy.zip -5 points 2 days ago* (last edited 2 days ago) (1 children)

Don't put them on the internet. Seriously, don't put stuff on the internet. These days critical CVEs are coming out weekly and it is unlikely that you even detect the compromise.

What is your use case? Maybe there is a better way

[–] neo2478@sh.itjust.works 1 points 2 days ago (1 children)

Family members on two different countries connect to my Jellyfin server from several devices (phones and android boxes), seer for requests, and BookOrbit for their ereaders.

[–] possiblylinux127@lemmy.zip 2 points 2 days ago* (last edited 2 days ago) (3 children)

You need a VPN. It will cause inconveniences but the way currently have it setup is highly vulnerable to attack. I would look into something like Netbird or just a plain Wireguard VPN. If they are connecting primarily from home you could always setup a simple proxy device that forwards connections over a VPN from the local network.

Security should absolutely come first. If you can't provide basic security I wouldn't recommend hosting anything especially for other people.

[–] neo2478@sh.itjust.works 1 points 2 days ago

For enough. I recognize I am very uninformed in this area, and most of my resistance is due to the high effort of setting things up remotely.

I've seen a lot posted about netbird. What's the advantage of that vs wireguard?

load more comments (2 replies)
load more comments
view more: ‹ prev next ›