Webservers worden de laatste jaren steeds populairder. Waar webservers vroeger vooral gebruikt werden door bedrijven om een bedrijfswebsite, en daarmee informatie over het bedrijf op het internet zichtbaar te maken, worden webservers tegenwoordig voor tal van diensten gebruikt. Er wordt tegenwoordig gekocht en verkocht via het internet en ook bedrijfstoegang, voor medewerkers en / of klanten, zoals webportals of intranetsites worden steeds vaker beschikbaar gemaakt via als een webdienst via het internet..
Deze ontwikkeling zorgt er natuurlijk voor dat de mogelijkheden voor bedrijven enorm groeien. Medewerkers van het bedrijf kunnen waar ze ook maar zitten, of dit nu thuis is, of in een internetcafe aan de andere kant wereld, altijd bij de bedrijfsgegevens, en kunnen dus hun werk verrichten. Bedrijven kunnen dienstverlening vergroten door klanten de mogelijkheid te geven via het internet zaken te doen. Zeker met het gemak waarmee medewerkers en klanten tegenwoordig het internet gebruiken is deze webtoegang voor veel bedrijven een onmisbaar bedrijfselement geworden.
Naast de enorme voordelen die webtoegang biedt, kent het ook een flink aantal nadelen. Webservers vormen al sinds jaar en dag een enorm beveiligingsrisico. Deze servers moeten immers vanaf elke plek op het internet bereikbaar zijn, en maken daarnaast gebruik van vaak cruciale, en vertrouwlijke bedrijfsgegevens. Deze twee zaken zorgen ervoor dat webservers voor hackers een aantrekkelijke prooi zijn.
Daarnaast moeten webservers 24×7 bereikbaar zijn. Vanaf elke plek ter wereld beschikbaar zijn, betekend immers ook in elke tijdzone beschikbaar zijn tijdens werkuren. Het gebruikersgemak zorgt er tevens voor dat webservers veel gebruikt worden. Gevolg: snelheid en schaalbaarheid worden belangrijk.
Is er voor al deze uitdagingen een passende oplossing? Zeker: Het gebruik van een reverse proxy.
Hoe werkt het
Een reverse proxy werkt als een soort woordvoerder voor de webserver. In plaats van de webserver direct aan het internet te hangen, wordt een reverse proxy aan de buitenwereld bekent gemaakt als de webdienst. Een gebruiker van de webdienst stuurt een aanvraag naar de reverse proxy. Deze checkt of de aanvraag geldig is, en of het wat kan met deze aanvraag. Als dat het geval is, stuurt de reverse proxy een gelijke aanvraag naar de webserver. De webserver antwoordt vervolgens aan de reverse proxy met de gevraagde informatie. De reverse proxy zorgt er dan voor dat dit antwoord bij de gebruiker van de webdienst terecht komt. Het antwoord wordt zo aangepast dat het lijkt alsof het antwoord van de reverse proxy af komt. Voor de gebruiker lijkt het dus alsof hij direct communiceerd met de webdienst, en de achterliggende server(s), terwijl de gebruiker in de praktijk alleen babbelt met een reverse proxy. Dit biedt tal van mogelijkheden.
Security
Het belangrijkste voordeel is wel dat de webserver in het interne, veilige netwerk geplaatst kan worden. Hierdoor kan er direct vanuit de webserver gecommuniceerd worden met achterliggende databases of bedrijfssystemen, zonder allerlei gaten in firewalls te schieten. De firewall kan zo worden ingesteld dat aanvragen alleen vanaf de reverse proxy worden toegestaan. Omdat een reverse proxy volledig ingesteld is op het afslaan van hackers, en alleen correcte aanvragen behandelen, is het voor een hacker niet meer mogelijk om de webserver direct te hacken. De hacker kan dus hooguit de reverse proxy aanvallen, waarbij hij er al snel achter zal komen dat hier niks te halen valt.
Loadbalancing & High Availability
Daarnaast wordt het nu mogelijk om webservers dubbel uit te voeren. Het redundant uitvoeren van webservers wordt geen ingewikkelde zaak meer. Geef aan de reverse proxy gewoon de verschillende webservers op, en de reverse proxy zoekt wel uit welke webserver werkt, en welke niet. Omdat meerdere reverse proxies vaak ook de mogelijkheid bieden aanvragen voor elkaar op te vangen, is een volledig redundante webdienst te bouwen. Load balancing en High Availability zijn hiermee een peuleschil geworden.
Caching
Een ander voordeel kan het cachen van gegevens zijn. Als er duizend keer per dag een zelfde aanvraag wordt uitgevoerd door verschillende gebruikers is het onzinnig om al deze aanvragen door te sturen naar de webserver. De reverse proxy weet immers het antwoord toch al. Daarom bieden de meeste reverse proxies ook goede cachingsmogelijkheden. Hierdoor worden de webservers ontlast, en kunnen resources gebruikt worden voor belangrijkere zaken.
Producten waar ik veel mee werk zijn de Forefront Threat Management Gateway, (TMG) of de voorloper hiervan, het vroegere Internet Security en Acceleration (ISA) server van Microsoft, of de Netscaler producten (VPX, MPX, Access Gateway) van Citrix.
In de volgende delen van deze serie zal ik deze 3 producten bij langs lopen om de verschillende voor- en nadelen duidelijk te krijgen.


