Skip To Content

Configurer un serveur proxy de transfert avec ArcGIS Server

Un serveur proxy de transfert est un ordinateur sur votre réseau local (LAN) qui permet de se connecter en dehors du réseau sans compromettre la sécurité de votre réseau interne. L’utilisation d’un serveur proxy de transfert est courante dans des réseaux de périmètre (appelés également zones démilitarisées [DMZ] ou sous-réseaux filtrés) pour protéger l’identité des machines internes. Bien que la plupart des services ArcGIS Server n'aient pas besoin de se connecter en dehors du réseau le Service PrintingTools ou des services de géotraitement personnalisés peuvent occasionnellement devoir accéder à des services Web externes. Si votre organisation utilise un serveur proxy de transfert pour se connecter en dehors du réseau, vous pouvez configurer ArcGIS Server pour qu'il utilise votre serveur proxy de transfert.

  1. Ouvrez un navigateur Web et connectez-vous au répertoire administrateur d’ArcGIS Server. L’URL est formatée comme suit : https://machine.domain.com:6443/arcgis/admin.
  2. Cliquez sur Système > Propriétés > Mettre à jour.
  3. Dans la boîte de dialogue Update System Properties (Mettre à jour les propriétés du système), insérez le code JSON suivant, en indiquant les informations de votre serveur proxy de transfert :
    {
        "httpProxyHost": "forwardproxy.domain.com",
        "httpsProxyHost": "forwardproxy.domain.com",
        "httpProxyPort": 8888,
        "httpsProxyPort": 8888,
        "nonProxyHosts": "portal.domain.com"
    }

    Si votre proxy de transfert nécessite que vous vous authentifiez, le nom d’utilisateur et le mot de passe doivent être inclus dans la chaîne JSON :

    {
        "httpProxyHost": "forwardproxy.domain.com",    "httpsProxyHost": "forwardproxy.domain.com",    "httpProxyPort": 8888,    "httpsProxyPort": 8888,    "httpProxyUser": "username",    "httpsProxyUser": "username",    "httpProxyPassword": "password",    "httpsProxyPassword": "password",    "nonProxyHosts": "portal.domain.com"
    }
    • Vous devez inclure systématiquement chacune des propriétés ci-dessus, même si votre serveur proxy de transfert est configuré pour utiliser uniquement le protocole HTTPS.
    • La propriété nonProxyHosts doit toujours contenir le nom de la machine sur laquelle votre portail est installé. Pour fédérer ArcGIS Server avec votre portail, vous devez aussi inclure dans cette propriété le nom de la machine sur laquelle ArcGIS Server est installé. La machine et les éléments du domaine sont séparés par une barre verticale (|), par exemple :

      "nonProxyHosts": "portal.domain.com|server.domain.com|*.domain.com"

  4. Cliquez sur Mettre à jour les propriétés.

ArcGIS Server utilise des paramètres de configuration de proxy de transfert provenant de deux sources : le système d’exploitation sur lequel ArcGIS Server est installé et les propriétés système figurant dans le répertoire administrateur de ArcGIS Server. Il est recommandé de configurer le proxy de transfert aux deux emplacements.

Sous Linux, la méthode habituelle pour configurer un serveur proxy de transfert consiste à utiliser la variable d'environnement http_proxy. Pour configurer cette variable d'environnement et définir le serveur proxy de transfert, modifiez le script init_user_param.sh dans le répertoire /arcgis/server/usr. Pour cela, procédez comme suit :

  1. Ouvrez le script init_user_param.sh dans un éditeur de texte.
  2. Recherchez la ligne export http_proxy=http://<user name>:<password>@<proxy-server-name.domain.org>:<port number>/, et modifiez l'exemple d'URL pour utiliser le nom et le numéro de port de votre serveur proxy de transfert. Si un nom d'utilisateur et un mot de passe sont nécessaires pour établir une connexion à votre serveur proxy de transfert, indiquez les paramètres correspondants dans l'URL. Si ces informations ne sont pas nécessaires, supprimez le texte <nom d'utilisateur>:<mot de passe>@ de l'URL.
  3. Vous pouvez également utiliser la variable d'environnement no_proxy pour spécifier une liste de domaines pour lesquels le proxy par défaut n'est pas requis. Pour utiliser cette variable, supprimez les commentaires de la ligne export no_proxy<local>;*.<domaine>.<com>", et ajoutez des entrées à la liste. Le caractère générique * et <local> peuvent être utiliser pour spécifier le domaine. Chaque entrée doit être séparée par un point-virgule (;).
  4. Enregistrez et fermez le script init_user_param.sh.
  5. Pour que vos paramètres soient pris en compte, vous devez redémarrer ArcGIS Server. Pour ce faire, exécutez le script startserver.sh sur chaque serveur SIG de votre déploiement.

ArcGIS Server est maintenant configuré avec les paramètres du serveur proxy indiqués dans le script init_user_param.sh.

Un serveur proxy de transfert peut soit canaliser le trafic chiffré, soit déchiffrer puis rechiffrer le trafic. Si ArcGIS Server ne semble pas fonctionner correctement avec le proxy de transfert, il est probable que le serveur proxy déchiffre et rechiffre le trafic. Un serveur proxy qui déchiffre le trafic utilise une autorité de certification racine pour présenter les certificats. Comme ArcGIS Server n'approuve pas l'autorité de certification racine par défaut, vous devez importer le certificat dans le magasin de certificats du système d'exploitation. Pour ce faire, procédez comme indiqué ci-après.

  1. Placez le certificat racine dans un emplacement où ArcGIS Server a les autorisations de fichier appropriées pour le lire.
  2. Sur la machine qui héberge ArcGIS Server, ouvrez le script init_user_param.sh dans un éditeur de texte en accédant au répertoire <ArcGIS Server installation directory>/arcgis/server/usr.
  3. Accédez à la ligne export CA_ROOT_CERTIFICATE_DIR=<Location_to_CA_Root_Certificate> et indiquez un emplacement où tous les certificats racines de l'autorité de certification sont stockés sur le système. Sachez que le compte utilisé pour installer ArcGIS Server doit pouvoir accéder au répertoire spécifié. Vous devez annuler les marques de commentaire appliquées aux lignes en effaçant les caractères dièse (#).
  4. Enregistrez et fermez le script init_user_param.sh.
  5. Redémarrez ArcGIS Server. Pour ce faire, exécutez le script startserver.sh sur chaque machine de votre site.
  6. Répétez ces étapes pour chaque machine de votre site ArcGIS Server.