Comment puis-je limiter l'accès à mes points de terminaison situés derrière l'AWS Global Accelerator ?

Lecture de 4 minute(s)
0

Je souhaite limiter l'accès à mes points de terminaison en configurant des règles de groupe de sécurité sur les points de terminaison.

Brève description

AWS Global Accelerator peut disposer d'équilibreurs de charge d'applications, d'équilibreurs de charge réseau, d'instances Amazon Elastic Compute Cloud (Amazon EC2) ou d'adresses IP Elastic comme points de terminaison. La limitation de l'accès à ces points de terminaison dépend de l'activation ou de la désactivation de la préservation de l'adresse IP source sur le point de terminaison.

Résolution

La préservation de l'adresse IP source est activée

Lorsque vous utilisez un équilibreur de charge d'applications interne ou une instance EC2 avec Global Accelerator, la préservation de l'adresse IP du client est toujours activée sur le terminal. La préservation de l'adresse IP, par défaut, est toujours activée pour les nouveaux accélérateurs dans un équilibreur de charge d'applications connecté à Internet qui est un point de terminaison connecté à l'accélérateur. Dans cette configuration, les terminaux ne voient que les adresses IP réelles des clients au lieu des adresses IP du Global Accelerator. Vous pouvez limiter l'accès à ces points de terminaison comme suit :

  • Configurez les groupes de sécurité sur les terminaux pour autoriser la connexion à partir d'adresses IP clients connues.
  • Lancez le point de terminaison dans un sous-réseau privé afin que le client puisse accéder au point de terminaison uniquement via Global Accelerator.

La préservation de l'adresse IP source est désactivée

Vous avez la possibilité de désactiver la préservation de l'adresse IP du client lorsque vous utilisez l'une des options suivantes comme point de terminaison :

  • un équilibreur de charge d'applications orienté vers l'extérieur
  • un équilibreur de charge réseau
  • une adresse IP Elastic

Dans cette configuration, le terminal voit uniquement les adresses IP de Global Accelerator.

Étant donné que Global Accelerator utilise une plage d'adresses IP, vous devez créer une liste de préfixes pour les plages d'adresses IP de Global Accelerator. Une liste de préfixes est un ensemble d'un ou plusieurs blocs d'adresse CIDR auxquels vous pouvez faire référence dans les règles de votre groupe de sécurité VPC pour restreindre l'accès. 

Installez les outils nécessaires pour créer une liste de préfixes personnalisée. Configurez-le ensuite pour autoriser les connexions au point de terminaison, uniquement si elles proviennent d'AWS Global Accelerator.

Installez les outils

Installez les outils suivants pour créer la liste de préfixes personnalisée :

  1. Installez l'interface de la ligne de commande AWS avec les informations d'identification de sécurité et les paramètres d'accès appropriés.
    Remarque : Si des erreurs interviennent lors de l'exécution des commandes de l'AWS CLI, vérifiez que vous utilisez la version la plus récente de l'AWS CLI.

  2. Installez « jq » sur Amazon Linux 2. Exécuter :

    sudo yum install -y jq
    
  3. Installez Aggeregate6 depuis GitHub :

    sudo yum install -y python3 python3-devel python-pip
    pip3 install --user aggregate6  
    

Création d'une liste de préfixes personnalisée

AWS publie ses plages d'adresses IP actuelles dans ip-ranges.json.

  1. Identifiez les plages d'adresses IP associées aux serveurs Edge d'AWS Global Accelerator.

  2. Compressez la liste pour générer un préfixe IP. Utilisez-le comme argument pour créer une liste de préfixes personnalisée, comme indiqué ci-dessous :

    aws ec2 create-managed-prefix-list --prefix-list-name <name-of-prefix-list> --address-family ipv4 --max-entries 99 --entries=$(curl -s https://ip-ranges.amazonaws.com/ip-ranges.json |jq -r '.prefixes[] |select( .service == "GLOBALACCELERATOR" ) |select( .region != "GLOBAL" ) |.ip_prefix' |aggregate6 |jq -R -M '{"Cidr": .}' |jq -s -c -M)
    

    Remarque : Remplacer <name-of-prefix-list> avec le nom de votre liste.

  3. Passez en revue le résultat. Cela doit ressembler à ceci :

    {
        "PrefixList": {
            "PrefixListId": "pl-0abcde123456789",
            "AddressFamily": "IPv4",
            "State": "create-in-progress",
            "PrefixListArn": "arn:aws:ec2:us-east-1:1234567890:prefix-list/pl-0abcde123456789",
            "PrefixListName": "aga-regional-all",
            "MaxEntries": 99,
            "Version": 1,
            "Tags": [],
            "OwnerId": "1234567890"
        }
    }
    
  4. Affichez les adresses IP dans cette liste de préfixes comme suit :

    aws ec2 get-managed-prefix-list-entries --prefix-list-id <prefix-list-id>

    Remarque : Remplacer <prefix-list-id> avec l'identifiant de votre liste.

Ajouter la liste de préfixes personnalisée au groupe de sécurité

Spécifiez la liste de préfixes que vous avez créée précédemment comme source d'une règle entrante sur le groupe de sécurité associé au point de terminaison de l'accélérateur. Pour plus d'informations sur le référencement d'une liste de préfixes dans un groupe de sécurité, consultez la section Groupes de sécurité VPC.

Informations connexes

Plages de localisation et d'adresses IP des serveurs Global Accelerator Edge

Regrouper des blocs d'adresse CIDR à l'aide de listes de préfixes gérées

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a un an