Qu'est-ce qu'un proxy inverse ? | Une explication du fonctionnement des serveurs proxy

Un proxy inverse protège les serveurs web contre les attaques et peut offrir des avantages en termes de performances et de fiabilité. En savoir plus sur les proxy de transfert et inverses.

Objectifs d’apprentissage

Cet article s'articule autour des points suivants :

  • Définir un serveur proxy
  • Décrire les différences entre un proxy de transfert et un proxy inverse
  • Expliquer les avantages qu'offre l'utilisation d'un proxy inverse

Contenu associé


Vous souhaitez continuer à enrichir vos connaissances ?

Abonnez-vous à theNET, le récapitulatif mensuel par Cloudflare des informations les plus populaires sur Internet !

Consultez la politique de confidentialité de Cloudflare pour en savoir plus sur la manière dont nous collectons et traitons vos données personnelles.

Copier le lien de l'article

Qu'est-ce qu'un proxy inverse ?

Un proxy inverse désigne un serveur placé devant les serveurs web, qui transmet les requêtes des clients (par exemple, les navigateurs web) à ces serveurs web. Les solutions de proxy inverse sont généralement déployées pour contribuer à améliorer la sécurité, les performances et la fiabilité. Afin de mieux comprendre le fonctionnement d'un proxy inverse et les avantages qu'il peut offrir, nous devons tout d'abord définir ce qu'est un serveur proxy.

Rapport
Étude IDC Marketscape 2024 for Worldwide Edge Delivery Services

Qu'est-ce qu'un serveur proxy ?

Un proxy de transfert, souvent appelé proxy, serveur proxy ou proxy web, est un serveur situé devant un groupe d'ordinateurs clients. Lorsque ces ordinateurs adressent des requêtes à des sites et des services sur Internet, le serveur proxy intercepte ces requêtes, puis communique avec les serveurs web au nom des clients, agissant comme un intermédiaire.

Par exemple, identifions trois ordinateurs impliqués dans une communication typique par proxy de transfert :

  • A, l'ordinateur personnel d'un utilisateur
  • B, un serveur proxy de transfert
  • C, le serveur d'origine d'un site web (sur lequel sont stockées les données du site web)
Schéma d'un proxy de transfert : le trafic circule de l'appareil de l'utilisateur (A) vers le proxy de transfert (B), puis vers Internet et le serveur d'origine (C)

Dans une communication Internet standard, un ordinateur A se connecterait directement à un serveur C : le client enverrait des requêtes au serveur d'origine et le serveur d'origine répondrait au client. Lorsqu'un proxy de transfert est mis place, l'ordinateur A envoie ses requêtes au proxy B, qui transmet les requêtes au serveur C. Le serveur C envoie ensuite ses réponses au proxy B, qui les retransmet à l'ordinateur A.

Réseau CDN ultra-rapide
Améliorez les performances avec le réseau CDN de Cloudflare

Pourquoi ajouter cet intermédiaire supplémentaire à son activité Internet ? Il existe plusieurs raisons pour lesquelles utiliser un proxy de transfert :

  • Pour éviter les restrictions de navigation imposées par l'État ou les institutions : certains gouvernements, écoles et autres organisations emploient des pare-feu afin d'offrir à leurs utilisateurs un accès à une version limitée d'Internet. Un proxy de transfert peut permettre de contourner ces restrictions, car l'utilisateur se connecte alors au proxy, plutôt que directement aux sites visités.
  • Pour bloquer l'accès à certains contenus : inversement, la mise en place d'un proxy peut également permettre d'empêcher un groupe d'utilisateurs d'accéder à certains sites. Un réseau scolaire peut, par exemple, être configuré pour se connecter au web par l'intermédiaire d'un proxy imposant des règles de filtrage de contenu qui refusent la transmission des réponses provenant de Facebook et d'autres sites de réseaux sociaux.
  • Pour protéger son identité en ligne : dans certains cas, les internautes ordinaires souhaitent simplement bénéficier d'un anonymat renforcé en ligne, mais dans d'autres, des internautes considérés comme dissidents politiques par leur gouvernement peuvent s'exposer à de graves sanctions dans leur pays. Pour ces utilisateurs, critiquer le gouvernement sur un forum web ou sur les réseaux sociaux peut entraîner des amendes ou des peines d'emprisonnement. Si l'un de ces dissidents utilise un proxy de transfert pour se connecter à un site web sur lequel il publie des commentaires politiquement sensibles, il sera plus difficile de retracer l'adresse IP utilisée pour publier ces commentaires. En effet, seule l'adresse IP du serveur proxy sera visible.

En quoi un proxy inverse est-il différent ?

Un proxy inverse désigne un serveur placé devant un ou plusieurs serveurs web, qui intercepte les requêtes provenant des clients. Il est différent d'un proxy de transfert, qui est placé devant les clients. Avec un proxy inverse, les requêtes envoyées par les clients au serveur d'origine d'un site web sont interceptées à la périphérie du réseau par le serveur proxy. Ce dernier envoie alors les requêtes au serveur d'origine et reçoit les réponses de ce dernier.

La différence entre un proxy de transfert et un proxy inverse est subtile, mais importante. Un moyen simple de la résumer consisterait à dire qu'un proxy de transfert est placé devant un client et garantit l'absence de communication entre un serveur d'origine et ce client spécifique. Un proxy inverse, quant à lui, est placé devant un serveur d'origine et garantit l'absence de communication entre un client et le serveur d'origine protégé.

Illustrons encore une fois la situation en nommant les ordinateurs concernés :

  • D, un nombre quelconque d'ordinateurs personnels
  • E, un serveur proxy inverse
  • F, un ou plusieurs serveurs d'origine
Schéma d'un proxy inverse : le trafic circule de l'appareil de l'utilisateur (D) vers Internet, puis vers le proxy inverse (E) et le serveur d'origine (F)

En général, l'ensemble des requêtes provenant d'un ordinateur D sont directement adressées à un serveur d'origine F, qui renvoie ses réponses directement à l'ordinateur D. Dans une situation de proxy inverse, l'ensemble des requêtes de l'ordinateur D sont directement adressées au serveur de proxy E, qui transmet les requêtes au serveur d'origine F, puis reçoit les réponses de ce dernier, avant de les transmettre à l'ordinateur D.

Découvrez ci-dessous certains des avantages qu'offre l'utilisation d'un proxy inverse :

  • Équilibrage de charge : un site web populaire accueillant des millions d'utilisateurs chaque jour peut ne pas être en mesure de gérer l'ensemble du trafic entrant avec un seul serveur d'origine. À la place, le site peut être réparti sur un ensemble de serveurs différents, qui traitent tous les requêtes pour le même site. Dans ce cas, un proxy inverse peut constituer une solution d'équilibrage de charge permettant de répartir uniformément le trafic entrant entre les différents serveurs, afin d'éviter la surcharge d'un serveur unique. En cas de défaillance complète d'un serveur, les autres serveurs peuvent prendre le relais pour gérer le trafic.
  • Protection contre les attaques : lorsqu'un proxy inverse est mis en place, un site ou un service web n'a jamais besoin de révéler l'adresse IP de son (ou ses) serveur(s) d'origine. Il est alors beaucoup plus difficile pour des acteurs malveillants de lancer une attaque ciblée, comme une attaque DDoS, contre ces serveurs. Les auteurs d'une attaque ne peuvent alors cibler que le proxy inverse (comme le réseau CDN de Cloudflare), qui peut compter sur une sécurité plus stricte et davantage de ressources pour repousser une cyberattaque.
  • Équilibrage mondial de la charge des serveurs (Global Server Load Balancing, GSLB) : avec cette forme d'équilibrage de charge, un site web peut être réparti sur plusieurs serveurs dans le monde entier, et le proxy inverse redirige ensuite les clients vers le serveur le plus proche géographiquement. Cette solution permet de réduire les distances que doivent parcourir les requêtes et les réponses, minimisant ainsi les temps de chargement.
  • Mise en cache : un proxy inverse peut également mettre en cache le contenu afin d'améliorer les performances d'un site. Ainsi, un utilisateur à Paris, France, visitant un site web utilisant un proxy inverse, dont les serveurs web se trouvent à Los Angeles, États-Unis, peut en réalité se connecter à un serveur proxy inverse local situé à Paris, qui se charge ensuite de communiquer avec un serveur d'origine situé à Los Angeles. Le serveur proxy peut alors mettre en cache (ou enregistrer temporairement) les données des réponses. Les utilisateurs parisiens qui accéderont ensuite au site verront alors s'afficher la version mise en cache localement diffusée par le serveur proxy inverse situé à Paris, entraînant ainsi une expérience de navigation plus rapide.
  • Chiffrement SSL : le chiffrement et le déchiffrement des communications SSL (ou TLS) de chaque client peuvent être coûteux, en termes de puissance de calcul, pour un serveur d'origine. Un proxy inverse peut ainsi être configuré pour déchiffrer toutes les requêtes entrantes et chiffrer toutes les réponses sortantes, afin de libérer de précieuses ressources sur le serveur d'origine.

Comment mettre en œuvre un proxy inverse

Certaines entreprises développent leurs propres solutions de proxy inverse, mais cela nécessite des ressources considérables en matière d'ingénierie logicielle et matérielle, ainsi qu'un investissement important en équipements physiques. L'un des moyens les plus simples et les plus rentables de profiter de tous les avantages d'un proxy inverse consiste à souscrire à un service de réseau CDN. Le réseau CDN de Cloudflare propose ainsi l'ensemble des fonctionnalités d'amélioration de la sécurité et des performances mentionnées ci-dessus, ainsi que de nombreuses autres.

FAQ

Quelle est la fonction principale d’un proxy inverse ?

Un proxy inverse est un serveur qui se place devant un ou plusieurs serveurs web pour intercepter et transmettre les requêtes des clients. Il agit comme un intermédiaire, veillant à ce qu’aucun client ne communique directement avec le serveur d’origine.

En quoi un proxy inverse est-il différent d’un proxy direct ?

Un proxy de transfert est placé devant les clients (utilisateurs) pour transmettre leurs requêtes à Internet. Le proxy inverse quant à lui se place devant les serveurs pour gérer le trafic entrant en provenance d’Internet.

[Image comparant l’architecture d’un proxy de transfert et celle d’un proxy inverse]

En quoi un proxy inverse peut-il faciliter l’équilibrage de charge ?

Pour les sites web très fréquentés, un proxy inverse peut agir comme un équilibreur de charge en répartissant de manière uniforme les requêtes entrantes sur un pool de plusieurs serveurs d’origine. Cela évite qu’un serveur ne soit surchargé et garantit que le site reste disponible même en cas de défaillance d’un des serveurs.

Comment un proxy inverse peut-il améliorer la sécurité d’un site web ?

En utilisant un proxy inverse, un site web n’a jamais besoin de révéler l’adresse IP de ses serveurs d’origine. Il est donc considérablement plus difficile pour les acteurs malveillants de lancer des attaques ciblées, telles que des attaques DDoS, contre la source. Au lieu de cela, le proxy gère le trafic et peut utiliser ses ressources spécialisées pour repousser les cybermenaces.

Comment un proxy inverse améliore-t-il les performances grâce à la mise en cache ?

Un proxy inverse peut mettre en cache ou enregistrer temporairement des copies du contenu d’un site web à des emplacements plus proches des utilisateurs. Par exemple, si un utilisateur de Chicago accède à un site hébergé à Londres, un proxy inverse local situé à Chicago peut stocker les données. Les futurs visiteurs de la même zone peuvent alors recevoir le contenu directement de ce proxy local, ce qui réduit considérablement les temps de chargement.

Qu’est-ce que l’équilibrage global de la charge des serveurs (GSLB) dans le contexte des proxys inverses ?

Le GSLB est une optimisation des performances dans lequel un proxy inverse dirige les utilisateurs vers le serveur web spécifique le plus proche géographiquement. En réduisant au minimum la distance physique que les données doivent parcourir entre le client et le serveur, le proxy réduit la latence et accélère l’expérience utilisateur.

Quel est l’avantage du proxy inverse pour le chiffrement SSL ?

Le chiffrement et le déchiffrement des communications SSL/TLS peuvent être une tâche lourde pour un serveur d’origine. Un proxy inverse assume cette responsabilité en gérant le décryptage des requêtes entrantes et le chiffrement des réponses sortantes. Ce processus permet de dégager une précieuse puissance de traitement pour le serveur d’origine qui peut ainsi se concentrer sur d’autres tâches.