labreux.fr Veille techno
Réseau · Architecture

Proxy et reverse proxy

Deux intermédiaires qui se ressemblent et font l'inverse l'un de l'autre, selon qu'ils représentent le client ou le serveur.

forwardreversepoint d'entrée
L'idée

Un intermédiaire sur le chemin

Un proxy est un intermédiaire qui se place sur le trajet d'une communication réseau et parle à la place de quelqu'un. Tout l'enjeu est de savoir qui il représente : le client (proxy classique, dit « forward ») ou le serveur (reverse proxy). Le sens change tout.

Côté client

Le proxy (forward)

Il se place devant un groupe de clients et parle à Internet à leur place. Le serveur distant ne voit que le proxy, jamais les postes derrière.

Clients internespostes
→
Proxysortie unique
→
Internetsites web
contrôle

Filtrer et journaliser

Bloquer des sites, appliquer une politique d'usage, garder une trace des accès. Le classique du réseau d'entreprise ou d'école.

performance

Mettre en cache

Garder une copie des contenus souvent demandés pour les resservir sans ressortir, et économiser la bande passante.

Côté serveur

Le reverse proxy

Il fait l'inverse : il se place devant un ou plusieurs serveurs et reçoit les requêtes venues d'Internet à leur place. Le client ne voit que le reverse proxy ; les vrais serveurs restent cachés derrière.

Internetvisiteurs
→
Reverse proxypoint d'entrée
→
Serveursweb · API
répartition

Équilibrer la charge

Distribuer les requêtes entre plusieurs serveurs identiques, et écarter celui qui tombe. C'est la base de la haute disponibilité d'un service web.

sécurité & TLS

Point d'entrée unique

Terminer le chiffrement HTTPS, masquer l'architecture interne, filtrer les requêtes malveillantes (pare-feu applicatif). Une seule porte à surveiller.

La différence en un coup d'œil

Qui représente qui

Proxy (forward)Reverse proxy
Se place devantles clientsles serveurs
Protège / représenteceux qui naviguentceux qui hébergent
Qui est cachéles postes internesles serveurs d'origine
Usage pharefiltrage, cache sortant, contrôlerépartition de charge, TLS, protection
Le client sait qu'il existe ?oui (configuré pour l'utiliser)non (il croit parler au serveur)
!

Même brique, deux casquettes. Un même logiciel (comme Nginx ou HAProxy) peut jouer les deux rôles selon sa configuration. Ce n'est pas l'outil qui fait le forward ou le reverse, c'est le sens dans lequel on le place.

À retenir

L'essentiel

  • Un proxy est un intermédiaire qui parle à la place d'un autre.
  • Forward : devant les clients, pour filtrer, mettre en cache, contrôler la sortie.
  • Reverse : devant les serveurs, pour répartir la charge, terminer le TLS, protéger et masquer.
  • Le critère pour les distinguer : de quel côté se tient l'intermédiaire.