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 :
-
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.
-
Installez « jq » sur Amazon Linux 2. Exécuter :
sudo yum install -y jq
-
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.
-
Identifiez les plages d'adresses IP associées aux serveurs Edge d'AWS Global Accelerator.
-
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.
-
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"
}
}
-
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