My self-hosting experience is primarily with Plex and qBittorrent, but I’m trying to get a digital library set up that will be available remotely. I’ve been reading about some options, but I’m not sure about what is best to use or how to deploy it.
What is the best way to make Kavita available to remote users safely from a home server?
You’ll have to strike a balance between security and ease. Your two major options are reverse proxy and VPN (Tailscale is one option for VPN)
For reverse proxy, you functionally open the app to the internet. Anyone with the correct web address can access the login page. This is inherently less secure than VPN, but not irresponsibly so. Beyond the reverse proxy itself, you’ll also have to learn how to configure an HTTPS certificate to increase security since it will be open to the internet.
For VPN, every user you want to be able to access the service has to be tied into the VPN and have the VPN running throughout their access. Tailscale is arguably the easiest way to configure a VPN right now, as you won’t have to manually deal with VPN configuration files for every device. VPN use will functionally make it like you’re on your home network. VPN access to your network should not be given to tons of people if at all possible.
Note that Tailscale does not give other users access to your entire home network but just specific machines and you need to explicitly share those machines.
This is exactly what I need. I’m only trying to open one service in one container to the outside world.
Hm, in that case Tailscale isn’t quite what you want. It’s not about opening up to the internet but rather your own virtual private network (hey, a VPN) with manually approved devices.
They do have a new Funnel feature which allows exposing specific parts to the Internet via their proxy though: https://tailscale.com/blog/introducing-tailscale-funnel