Get Hands-on with Amazon EKS - Workshop Event Series
Whether you're taking your first steps with Kubernetes or you're an experienced practitioner looking to sharpen your skills, our Amazon EKS workshop series delivers practical, real-world experience that moves you forward. Learn directly from AWS solutions architects and EKS specialists through hands-on sessions designed to build your confidence with Kubernetes. Register now and start building with Amazon EKS!
Comment configurer mes règles de pare-feu réseau pour bloquer ou autoriser des domaines spécifiques ?
Je souhaite utiliser AWS Network Firewall pour filtrer le trafic Web sortant provenant des ressources de mon Amazon Virtual Cloud (Amazon VPC).
Brève description
AWS Network Firewall utilise soit l'ordre d'action, soit l'ordre d'évaluation strict pour prendre en charge le filtrage basé sur le domaine pour le trafic Web sortant. Pour configurer les règles, utilisez un groupe de règles de liste de domaines dynamiques ou des chaînes compatibles avec Suricata. L'inspection de domaine fonctionne pour les protocoles HTTP et HTTPS.
Pour le protocole HTTP, le pare-feu inspecte l'en-tête de l'hôte. Pour HTTPS, le pare-feu utilise l'indication du nom du serveur (SNI) dans le handshake TLS. Lorsque vous utilisez une liste de domaines autorisés, le pare-feu réseau envoie le trafic uniquement vers des domaines spécifiques et supprime toutes les autres requêtes.
Pour plus d'informations, consultez les sections Chaînes de règles compatibles avec Suricata dans AWS Network Firewall et Groupes de règles de liste de domaines dynamiques dans AWS Network Firewall.
Résolution
Configurer un groupe de listes de domaines pour une politique avec l'ordre d'action par défaut
Procédez comme suit :
- Créez un pare-feu.
- Dans le volet de navigation de la console Amazon VPC, sous Pare-feu réseau, sélectionnez Politiques de pare-feu.
- Sélectionnez la politique de pare-feu d’ordre d’action par défaut que vous souhaitez modifier.
- Sous Groupes de règles dynamiques, choisissez Actions, puis Créer un groupe de règles dynamiques.
- Dans Format du groupe de règles dynamiques, choisissez Liste de domaines.
Remarque : Vous ne pouvez pas modifier l'ordre des règles dynamiques car il est hérité de la politique. L'ordre des règles apparaît comme Ordre d’action. - Entrez un nom de groupe de règles unique.
- Dans Réserve de capacité, entrez une estimation du nombre de domaines que la liste inclura.
Remarque : Une fois que vous avez créé le groupe de règles, vous ne pouvez pas modifier la valeur. - Sous Liste de domaines, pour Source du nom de domaine, entrez les noms de domaine que vous souhaitez faire correspondre. Vous pouvez définir des domaines comme correspondant exactement, par exemple abc.example.com. Vous pouvez également les définir comme un caractère générique, par exemple .example.com.
- Dans Gammes CIDR, choisissez l'une des options suivantes :
Par défaut pour une adresse IP source qui existe dans le même VPC que le pare-feu.
Personnalisé pour une adresse IP source qui existe dans un VPC distant. Entrez les sous-réseaux source que vous souhaitez que le pare-feu inspecte sous Plages d’adresses CIDR IP source. - Dans Protocoles, sélectionnez HTTP et HTTPS.
- Dans Action, sélectionnez Autoriser.
- Sélectionnez Créer un groupe de règles.
Définir une règle IPS compatible avec Suricata pour une politique avec l'évaluation de l’ordre d'action
Procédez comme suit :
- Créez un pare-feu.
- Dans le volet de navigation de la console Amazon VPC, sous Pare-feu réseau, sélectionnez Politiques de pare-feu.
- Sélectionnez la politique de pare-feu d’ordre d’action par défaut que vous souhaitez modifier.
- Sous Groupes de règles dynamiques, choisissez Actions, puis Créer un groupe de règles dynamiques.
- Dans Format du groupe de règles dynamiques, choisissez Chaîne de règles compatible avec Suricata.
Remarque : Vous ne pouvez pas modifier l'ordre des règles dynamiques car il est hérité de la politique. L'ordre des règles apparaît comme Ordre d’action. - Entrez un nom de groupe de règles unique.
- Dans Réserve de capacité, entrez une estimation du nombre de domaines que la liste inclura.
Remarque : Une fois que vous avez créé le groupe de règles, vous ne pouvez pas modifier la valeur. - (Facultatif) Définissez des variables de règle personnalisées à utiliser dans les signatures Suricata.
- (Facultatif) Définissez les références d’ensembles d’adresses IP à utiliser dans les signatures Suricata.
- Sous Chaîne de règles compatible avec Suricata, entrez les règles suivantes :
pass http $HOME_NET any -> $EXTERNAL_NET any (http.host; dotprefix; content:".amazonaws.com"; endswith; msg:"matching HTTP allowlisted FQDNs"; flow:to_server, established; sid:1; rev:1;) pass http $HOME_NET any -> $EXTERNAL_NET any (http.host; content:"example.com"; startswith; endswith; msg:"matching HTTP allowlisted FQDNs"; flow:to_server, established; sid:2; rev:1;) pass tls $HOME_NET any -> $EXTERNAL_NET any (tls.sni; dotprefix; content:".amazonaws.com"; nocase; endswith; msg:"matching TLS allowlisted FQDNs"; flow:to_server, established; sid:3; rev:1;) pass tls $HOME_NET any -> $EXTERNAL_NET any (tls.sni; content:"example.com"; startswith; nocase; endswith; msg:"matching TLS allowlisted FQDNs"; flow:to_server, established; sid:4; rev:1;) drop http $HOME_NET any -> $EXTERNAL_NET any (http.header_names; content:"|0d 0a|"; startswith; msg:"not matching any HTTP allowlisted FQDNs"; flow:to_server, established; sid:5; rev:1;) drop tls $HOME_NET any -> $EXTERNAL_NET any (msg:"not matching any TLS allowlisted FQDNs"; flow:to_server, established; sid:6; rev:1;)
Remarque : Dans les règles précédentes, remplacez les domaines par ceux que vous souhaitez inclure. Sélectionnez Créer un groupe de règles.
Remarque : Les règles de domaine incluent généralement le mot-clé de flux établi, mais il se peut qu’il ne tienne pas compte de tous les cas extrêmes d’échange de paquets hors flux. Avant d’utiliser un exemple de liste de règles, testez la règle pour vérifier qu’elle fonctionne comme prévu.
Configurer un groupe de règles de liste de domaines pour une politique avec l’ordre d'évaluation strict
Procédez comme suit :
- Créez un pare-feu.
- Dans le volet de navigation de la console Amazon VPC, sous Pare-feu réseau, sélectionnez Politiques de pare-feu.
- Sélectionnez la politique de pare-feu stricte relative à l’ordre d’évaluation que vous souhaitez modifier.
- Sous Groupes de règles dynamiques, choisissez Actions, puis Créer un groupe de règles dynamiques.
- Dans Format du groupe de règles dynamiques, choisissez Liste de domaines.
Remarque : Vous ne pouvez pas modifier l'ordre des règles dynamiques car il est hérité de la politique. L’ordre des règles apparaît comme Strict. - Entrez un nom de groupe de règles unique.
- Dans Réserve de capacité, entrez une estimation du nombre de domaines que la liste inclura.
Remarque : Une fois que vous avez créé le groupe de règles, vous ne pouvez pas modifier la valeur. - Sous Liste de domaines, pour Source du nom de domaine, entrez les noms de domaine que vous souhaitez faire correspondre. Vous pouvez définir des domaines comme correspondant exactement, par exemple abc.example.com. Vous pouvez également les définir comme un caractère générique, par exemple .example.com.
- Dans Gammes CIDR, choisissez l'une des options suivantes :
Par défaut pour une adresse IP source qui existe dans le même VPC que le pare-feu.
Personnalisé pour une adresse IP source qui existe dans un VPC distant. Entrez les sous-réseaux source que vous souhaitez que le pare-feu inspecte sous Plages d’adresses CIDR IP source. - Dans Protocoles, sélectionnez HTTP et HTTPS.
- Dans Action, sélectionnez Autoriser.
- Sélectionnez Créer un groupe de règles.
- Dans le volet de navigation, sous Pare-feu réseau, choisissez Politiques de pare-feu.
- Sélectionnez votre politique d’ordre strict.
- Dans Ordre d’évaluation des règles dynamiques et actions par défaut, choisissez Modifier.
- Dans Actions par défaut, choisissez Abandon établi, puis cliquez sur Enregistrer.
Définir une règle IPS compatible avec Suricata pour une politique avec un ordre d'évaluation strict
Procédez comme suit :
- Créez un pare-feu.
- Dans le volet de navigation de la console Amazon VPC, sous Pare-feu réseau, sélectionnez Politiques de pare-feu.
- Sélectionnez la politique de pare-feu stricte relative à l’ordre d’évaluation que vous souhaitez modifier.
- Sous Groupes de règles dynamiques, choisissez Actions, puis Créer un groupe de règles dynamiques.
- Dans Format du groupe de règles dynamiques, choisissez Chaîne de règles compatible avec Suricata.
Remarque : Vous ne pouvez pas modifier l'ordre des règles dynamiques car il est hérité de la politique. L’ordre des règles apparaît comme Strict. - Entrez un nom de groupe de règles unique.
- Dans Réserve de capacité, entrez une estimation du nombre de domaines que la liste inclura.
Remarque : Une fois que vous avez créé le groupe de règles, vous ne pouvez pas modifier la valeur. - (Facultatif) Définissez des variables de règle personnalisées à utiliser dans les signatures Suricata que vous définissez.
- (Facultatif) Définissez les références d’ensembles d’adresses IP à utiliser dans les signatures Suricata que vous définissez.
- Sous Chaîne de règles compatible avec Suricata, entrez les règles suivantes :
pass http $HOME_NET any -> $EXTERNAL_NET any (http.host; dotprefix; content:".amazonaws.com"; endswith; msg:"matching HTTP allowlisted FQDNs"; flow:to_server, established; sid:1; rev:1;) pass http $HOME_NET any -> $EXTERNAL_NET any (http.host; content:"example.com"; startswith; endswith; msg:"matching HTTP allowlisted FQDNs"; flow:to_server, established; sid:2; rev:1;) pass tls $HOME_NET any -> $EXTERNAL_NET any (tls.sni; dotprefix; content:".amazonaws.com"; nocase; endswith; msg:"matching TLS allowlisted FQDNs"; flow:to_server, established; sid:3; rev:1;) pass tls $HOME_NET any -> $EXTERNAL_NET any (tls.sni; content:"example.com"; startswith; nocase; endswith; msg:"matching TLS allowlisted FQDNs"; flow:to_server, established; sid:4; rev:1;)
Remarque : Dans les règles précédentes, remplacez les domaines par ceux que vous souhaitez inclure. Sélectionnez Créer un groupe de règles. Dans le volet de navigation, sous Pare-feu réseau, choisissez Politiques de pare-feu. Sélectionnez votre politique d’ordre strict. Dans Ordre d’évaluation des règles dynamiques et actions par défaut, choisissez Modifier. Dans Actions par défaut, choisissez Abandon établi, puis cliquez sur Enregistrer.
Remarque : Les règles de domaine incluent généralement le mot-clé de flux établi. Ce mot-clé peut ne pas capturer tous les cas extrêmes où des paquets sont échangés en dehors des flux de connexion normaux. Avant d’utiliser un exemple de liste de règles, testez la règle pour vérifier qu’elle fonctionne comme prévu.
Tester vos configurations
Pour vérifier le bon fonctionnement de vos configurations, exécutez les commandes curl sur les domaines spécifiés.
L'exemple de commande suivant teste l'accès HTTPS au domaine https://example.com :
curl -v --silent https://example.com --stderr - | grep 200
Si l'accès est autorisé, la sortie suivante s’affiche :
< HTTP/2 200
L'exemple de commande suivant teste l'accès HTTP à http://www.google.com :
curl -v http://www.google.com
L'exemple de sortie suivant montre que les règles de pare-feu bloquent le trafic HTTP car la connexion s'arrête à la requête GET :
* Trying 172.253.115.99:80... * Connected to www.google.com (http://www.google.com/) (172.253.115.99) port 80 (#0) > GET / HTTP/1.1 > Host: www.google.com (http://www.google.com/) > User-Agent: curl/7.79.1 > Accept: /
L'exemple de commande suivant teste l'accès HTTPS à https://www.google.com :
curl -v https://www.google.com
La sortie indique que le trafic HTTPS est bloqué car la connexion s'arrête pendant le handshake TLS :
* Trying 172.253.115.147:443... * Connected to www.google.com (https://www.google.com/) (172.253.115.147) port 443 (#0) * ALPN, offering h2 * ALPN, offering http/1.1 * Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH * successfully set certificate verify locations: * CAfile: /etc/pki/tls/certs/ca-bundle.crt * CApath: none * TLSv1.2 (OUT), TLS header, Certificate Status (22): * TLSv1.2 (OUT), TLS handshake, Client hello (1):
Informations connexes
Politiques de pare-feu dans le pare-feu réseau
- Balises
- AWS Network Firewall
- Langue
- Français

Contenus pertinents
- demandé il y a un an
- demandé il y a un an