Partager via


Création d’un proxy de transfert à l’aide de Application Request Routing

par Jim van de Erve

Cet article vous montre comment utiliser les fonctionnalités de Application Request Routing (ARR) et URL Rewrite de Internet Information Services (IIS) pour implémenter un serveur proxy de transfert.

Vue d’ensemble

Application Request Routing est une fonctionnalité d’IIS qui vous permet de contrôler le trafic Internet à l’aide d’un serveur proxy. Un serveur proxy agit comme un point de contact unique servant les clients côté requête ou les workers de serveur web côté réponse. Côté demande, le proxy accepte une demande d’un des clients et le transfère à Internet. Sur Internet, la requête semble provenir du proxy et non du client. Côté réponse, le proxy accepte une demande à partir d’Internet et le distribue à l’un des workers. Pour Internet, la requête semble être traitée et une réponse semble être générée par le serveur proxy lui-même, plutôt qu’à partir de l’un des workers back end.

Le premier type de serveur proxy, celui qui gère une demande sortante d’un client, le transfère à Internet et retourne la réponse générée au client, est appelé proxy de transfert. Le deuxième type de serveur proxy, celui qui gère une requête entrante à partir d’Internet, le transfère à un worker back end et retourne la réponse à Internet, est appelé proxy inverse.

Forward and Reverse Proxies

Les proxys avant et les proxys inverses ont des fonctions considérablement différentes, mais ils effectuent tous deux la même action fondamentale : servir de proxy pour un demandeur ou un répondeur. Dans les deux cas, le serveur proxy isole le réseau privé à partir d’Internet, ce qui vous permet de prendre les mesures nécessaires à l’amélioration de la sécurité. Dans les deux cas, le proxy traite les requêtes et les réponses, ce qui lui permet d’effectuer des opérations sur le trafic qui peuvent améliorer les performances grâce à la mise en cache ou la compression, la protection contre les attaques et les informations de filtrage.

ARR en tant que proxy de transfert

Quand ARR sert de proxy de transfert, il fait partie d’un réseau interne (ou intranet) d’ordinateurs clients. Le proxy utilise une règle de réécriture d’URL pour transmettre des demandes de clients via Internet. ARR en tant que proxy de transfert peut être utilisé pour améliorer l’utilisation de la bande passante et les performances en mettant en cache. Cependant, il n’est pas désigné pour être un proxy de transfert à part entière et commerciale.

Notez que ARR traite uniquement le trafic HTTP et ne traite pas d’autres protocoles. ARR ne prend pas en charge l’élément de menu contextuel HTTP CONNECT et, par conséquent, ne prend pas en charge le transfert du trafic HTTPS.

ARR as a Forward Proxy

Lorsqu’il reçoit une requête de l’un des clients nommant le serveur web cible, le serveur proxy de transfert traite la requête comme suit et le transfère via le pare-feu vers Internet :

  1. Le serveur proxy de transfert reçoit la demande d’un client et vérifie sa validité.
  2. Si la demande est valide, ARR vérifie son cache pour voir si la réponse y réside déjà. S’il trouve la réponse, ARR le renvoie au client sans envoyer la demande à Internet.
  3. Si ARR ne trouve pas la réponse dans le cache, le serveur proxy envoie la requête via le pare-feu à une connexion Internet et au serveur de contenu qui contient les informations.
  4. Lorsque la demande est satisfaite par le serveur de contenu, la réponse est retournée via Internet au serveur proxy de transfert. Il est possible de configurer ARR pour que la réponse soit mise en cache.

Le proxy de transfert offre les avantages suivants :

  • Amélioration des performances et réduction du trafic réseau en mettant en cache les informations demandées régulièrement (si cette fonction est activée). Il met en cache la réponse du premier demandeur et, lorsque les clients suivants demandent le même contenu, ils reçoivent le contenu du cache. La réponse n’est pas demandée à nouveau auprès du serveur de contenu.
  • Amélioration de la sécurité réseau en veillant à ce que les requêtes soient valides.
  • Amélioration des performances à l’aide de la compression IIS (si activée).
  • Prise en charge du filtrage pour vous assurer que les stratégies sont remplies, à l’aide de la réécriture d’URL.

Installation et configuration d’ARR en tant que proxy de transfert

Prérequis

Pour configurer un serveur proxy de transfert à l’aide d’ARR, vous devez disposer des éléments suivants :

  • IIS 7.0 ou version ultérieure sur Windows 2008 (toute référence SKU) ou version ultérieure avec le service de rôle de suivi installé pour IIS.
  • Application Request Routing Microsoft version 3 et modules dépendants
  • Minimum d’un serveur worker avec des sites de travail et des applications qui fonctionnent.

Installation d’ARR

Si la version 3 d’ARR n’a pas été installé,vous pouvez la télécharger ici. Le site de téléchargement affiché par ce lien inclut des instructions d’installation.

Utilisation de réécriture d’URL

Installez le module réécriture d’URL pour IIS via le Gestionnaire de serveur. Pour plus d’informations, consultez Installation d’IIS 8.5 sur Windows Server 2012 R2.

Configuration d’ARR en tant que proxy de transfert

Pour activer ARR en tant que proxy et créer une règle de réécriture d’URL pour activer ARR en tant que proxy de transfert, procédez comme suit :

  1. Ouvrez Gestionnaire des services Internet (IIS) .

  2. Dans le volet Connexions, sélectionnez le serveur.

  3. Dans le volet serveur, double-cliquez sur Application Request Routing. ARR Cache icon

  4. Dans le volet Actions, cliquez sur Paramètres du proxy de serveur. Server Proxy Settings

  5. Sur la page Application Request Routing, sélectionnez Activer le proxy. Enable proxy

  6. Dans le volet Actions, cliquez sur Appliquer. Cela active ARR en tant que proxy au niveau du serveur. Enable ARR as a proxy

  7. Pour démarrer le processus de transformation d’ARR en proxy de transfert, cliquez sur le nœud serveur dans le volet Connexions.

  8. Dans le volet du serveur, double-cliquez sur Réécriture d’URL. URL Rewrite

  9. Dans le volet Actions, cliquez sur Ajouter une ou plusieurs règles. Add Rule

  10. Dans la boîte de dialogueAjouter une règle, double-cliquez sur Règle vide. Blank Rule

  11. Dans la boîte de dialogue Modifier la règle entrante, entrez « Proxy de transfert » en tant que nom. Dans la rubrique URL de correspondance, précisez les éléments suivants :

    • Utilisation : caractères génériques
    • Modèle : *

    Screenshot shows the Edit Inbound Rule dialog box for Forward Proxy.

  12. Faites défiler jusqu’à la rubrique Conditions de la boîte de dialogue Modifier la règle entrante puis cliquez sur Ajouter.... Add Condition

  13. Dans la boîte de dialogue Ajouter une condition, sélectionnez ou précisez les éléments suivants :

    • Entrée de condition : {HTTP_HOST}
    • Type : correspond au modèle
    • Modèle : *

    Edit Inbound Rule

  14. Faites défiler jusqu’à la rubrique Action de la boîte de dialogue Modifier la règle de trafic entrant puis précisez les éléments suivants :

    • Type d’action : réécriture
    • URL de réécriture : http://{C :1}/{R :0}

    Screenshot shows the Edit Inbound Rule dialog box with the Action type Rewrite and a specified Rewrite URL.

  15. Dans le volet Actions, cliquez sur Appliquer.

    Remarque

    Cette règle permet aux messages HTTP de passer via le proxy de transfert. Les messages HTTPS (443) ne sont pas pris en charge sur ce proxy de transfert car ARR ne prend pas en charge HTTP CONNECT.

  16. Configurez les paramètres de proxy selon les besoins de vos applications, navigateurs, etc.