I am hosting few services for my friends and family on my server. Due to devices limitations, I can’t install VPN on TVs etc. Is it possible to restrict the access to only those users that have a certificate issued by me?
I doubt you’ll be able to install client certificates on TVs either. Typically you’d establish a site to site VPN in each location’s network stack.
Use mTLS (mutual TLS) also called client certificates with nginx or whatever your webserver is
mtls over nginx is the simplest way. but be aware that while it works great on desktop browsers, other reduced browsers (incl mobile) often don’t support it.
Personally I use Caddy reverse proxy server and Pihole. I have configured my IP as a domain name in local DNS (example.com).
Caddy supports automatic TLS 1.3 support. So I just copied the CA file snd I installed to all of my devices (even in my Oculus Quest 2). I want to watch movies? I am coming to movies.example.com. i want to read my books? bookd.example.com.
Caddy configuration is very easy, even using containers with docker.
Are you able to open it to the internet and put these services behind an auth proxy? that might be the way to do it. Or if it already has login you might be able to put it behind a cloudflare WAF or similar and restrict bots and bad actors.
deleted by creator