10 Top Open Source Reverse Proxy Servers voor Linux

A reverse proxy server is a type of proxy server that is deployed between clients and back-end/origin servers, for example, an HTTP server such as NGINX, Apache, etc.. or application servers written in Nodejs, Python, Java, Ruby, PHP, and many other programming languages.

Het is een gateway of een tussenliggende server die een clientverzoek ontvangt, doorstuurt naar één of meer achterliggende servers, en vervolgens de respons van de server ophaalt en terugstuurt naar de client, waardoor het lijkt alsof de inhoud afkomstig is van de omgekeerde proxyserver zelf.

Over het algemeen is een omgekeerde proxyserver een intern gerichte proxy die wordt gebruikt als een ‘front-end’ om toegang tot en bescherming van achterliggende servers op een privénetwerk te beheren: het wordt meestal ingezet achter de netwerkfirewall.

Het helpt achterliggende servers om anonimiteit te bereiken om hun beveiliging te verbeteren. In IT-infrastructuur kan een omgekeerde proxy ook fungeren als een toepassingsfirewall, load balancer, TLS-terminator, webversneller (door statische en dynamische inhoud te cachen) en nog veel meer.

In dit artikel zullen we de 10 beste open-source omgekeerde proxyservers bekijken die u kunt gebruiken op een Linux-systeem.

1. HAProxy – (TCP/HTTP Load Balancer)

HAProxy (HAProxy, wat staat voor High Availability Proxy), is gratis, open-source, zeer snel, betrouwbaar en eersteklas load balancer en proxy-software voor TCP- en op HTTP gebaseerde toepassingen, gebouwd voor hoge beschikbaarheid.

HAProxy is een HTTP-reverse-proxy, een TCP-proxy en normalizer, een SSL/TLS-terminator/initiator/offloader, een caching-proxy, een HTTP-compressie-offloader, een verkeersregelaar, een content-gebaseerde schakelaar, een FastCGI-gateway, en meer. Het is ook een bescherming tegen DDoS en service misbruik.

Het wordt aangedreven door een op gebeurtenissen gebaseerde, niet-blokkerende engine die een zeer snelle I/O-laag combineert met een op prioriteiten gebaseerde, multi-threaded scheduler waardoor het gemakkelijk kan omgaan met tienduizenden gelijktijdige verbindingen.

Opmerkelijk gebruikt HAProxy het PROXY protocol om de verbindingsinformatie van de client door te geven aan de backend- of origin-servers zodat een applicatie alle relevante informatie krijgt.

Enkele van de basisfuncties van HAProxy zijn het doorsturen van proxies, SSL-ondersteuning, het controleren van zowel serverstatussen als hun status, hoge beschikbaarheid, load balancing, stickiness (het behouden van een bezoeker op dezelfde server zelfs bij verschillende gebeurtenissen), content switching, HTTP-herziening en doorverwijzing, serverbescherming, logging, statistieken, en nog veel meer.

2. NGINX – (HTTP- en Reverse Proxy-webserver)

NGINX is een gratis, open-source, high-performance en zeer populaire HTTP-server en reverse proxy. Het functioneert ook als een IMAP/POP3 proxyserver. NGINX staat bekend om zijn hoge prestaties, stabiliteit, rijke set functies, eenvoudige en flexibele configuratie, en laag verbruik van resources (vooral klein geheugengebruik).

Net als HAProxy heeft NGINX een op gebeurtenissen gebaseerde architectuur, dus het heeft geen probleem om tienduizenden gelijktijdige verbindingen af te handelen, omdat het gebruikmaakt van het PROXY-protocol van HAProxy.

NGINX ondersteunt versnelde reverse proxying met caching met behulp van de ngx_http_proxy_module, waarmee aanvragen kunnen worden doorgestuurd naar een andere server via protocollen anders dan HTTP, zoals FastCGI, uwsgi, SCGI en Memcached.

Belangrijk is dat het load balancing en fouttolerantie ondersteunt, die cruciale aspecten zijn van grootschalige gedistribueerde computersystemen. De ngx_http_upstream_module maakt het mogelijk groepen back-end-servers te definiëren om de aanvragen van clients te verdelen.

Dit maakt uw toepassingen robuuster, beschikbaar en betrouwbaarder, zeer schaalbaar, met responsietijd en doorvoer. Daarnaast ondersteunt het wat beveiliging betreft SSL/TLS-beëindiging en vele andere beveiligingsfuncties.

Nuttige artikelen over de Nginx-webserver die u mogelijk interessant vindt om te lezen:

3. Varnish – (Omgekeerde Cache-Proxy)

Varnish HTTP-cache (of Varnish-cache of gewoon Varnish) is gratis, open-source, high-performance, en zeer populair caching reverse-proxy software beter bekend als een webapplicatieversneller, ontworpen om de HTTP-prestaties te verbeteren door middel van server-side caching.Het wordt ingezet tussen een client en een HTTP-webserver of applicatieserver; elke keer dat een client informatie of een resource van een webserver opvraagt, slaat Varnish een kopie van de informatie op, dus de volgende keer dat de client dezelfde informatie opvraagt, zal Varnish deze serveren zonder een verzoek naar de webserver te sturen, waardoor de belasting op de server wordt verminderd en dus de levering van webinhoud versnelt.

Varnish gebruikt een flexibele configuratietaal die bekend staat als de Varnish Configuration Language (VCL), die onder andere systeembeheerders in staat stelt te configureren hoe inkomende verzoeken moeten worden verwerkt, welke inhoud moet worden geserveerd, en van waar, en hoe het verzoek of de respons moet worden gewijzigd, en nog veel meer.

De vernis is ook uitbreidbaar – het kan worden uitgebreid met behulp van Varnish-modules (VMODs) en gebruikers kunnen hun eigen modules schrijven of door de gemeenschap geleverde modules gebruiken.

De belangrijkste beperking van Varnish is het gebrek aan ondersteuning voor SSL/TLS. De enige manier om HTTPS in te schakelen is door een SSL/TLS-terminator of offloader te implementeren zoals HAProxy of NGINX ervoor.

4. Træfɪk – (De Cloud Native Application Proxy)

Træfɪk (uitgesproken als Traffic) is een gratis, open-source, modern en snel HTTP-reverse-proxy en load balancer voor het implementeren van microservices die meerdere load-balancing algoritmen ondersteunt.

Het kan communiceren met verschillende providers (of service discovery mechanismen of orchestration tools) zoals Kubernetes, Docker, Etcd, Rest API, Mesos/Marathon, Swarm en Zookeper.

Zijn aantrekkelijke functie is het vermogen om zijn configuratie automatisch en dynamisch te beheren, waardoor de juiste configuratie voor uw services wordt ontdekt. Dit gebeurt door uw infrastructuur te scannen om relevante informatie te vinden en te ontdekken welke service welk verzoek vanuit de externe wereld bedient. De providers vertellen Træfɪk waar uw applicaties of microservices zich bevinden.

Andere functies van Træfɪk worden ondersteund voor WebSockets, HTTP/2 en GRPC, hot reloading (continue bijwerken van de configuratie zonder herstarts), HTTPS met behulp van Let’s Encrypt certificaten (ondersteuning voor wildcard certificaten) en het blootstellen van een REST API. Het houdt ook toegangslogs bij en levert statistieken (Rest, Prometheus, Datadog, Statsd, InfluxDB).

Bovendien wordt Træfɪk geleverd met een eenvoudige op HTML gebaseerde webgebruikersinterface die wordt gebruikt om gebeurtenissen in de gaten te houden. Het ondersteunt ook circuit breakers, het opnieuw proberen van verzoeken, het beperken van snelheden en basisauthenticatie.

5. Apache Traffic Server – (Reverse en Forward Proxy Server)

Voormalig een commercieel product in bezit van Yahoo dat later overgedragen werd aan de Apache Foundation, is Apache Traffic Server een gratis, open-source en snelle caching forward en reverse-proxy server.

De Traffic Server werkt ook als een load balancer en kan deelnemen aan flexibele cache-hiërarchieën. Het staat bekend om het verwerken van meer dan 400 TB aan verkeer per dag bij Yahoo.

Het beschikt over een reeks keep-alive, filtering of anonimiseren van inhoudsverzoeken en is uitbreidbaar via een API waarmee gebruikers aangepaste plugins kunnen maken om HTTP-headers te wijzigen, ESI-verzoeken af te handelen of nieuwe cache-algoritmen te ontwerpen.

6. Squid – (Caching en Forwarding HTTP Proxy)

Squid is een gratis, open-source en goed bekende proxyserver en Web-cache daemon die verschillende protocollen ondersteunt zoals HTTP, HTTPS, FTP en meer. Het heeft een reverse proxy (httpd-accelerator) modus die inkomende verzoeken voor uitgaande gegevens cacht.

Het ondersteunt rijke verkeersoptimalisatie-opties, toegangscontrole, autorisatie, loggingfaciliteiten en nog veel meer.

7. Pound – (Reverse Proxy en Load Balancer)

A Pound is another free and open-source, lightweight reverse proxy and load balancer and front-end for web servers. It is also an SSL terminator (that decrypts HTTPS requests from clients and sends them as plain HTTP to the back-end servers).

Een HTTP/HTTPS-sanitizer (die verzoeken controleert op juistheid en alleen goed gevormde accepteert), en een fail-over server.

8. Apache – (HTTP-webserver)

Apache HTTP-server (ook bekend als HTTPD), de meest populaire webserver ter wereld kan ook worden ingezet en geconfigureerd om als reverse proxy te fungeren.

Apache excelleert in het routeren van clientverzoeken naar backend servers, het verbeteren van beveiliging, load balancing en het optimaliseren van de prestaties van webapplicaties. Door op te treden als tussenpersoon kan Apache binnenkomend verkeer efficiënt verdelen over meerdere serverinstanties, zorgen voor hoge beschikbaarheid en naadloze gebruikerservaringen.Zijn robuuste en aanpasbare configuratieopties maken het een topkeuze voor organisaties die op zoek zijn naar een betrouwbare oplossing voor reverse proxy-behoeften, of het nu gaat om content-caching of applicatielevering.

Zijn robuuste en aanpasbare configuratie-opties maken het tot een topkeuze voor organisaties die op zoek zijn naar een betrouwbare oplossing voor omgekeerde proxybehoeften, of het nu gaat om inhoudscaching of toepassingslevering.

9. Skipper – (HTTP Router en Omgekeerde Proxy)

Skipper is een gratis en open-source HTTP router en omgekeerde proxy voor service-samenstelling, inclusief gebruiksgevallen zoals Kubernetes Ingress.

Het is ontworpen om te beheren een aanzienlijk aantal dynamisch geconfigureerde HTTP route-definities, overschrijdende 800.000 routes, met ingewikkelde zoekcondities, en biedt flexibiliteit om de aanvraagstroom te verbeteren met filters.

Het kan gemakkelijk geïmplementeerd worden zoals het is, of kan worden uitgebreid door het toevoegen van aangepaste zoekopdrachten, filterlogica en configuratiebronnen.

10 Caddy 2 – Snelle server met automatische HTTPS

Caddy 2 is een open-source webserver en omgekeerde proxy die bekend staat om zijn eenvoud en veelzijdigheid, en biedt een gebruiksvriendelijke interface en standaard automatische HTTPS, waardoor het een toegankelijke keuze is voor zowel beginners als ervaren gebruikers.

Caddy 2 is ontworpen om moeiteloos webhosting, HTTP/2, load balancing en proxying te beheren, waardoor de prestaties en beveiliging van websites worden verbeterd. De open-source aard ervan stimuleert bijdragen van de gemeenschap, en het heeft populariteit verworven vanwege het gebruiksgemak en moderne functies in de wereld van webhosting en serverbeheer.

Conclusie

Dat is alles wat we voor je hebben in deze gids. Voor meer informatie over elke tool in deze lijst, bekijk hun respectievelijke websites. Vergeet niet om je gedachten met ons te delen via het feedbackformulier hieronder.

Source:
https://www.tecmint.com/open-source-reverse-proxy-servers-for-linux/