Un serveur proxy inverse ou un système d’équilibrage de la charge est un appareil généralement déployé sur un réseau de périmètre (appelé également zone démilitarisée [DMZ] ou sous-réseau filtré) qui gère des requêtes provenant d’Internet et les transmet aux machines de votre réseau interne. Le transfert des requêtes au nom du serveur proxy inverse masque l’identité des machines se trouvant derrière le pare-feu de votre organisation et protège ainsi les machines internes contre toute attaque provenant des utilisateurs d’Internet. Vous pouvez intégrer des fonctions de sécurité supplémentaires au serveur proxy inverse pour protéger davantage votre réseau interne contre toute attaque provenant de l'extérieur.
Si votre serveur proxy inverse ou votre système d’équilibrage de la charge prend en charge une fonction de contrôle de l’intégrité, vous pouvez utiliser le point d’extrémité de contrôle de l’intégrité de Portal for ArcGIS pour déterminer si le portail peut recevoir des requêtes. Ceci est utile pour déterminer rapidement si le site présente une défaillance logicielle ou matérielle. Pour plus d’informations, reportez-vous à la rubrique Contrôle de l’intégrité.
Attention :
La configuration détaillée dans cette rubrique doit être exécutée avant de fédérer un site ArcGIS Server avec votre portail. Il est impossible d’ajouter un alias DNS ou un proxy inverse une fois qu’un site ArcGIS Server a été fédéré avec votre portail. Si vous devez changer le nom d’hôte de l’URL de votre organisation, contactez les Services de conseil Esri ou un autre partenaire agréé pour obtenir des instructions.
La suppression d’un site fédéré ArcGIS Server a des répercussions importantes et il sera difficile de rétablir une configuration existante. Pour en savoir plus, reportez-vous à la rubrique Administrer un serveur fédéré.
Types de systèmes d’équilibrage de la charge
Les proxys inverses sont parfois appelés systèmes d’équilibrage de la charge même s’ils offrent officiellement davantage de fonctionnalités que la simple distribution des messages entrants aux cibles en arrière-plan. De nombreuses implémentations de serveurs proxys inverses peuvent fonctionner dans l’une ou l’autre des capacités décrites ci-dessous, en fonction de la configuration.
Les actions d’équilibrage de la charge sont souvent différenciées par la couche du modèle OSI (Open Systems Interconnection) dans laquelle elles sont effectuées. Lorsque vous intégrez une technologie d’équilibrage de la charge existante, il est important d’identifier le type mis en œuvre, car il affecte l’architecture globale du déploiement.
Les systèmes d’équilibrage de la charge 3/4 des couches sont parfois appelés systèmes d’équilibrage de la charge réseau ou au niveau du paquet. Ces systèmes d’équilibrage de la charge n’inspectent généralement pas le trafic entrant, mais se contentent d’acheminer les paquets TCP/UDP entrants vers les cibles en arrière-plan. Les implémentations plus récentes permettent d’arrêter SSL sur le système d’équilibrage de la charge, mais la session SSL du client est généralement établie avec le ou les services cibles en arrière-plan.
Les systèmes d’équilibrage de la charge 7 des couches sont parfois appelés systèmes d’équilibrage de la charge d’application. Ces systèmes d’équilibrage de la charge inspectent les messages entrants et peuvent prendre des décisions d’acheminement en fonction de plusieurs facteurs, mais aussi modifier le contenu des messages avant de les acheminer vers la ou les cibles en arrière-plan. Les systèmes d’équilibrage de la charge 7 des couches qui utilisent le protocole HTTPS mettent fin à la communication SSL avec le client, puis rechiffrent le trafic avant d’acheminer les requêtes vers les cibles HTTPS en arrière-plan.
Préparer un serveur proxy inverse ou un système d’équilibrage de la charge
Avant d’ajouter Portal for ArcGIS au serveur proxy inverse de votre organisation, vous devez effectuer les opérations suivantes :
- Configurez HTTPS (HTTP et HTTPS ou HTTPS uniquement) sur le serveur proxy inverse. Portal for ArcGIS utilise par défaut le protocole HTTPS pour les communications. Consultez la documentation de votre serveur proxy pour savoir comment configurer HTTPS.
Remarque :
Portal for ArcGIS ne prend pas en charge le déchargement SSL via un serveur proxy inverse/système d’équilibrage de la charge. Si votre configuration utilise un serveur proxy inverse, il doit donc acheminer le trafic vers ArcGIS Web Adaptor ou directement vers Portal for ArcGIS via HTTPS.
Remarque :
Vous devez vous assurer que le nom contextuel du serveur proxy inverse ne descend que d’un niveau d’URL. Par exemple, vous pourriez spécifier l’URL d’un serveur proxy inverse https://proxy.domain.com/enterprise, mais pas la suivante : https://proxy.domain.com/myorg/enterprise.
Vérifiez si le serveur proxy prend en charge le codage gzip et qu’il est configuré pour autoriser l’en-tête Accept-Encoding. Cet en-tête permet aux réponses HTTP 1.1 d’être compressées à l’aide du codage gzip. Ainsi, si l’en-tête est autorisé, une demande de chargement de Map Viewer Classic (Visionneuse de carte) renvoie une réponse compressée d’environ 1,4 Mo au navigateur. Si l'en-tête n'est pas autorisé ou est ignoré, la demande renvoie une réponse non compressée d'environ 6,8 Mo au navigateur. Si le débit de votre réseau est lent, le chargement de Map Viewer Classic (Visionneuse de carte) est lent lorsque les réponses ne sont pas compressées. Esri recommande d’autoriser cet en-tête dans le cadre de la configuration de votre serveur proxy inverse.
Système d’équilibrage de la charge 3/4 des couches
Le système d’équilibrage de la charge doit écouter le port HTTPS par défaut et transférer le trafic vers ArcGIS Web Adaptor ou directement vers la ou les machines Portal for ArcGIS sur le port 7443. À l’arrêt des sessions SSL du client sur le serveur Web Portal for ArcGIS interne, assurez-vous que le certificat SSL présenté par ce serveur Web est valide à la fois pour l’alias DNS et pour le FQDN de la ou des machines du site, afin d’éviter des problèmes de fiabilité du certificat. Pour ce faire, il suffit généralement d’utiliser d’autres noms de l’objet pour le certificat SSL.
Remarque :
Lorsque vous n’utilisez pas ArcGIS Web Adaptor, vous devez utiliser le contexte par défaut (/arcgis) pour le site. Lorsque vous intégrez plusieurs sites Portal for ArcGIS et ArcGIS Server au même système d’équilibrage de la charge 3/4 des couches, vous devez utiliser un enregistrement DNS unique pour chaque site et le SNI (Server Name Identification) qui a servi à acheminer le trafic vers les cibles appropriées en arrière-plan.
Système d’équilibrage de la charge 7 des couches
Dans la configuration du système d’équilibrage de la charge, vous devez définir un en-tête X-Forwarded-Host sur le nom d’hôte de l’alias DNS du site. Portal for ArcGIS s’attend à ce que cette propriété soit définie dans l’en-tête envoyé par le serveur proxy inverse et renvoie les requêtes correspondant à l’URL du serveur proxy inverse. Si vous n’utilisez pas ArcGIS Web Adaptor avec votre portail, vérifiez que l’en-tête Host défini par le système d’équilibrage de la charge correspond au nom d’hôte de la machine sur laquelle Portal for ArcGIS est installé.
Conseil :
Vous pouvez utiliser le point d’extrémité des machines figurant dans le Répertoire d’administrateur de portail pour voir le nom d’hôte de la machine qui exécute Portal for ArcGIS.
Par exemple, une requête adressée à ArcGIS Portal Directory (https://dnsalias.domain.com/arcgis/sharing/rest) sera renvoyée au client sous la forme de l’URL correspondante. Si la propriété n’est pas définie, Portal for ArcGIS peut renvoyer l’URL de l’ordinateur interne vers lequel la demande a été dirigée (par exemple, https://portal.domain.com/arcgis/sharing/rest au lieu de https://dnsalias.domain.com/arcgis/sharing/rest). Cela pose un problème, car les clients ne pourront pas accéder à cette URL (erreur 404 du navigateur). Le client disposera également d’un accès à des informations sur la machine interne.
Avec l’en-tête X-Forwarded-Host, votre système d’équilibrage de la charge doit être capable de rediriger directement (codes de réponse HTTP 301 ou 302). Tous les en-têtes Location doivent être réécrits sur le système d’équilibrage de la charge afin de vous assurer que le nom de domaine complet (FQDN) et le contexte de la réponse correspondent à la valeur WebContextURL du portail.
Ajouter un portail
Les sections suivantes expliquent comment ajouter Portal for ArcGIS au serveur proxy inverse de votre organisation.
Système d’équilibrage de la charge 3/4 des couches : ajouter des machines ArcGIS Web Adaptor ou Portal for ArcGIS à la configuration du système d’équilibrage de la charge
Dans la mesure où l’envoi du trafic aux cibles en arrière-plan se produit via TCP, la ou les machines de chaque site doivent être ajoutées à la configuration du système d’équilibrage de la charge. Si vous utilisez ArcGIS Web Adaptor, les cibles en arrière-plan doivent pointer sur le port du ou des serveurs Web (généralement 443 ou 8443) qui hébergent le ou les adaptateurs Web. Lorsque le trafic est directement envoyé à Portal for ArcGIS, les cibles en arrière-plan doivent pointer sur le port 7443 sur chaque machine du site.
Système d’équilibrage de la charge 7 des couches : ajouter des machines ArcGIS Web Adaptor ou Portal for ArcGIS aux directives de serveur proxy
Après avoir configuré ArcGIS Web Adaptor avec Portal for ArcGIS, vous pouvez utiliser ArcGIS Web Adaptor avec le serveur proxy inverse de votre organisation en ajoutant directement les composants aux directives de proxy. Par exemple, si vous utilisez Apache comme proxy inverse, vous devez ajouter ArcGIS Web Adaptor aux directives ProxyPass du fichier de configuration du serveur Web Apache httpd.conf :
ProxyPass /webadaptorname https://webadaptorhost.domain.com/webadaptorname
ProxyPassReverse /webadaptorname https://webadaptorhost.domain.com/webadaptorname
Les directives ProxyPass doivent correspondre au nom désigné pour ArcGIS Web Adaptor (/webadaptorname dans l’exemple ci-dessus). Si vous n’utilisez pas ArcGIS Web Adaptor devant Portal for ArcGIS, ajoutez les directives suivantes, dans lesquelles /context correspond au chemin de niveau supérieur choisi pour l’URL :
ProxyPass /context https://portal.domain.com:7443/arcgis
ProxyPassReverse /context https://portal.domain.com:7443/arcgis
Configurer un portail pour utiliser un proxy inverse ou un système d’équilibrage de la charge
Les sections suivantes expliquent comment configurer votre portail pour utiliser l’URL du serveur proxy inverse et présentent les tâches administratives à réexécuter une fois l’URL configurée.
Définir la propriété WebContextURL
La propriété WebContextURL du portail l’aide à créer les URL correctes sur toutes les ressources transmises à l’utilisateur final. Procédez comme suit pour modifier WebContextURL :
- Ouvrez un navigateur Web et connectez-vous au Répertoire d’administrateur de portail en tant que membre du rôle d’administrateur par défaut de votre organisation. L’URL est au format https://portal.domain.com:7443/arcgis/portaladmin.
- Cliquez sur Système > Propriétés > Mettre à jour les propriétés.
- Dans la boîte de dialogue Mettre à jour les propriétés du système, insérez la notation JSON suivante en remplaçant l'URL de l'alias DNS ou de votre serveur proxy inverse, telle qu'elle apparaît aux utilisateurs en dehors du pare-feu de votre organisation.
{ "WebContextURL": "https://dnsalias.domain.com/portal" }
Remarque :
Portal for ArcGIS ne prend en charge qu’une seule URL de l’organisation.
Remarque :
Vous ne pouvez pas utiliser un port non standard (c’est-à-dire un autre port que le port 7443) lorsque vous définissez la propriété WebContextURL.
- Cliquez sur Update Properties (Mettre à jour les propriétés).
Répéter les tâches administratives
Une fois que vous avez configuré le serveur proxy inverse avec votre portail, vous pouvez accéder à votre portail via l’URL du serveur proxy inverse à la place de l’URL d’ArcGIS Web Adaptor. Tout ce à quoi vous accédez dans le portail ou dans le Répertoire d’administrateur de portail renverra l’URL du serveur proxy inverse.
Les tâches administratives suivantes doivent être réexécutées en utilisant l'URL du serveur proxy inverse :
Si vous avez ajouté auparavant des services sécurisés en tant qu'éléments dans votre portail, vous devrez supprimer les éléments d'origine et les ajouter de nouveau. En effet, les éléments d’origine utilisent l’URL d’ArcGIS Web Adaptor à la place de l’URL du serveur proxy inverse. Pour obtenir des instructions, reportez-vous à la rubrique Se connecter à des services sécurisés.
Une fois le serveur proxy inverse configuré avec le portail, il se peut que vous deviez ajuster ses paramètres. Par exemple, si les opérations ou les requêtes au sein de votre déploiement échouent avec une erreur indiquant que la connexion a expiré, le problème peut être lié à une valeur trop faible du délai d’expiration du serveur proxy inverse. Pour résoudre cette erreur, pensez à augmenter la valeur du délai d’expiration afin de permettre aux requêtes de longue durée, comme la fédération d’un serveur, de se terminer.
Vous avez un commentaire à formuler concernant cette rubrique ?