Een reverse proxy is een server of softwaretoepassing die zich tussen clients en backend-servers bevindt, clientverzoeken onderschept en deze doorstuurt naar de juiste backend-servers. In tegenstelling tot een traditionele forward proxy die uitgaande clientverzoeken afhandelt, beheert een reverse proxy inkomende clientverzoeken namens backend-servers. Het fungeert als tussenpersoon die de beveiliging verbetert, de prestaties verbetert en extra functies biedt, zoals taakverdeling, SSL-beëindiging, caching en WAF-beveiliging (Web Application Firewall).
Omgekeerde proxy’s worden veelvuldig gebruikt bij webhosting, applicatielevering en beveiligingsarchitecturen. Ze dienen verschillende belangrijke doelen, waaronder:
- Load Balancing: het distribueren van inkomende clientverzoeken over meerdere backend-servers om het gebruik van bronnen te optimaliseren en de applicatieprestaties te verbeteren.
- SSL-beëindiging: het decoderen van SSL/TLS-gecodeerd verkeer op de omgekeerde proxy voordat het wordt doorgestuurd naar backend-servers, waardoor de rekenlast op backend-bronnen wordt verminderd.
- Caching: het opslaan van veelgebruikte inhoud aan de rand van het netwerk om de responstijden te verkorten en de serverbelasting te verlagen.
- Beveiliging: fungeert als schild tussen clients en backend-servers, beschermt tegen aanvallen zoals DDoS (Distributed Denial of Service) en biedt een gecentraliseerd punt voor het implementeren van beveiligingsbeleid zoals toegangscontrole en WAF-regels.
Een reverse proxy is niet hetzelfde als een Virtual Private Network (VPN). Hoewel bij beide technologieën intermediaire servers betrokken zijn, dienen ze verschillende doeleinden. Een reverse proxy beheert en optimaliseert het verkeer tussen clients en backend-servers, waarbij de nadruk ligt op prestatieverbetering en beveiliging voor server-side applicaties. Een VPN daarentegen brengt een veilige, gecodeerde tunnel tot stand tussen een clientapparaat en een externe server, waarbij al het verkeer dat er doorheen gaat wordt gecodeerd om de privacy te beschermen en de gegevensintegriteit te garanderen.
NGINX wordt vaak een reverse proxy genoemd omdat het uitblinkt in het afhandelen van inkomende clientverzoeken en het efficiënt doorsturen ervan naar backend-servers. Oorspronkelijk ontworpen als een krachtige webserver, is NGINX geëvolueerd met robuuste reverse proxy-mogelijkheden. Het staat bekend om zijn vermogen om grote hoeveelheden gelijktijdige verbindingen te verwerken, taakverdeling over backend-servers uit te voeren en SSL/TLS-beëindiging effectief te beheren. De architectuur en functies van NGINX maken het een populaire keuze voor het verbeteren van de prestaties, schaalbaarheid en beveiliging van webapplicaties en -services die in diverse omgevingen worden ingezet.