Tip: zorg altijd voor een Reverse proxy bj self hosting!
Om het beheer nog verder te vergemakelijken is het zeer aan te raden al het inkomend verkeer via een zgn. "reverse proxy" op te vangen en door te sturen naar de achterliggende self hosted dienst. Een reverse proxy is
een server die tussen clients en één of meer webservers staat. Hij onderschept alle binnenkomende verzoeken van clients, stuurt deze door naar de juiste webserver en stuurt het antwoord vervolgens terug naar de client. Dit verbetert de beveiliging, prestaties en betrouwbaarheid van de servers. Inkomend verkeer (vanuit WAN) heet "Ingress/inbound traffic" terwijl uitgaand verkeer "Egress/outbound traffic" heet.
No regret
Voordelen van een reverse proxy zijn dat "ingress" tot de reverse proxy komt en niet verder. De proxy handelt immers zelf het achterliggende verkeer af. Tevens kan de reverse proxy automatisch de certificaat afhandeling automatiseren en daarmee is de dienst altijd voorzien van een geldig certificaat. Daarnaast kan de reverse proxy ook bij een hoog beschikbaarheids scenario (High Availablity) de traffic load-balancing verzorgen.
Het mag duidelijk zijn dat een reverse proxy een "no-brainer" is, juist bij self hosting! De moeite van het inrichten van de reverse proxy staat niet in verhouding met de overhead in beheer en daaruit volgende hoofdpijn bij het overslaan hiervan.
populaire reverse proxies
Proxy - Sterke punten - Use cases
NGINX - Lichtgewicht, razendsnel, ingebouwde caching en load balancing - Websites, API’s, reverse proxy voor webapps.
NGINX Proxy manager - kant-en-klare container image van NGINX met een ingebouwde webinterface (GUI) om reverse proxies te beheren - Ideaal voor homelabs en kleine netwerken.
HAProxy- Zeer robuust, uitgebreide load balancing, health checks - Enterprise setups, high-availability clusters.
Apache mod_proxy - Klassiek, veel modules, integratie met Apache - Legacy apps, eenvoudige proxy setups.
Caddy - Automatische HTTPS (Let’s Encrypt), moderne configuratie - Homelabs, self-hosting, snelle TLS setup.
Traefik - Dynamische configuratie, Docker/Kubernetes integratie - Cloud-native, microservices, container orchestration.
In mijn homelab setup stoei ik zowel met Caddy als Traefik.