Tous les produits
Search
Centre de documentation

Egress Proxy Gateway:Use EPG to quickly set up a public network egress proxy

Dernière mise à jour :Sep 21, 2026

Configurez un proxy de sortie vers le réseau public pour les instances Elastic Compute Service (ECS) au sein d'un Virtual Private Cloud (VPC). L'instance ECS n'a pas besoin d'adresse IP publique, car le trafic sortant transite par les adresses EIP fixes d'Egress Proxy Gateway (EPG). Vous pouvez appliquer un contrôle granulaire en fonction du nom de domaine de destination ou de l'adresse IP source, sans avoir à construire ni maintenir votre propre cluster de proxy.

Architecture de la solution

Les instances ECS d'un même VPC accèdent à Internet via le proxy EPG. Le trafic sortant transite par les adresses EIP du pool d'adresses de sortie. L'instance ECS utilise le nom de domaine DNS attribué par EPG comme adresse de proxy et se connecte grâce à la configuration des variables d'environnement.

image

Prérequis

  • EPG est activé.

  • Un VPC est créé dans la région China (Shanghai), et des vSwitches sont créés respectivement dans la Zone L et la Zone M.

  • Une instance ECS est créée dans le VPC mentionné ci-dessus, et vous disposez des permissions de connexion SSH pour cette instance ECS.

Procédure

1. Créer une configuration de proxy de sortie

Lors de la création d'une instance EPG, vous devez lui associer une configuration de proxy de sortie. Créez d'abord la configuration. Assurez-vous que la configuration de proxy de sortie et l'instance EPG à créer se trouvent dans la même région. Sinon, elles ne pourront pas être associées.

  1. Connectez-vous à la console EPG et sélectionnez la région China (Shanghai). Dans le volet de navigation de gauche, choisissez Configuration Management > Egress Proxy Configuration, puis cliquez sur Create Egress Proxy Configuration.

  2. Saisissez un Egress Proxy Configuration Name, conservez les paramètres par défaut pour Default Rule Phase Action (les phases PreDns phase, PreRequest phase et Post-Response Phase sont toutes définies sur Allow), puis cliquez sur Create.

2. Créer une instance EPG et configurer les ports d'écoute

  1. Dans le volet de navigation de gauche, choisissez Instance Management > Instance List, puis cliquez sur Create Instance.

  2. Sur la page Create Instance, configurez les options suivantes et cliquez sur Confirm Creation.

    • Instance Name : obligatoire. Saisissez un nom d'instance facilement identifiable.

    • Region et Virtual Private Cloud : dans cet exemple, sélectionnez la région China (Shanghai) et le VPC où réside l'instance ECS.

    • Create Default Address Pool : ne sélectionnez pas cette option dans cet exemple. Le pool d'adresses de sortie sera créé à l'étape 3.

    • Availability Zone/VSwitch : dans cet exemple, sélectionnez Shanghai Zone L et Shanghai Zone M, ainsi que le vSwitch correspondant pour chaque zone. Pour garantir une haute disponibilité, nous vous recommandons de sélectionner au moins deux zones.

    • Associated Configuration : sélectionnez la configuration de proxy de sortie que vous avez créée à l'étape 1.

    • Listening : deux écouteurs, HTTP:1080 et HTTPS:443, sont inclus par défaut.

      Les ports d'écoute ne peuvent pas être modifiés après la création de l'instance EPG. Confirmez les paramètres avant de les envoyer.
  3. Dans la section Basic Information de la page des détails de l'instance, copiez le DNS domain name de l'instance (au format epg-xxx.cn-shanghai.epg.aliyuncs.com). Cette valeur sera utilisée ultérieurement pour la configuration de l'accès proxy.

Lors de la création d'une instance EPG, vous devez configurer les ports d'écoute HTTP et HTTPS. Toutefois, dans cet exemple, tous les clients accèdent à EPG via HTTP:1080.

Protocol

Port

Purpose

Required

HTTP

1080 (port couramment utilisé pour les services de proxy)

Point d'entrée d'accès proxy pour les clients. Il prend en charge les destinations HTTP et HTTPS. Les requêtes HTTP sont transférées directement, tandis que les requêtes HTTPS utilisent un tunnel CONNECT.

Oui

HTTPS

443

Accès client TLS, utilisé pour chiffrer le canal proxy entre le client et EPG.

Obligatoire lors de la création, mais non utilisé dans cet exemple.

3. Créer un pool d'adresses de sortie

Vous devez configurer au moins un pool d'adresses de sortie et y associer des adresses EIP avant qu'EPG puisse accéder à Internet.

  1. Sur la page des détails de l'instance, cliquez sur l'onglet Egress address pool, puis cliquez sur Create an egress address pool.

  2. Sur la page Create an egress address pool, configurez les options suivantes et cliquez sur Confirm Creation.

    • Name : obligatoire. Saisissez un nom de pool d'adresses facilement identifiable.

    • Network type : sélectionnez Public network.

    • Scheduling policy : conservez la valeur par défaut Random.

    • Set as default address pool : laissez cette option sélectionnée par défaut.

    • Elastic IP Address : dans la section Zone Mapping, sélectionnez l'adresse EIP à associer pour Shanghai Zone L et Shanghai Zone M.

      Si aucune adresse EIP n'est disponible, vous pouvez en acheter de nouvelles. Les adresses EIP sont facturées séparément .

4. Configurer le proxy sur l'instance ECS et vérifier

Cet exemple utilise Alibaba Cloud Linux 4 (avec bash comme shell par défaut).

  1. Connectez-vous à l'instance ECS via SSH et exécutez les commandes suivantes pour configurer les variables d'environnement du proxy (remplacez <your-EPG-domain-name> par le DNS domain name de l'instance).

    sudo tee /etc/profile.d/epg-proxy.sh > /dev/null <<'EOF'
    # Configure the proxy used for HTTP requests
    export http_proxy="http://<your-EPG-domain-name>:1080"
    export HTTP_PROXY="$http_proxy"
    # Configure the proxy used for HTTPS requests
    export https_proxy="http://<your-EPG-domain-name>:1080"
    export HTTPS_PROXY="$https_proxy"
    #Configure Alibaba Cloud internal services and private network addresses to bypass the proxy
    export no_proxy="localhost,127.0.0.1,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,100.64.0.0/10,100.100.100.200,aliyuncs.com"
    export NO_PROXY="$no_proxy"
    EOF
    source /etc/profile.d/epg-proxy.sh
    Le protocole standard de proxy HTTP utilise un seul port en texte clair pour les destinations HTTP et HTTPS : les requêtes HTTP sont transférées directement, tandis que les requêtes HTTPS établissent un tunnel à l'aide de la méthode CONNECT. Par conséquent, https_proxy est défini sur le port de proxy HTTP en texte clair 1080.
  2. Vérifiez la connectivité.

    #Verify public HTTP access (success if HTTP status code 301 is returned)
    curl -I --max-time 15 http://www.alibabacloud.com/help
    
    #Verify public HTTPS access (success if HTTP status code 302 is returned)
    curl -I --max-time 15 https://www.alibabacloud.com/help
    
    #Verify that no_proxy works: Alibaba Cloud internal services are accessed directly without the proxy (success if an XML error response is returned)
    curl --max-time 15 https://ecs.cn-shanghai.aliyuncs.com
    
    #Verify direct access to the metadata service (success if the instance ID is returned)
    curl --max-time 5 http://100.100.100.200/latest/meta-data/instance-id
  3. (Facultatif) Supprimez la configuration du proxy.

    • Désactiver temporairement (session actuelle uniquement) :

      unset http_proxy https_proxy HTTP_PROXY HTTPS_PROXY no_proxy NO_PROXY
    • Supprimer complètement :

      • Supprimez le script de démarrage.

        sudo rm /etc/profile.d/epg-proxy.sh
      • Désactivez le proxy pour la session actuelle.

        unset http_proxy https_proxy HTTP_PROXY HTTPS_PROXY no_proxy NO_PROXY
      • Les nouvelles sessions de terminal ne chargeront plus la configuration du proxy.

(Facultatif) Règles de contrôle d'accès

EPG prend en charge un moteur de règles en trois phases (PreDns, PreRequest et PostResponse) pour un contrôle granulaire des adresses IP source, des noms de domaine, des URL et des en-têtes.

  1. Dans le volet de navigation de gauche, choisissez Rule Group Management > Rule Group List, puis cliquez sur Create a rule group. Configurez les options suivantes et cliquez sur Create.

    • Rule Group Name : le nom du groupe de règles est obligatoire.

    • Associated outbound address pool : ne configurez pas ce paramètre dans cet exemple. Lorsqu'il est laissé vide, le groupe de règles utilise le pool d'adresses par défaut de l'instance pour accéder à Internet, comme décrit dans Moteur de règles et configuration des règles.

    • List of rules : ajoutez des règles à chaque phase selon vos besoins. Définissez le Rule Name, la Priority (de 1 à 1000 ; une valeur plus petite indique une priorité plus élevée), la Matching Condition et l'Action (Allow ou Deny).

      Important

      L'ajout de règles à la phase PostResponse phase n'est pas pris en charge, et l'action est fixée sur Allow. Lorsque l'interception TLS n'est pas activée pour l'instance, une requête HTTPS utilise la méthode CONNECT pour établir un tunnel chiffré de bout en bout avec le serveur de destination via EPG. EPG se contente de transférer le trafic et ne peut pas analyser le contenu de la requête à l'intérieur du tunnel. La requête HTTPS n'entre pas dans la phase PreRequest, de sorte que ni les règles ni l'action par défaut de cette phase ne prennent effet, et la requête est transférée directement via le pool d'adresses par défaut. Pour contrôler le trafic HTTPS, activez l'interception TLS. Pour contrôler le trafic uniquement par adresse IP source ou nom de domaine de destination, configurez des règles dans la phase PreDns.

  2. Dans le volet de navigation de gauche, choisissez Configuration Management > Egress Proxy Configuration. Recherchez la configuration de proxy de sortie créée à l'étape 1 et cliquez sur l'ID de configuration pour accéder à la page des détails.

  3. Sur l'onglet Rule Group, cliquez sur Bind Rule Group, sélectionnez un groupe de règles, définissez sa priorité, puis cliquez sur Confirm. Le groupe de règles prend effet une fois que son statut passe à Available.

FAQ

Échec de la commande curl ou utilisation d'un port incorrect

Lors de la vérification du proxy, nous vous recommandons d'exécuter directement curl -I --max-time 15 http://www.alibabacloud.com/help afin que les variables d'environnement spécifient automatiquement l'adresse du proxy. Évitez de spécifier manuellement le proxy à l'aide de -x, ce qui pourrait entraîner des échecs de connexion en raison d'un port ou d'un format incorrect. Assurez-vous que http_proxy et https_proxy pointent tous deux vers le port de proxy en texte clair 1080.

Délai d'expiration de la requête ou erreur 503 upstream connect error

  • L'instance ECS ne peut pas accéder à EPG. Assurez-vous que l'écouteur EPG est dans un état normal et que le chemin d'accès de l'instance ECS à EPG n'est bloqué par aucune règle.

  • L'adresse EIP est dans un état anormal (par exemple, impayée ou libérée). Vérifiez l'état de l'adresse EIP dans la console EIP.

  • Le trafic sortant de l'adresse EIP est bloqué par Cloud Firewall. Vérifiez si la stratégie Internet Firewall dans Cloud Firewall autorise le trafic sortant de l'adresse EIP.

Erreur Proxy CONNECT aborted

Cette erreur est généralement causée par une configuration incorrecte de https_proxy. Par exemple, si https_proxy est défini sur http://<EPG-domain-name>:443, le client utilise un protocole en texte clair pour se connecter au port TLS, ce qui provoque une incompatibilité de protocole et l'abandon de la connexion. Définissez https_proxy sur le port de proxy en texte clair, tel que http://<EPG-domain-name>:1080.