Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utilisez Network Firewall pour capturer les noms de domaine DNS à partir de l'indication du nom du serveur pour le trafic sortant
Créée par Kirankumar Chandrashekar (AWS)
Récapitulatif
Ce modèle vous montre comment utiliser AWS Network Firewall pour collecter les noms de domaine DNS fournis par l'indication du nom du serveur (SNI) dans l'en-tête HTTPS de votre trafic réseau sortant. Network Firewall est un service géré qui facilite le déploiement de protections réseau critiques pour Amazon Virtual Private Cloud (Amazon VPC), notamment la possibilité de sécuriser le trafic sortant à l'aide d'un pare-feu qui bloque les paquets qui ne répondent pas à certaines exigences de sécurité. La sécurisation du trafic sortant vers des noms de domaine DNS spécifiques est appelée filtrage de sortie, qui consiste à surveiller et éventuellement à restreindre le flux d'informations sortantes d'un réseau à un autre.
Après avoir capturé les données SNI qui passent par Network Firewall, vous pouvez utiliser Amazon CloudWatch Logs et AWS Lambda pour publier les données sur une rubrique Amazon Simple Notification Service (Amazon SNS) qui génère des notifications par e-mail. Les notifications par e-mail incluent le nom du serveur et d'autres informations SNI pertinentes. En outre, vous pouvez utiliser le résultat de ce modèle pour autoriser ou restreindre le trafic sortant par nom de domaine dans le SNI en utilisant des règles de pare-feu. Pour plus d'informations, consultez la section Utilisation de groupes de règles dynamiques dans AWS Network Firewall dans la documentation Network Firewall.
Conditions préalables et limitations
Prérequis
Un compte AWS actif.
Interface de ligne de commande AWS (AWS CLI) version 2, installée et configurée sous Linux, macOS ou Windows.
Network Firewall, installé et configuré dans Amazon VPC et utilisé pour inspecter le trafic sortant. Vous pouvez configurer Network Firewall pour utiliser l'une des configurations VPC suivantes :
Architecture
Le schéma suivant montre comment utiliser Network Firewall pour collecter des données SNI à partir du trafic réseau sortant, puis publier ces données sur une rubrique SNS à l'aide de Logs CloudWatch et Lambda.

Le schéma suivant illustre le flux de travail suivant :
Network Firewall collecte les noms de domaine à partir des données SNI contenues dans l'en-tête HTTPS de votre trafic réseau sortant.
CloudWatch Logs surveille les données SNI et invoque une fonction Lambda chaque fois que le trafic réseau sortant passe par Network Firewall.
La fonction Lambda lit les données SNI capturées par CloudWatch Logs, puis les publie dans une rubrique SNS.
La rubrique SNS vous envoie une notification par e-mail qui inclut les données SNI.
Automatisation et mise à l'échelle
Vous pouvez utiliser AWS CloudFormation pour créer ce modèle en utilisant l'infrastructure comme code.
Pile technologique
Amazon CloudWatch Logs
Amazon SNS
Amazon VPC
AWS Lambda
AWS Network Firewall
Outils
Services AWS
Amazon CloudWatch Logs : vous pouvez utiliser Amazon CloudWatch Logs pour surveiller, stocker et accéder à vos fichiers journaux à partir d'instances Amazon Elastic Compute Cloud (Amazon EC2), d'AWS CloudTrail, d'Amazon Route 53 et d'autres sources.
Amazon SNS — Amazon Simple Notification Service (Amazon SNS) est un service géré qui permet aux éditeurs de transmettre des messages aux abonnés (également appelés producteurs et consommateurs).
Amazon VPC — Amazon Virtual Private Cloud (Amazon VPC) fournit une section logiquement isolée du cloud AWS dans laquelle vous pouvez lancer des ressources AWS dans un réseau virtuel que vous avez défini. Ce réseau virtuel ressemble beaucoup à un réseau traditionnel que vous pourriez exécuter dans votre propre data center, et présente l'avantage d'utiliser l'infrastructure évolutive d'AWS.
AWS Lambda — AWS Lambda est un service de calcul qui vous permet d'exécuter du code sans provisionner ni gérer de serveurs.
AWS Network Firewall — AWS Network Firewall est un service géré qui facilite le déploiement de protections réseau essentielles pour l'ensemble de votre Amazon VPCs.
Épopées
Tâche | Description | Compétences requises |
---|---|---|
Créez un groupe de CloudWatch journaux. |
Pour plus d'informations, consultez la section Utilisation des groupes de journaux et des flux de journaux dans la CloudWatch documentation. | Administrateur du cloud |
Tâche | Description | Compétences requises |
---|---|---|
Créez une rubrique SNS. | Pour créer une rubrique SNS, suivez les instructions de la documentation Amazon SNS. | Administrateur du cloud |
Abonnez un point de terminaison à la rubrique SNS. | Pour abonner une adresse e-mail en tant que point de terminaison à la rubrique SNS que vous avez créée, suivez les instructions de la documentation Amazon SNS. Pour Protocole, choisissez Email/Email-JSON. NoteVous pouvez également choisir un point de terminaison différent en fonction de vos besoins. | Administrateur du cloud |
Tâche | Description | Compétences requises |
---|---|---|
Activez la journalisation du pare-feu. |
Pour plus d'informations sur l'utilisation CloudWatch des journaux comme destination des journaux pour Network Firewall, consultez Amazon CloudWatch Logs dans la documentation de Network Firewall. | Administrateur du cloud |
Tâche | Description | Compétences requises |
---|---|---|
Créez une règle dynamique. |
| Administrateur du cloud |
Associez la règle dynamique à Network Firewall. |
| Administrateur du cloud |
Tâche | Description | Compétences requises |
---|---|---|
Créez le code de la fonction Lambda. | Dans un environnement de développement intégré (IDE) capable de lire l'événement CloudWatch Logs de Network Firewall pour le trafic sortant, collez le code Python 3 suivant et remplacez-le
Cet exemple de code analyse le contenu CloudWatch des journaux et capture le nom du serveur fourni par le SNI dans l'en-tête HTTPS. | Développeur d’applications |
Créez la fonction Lambda. | Pour créer la fonction Lambda, suivez les instructions de la documentation Lambda et choisissez Python 3.9 for Runtime. | Administrateur du cloud |
Ajoutez le code à la fonction Lambda. | Administrateur du cloud | |
Ajoutez CloudWatch des journaux comme déclencheur à la fonction Lambda. |
Pour plus d'informations, consultez la section Utilisation de Lambda avec des CloudWatch journaux dans la documentation Lambda. | Administrateur du cloud |
Ajoutez des autorisations de publication sur SNS. | Ajoutez l'autorisation SNS:Publish au rôle d'exécution Lambda, afin que Lambda puisse effectuer des appels d'API pour publier des messages sur SNS.
| Administrateur du cloud |
Tâche | Description | Compétences requises |
---|---|---|
Envoyez du trafic via Network Firewall. |
Consultez ensuite le journal des alertes Network Firewall sur Amazon CloudWatch en suivant les instructions de la CloudWatch documentation Amazon. Le journal des alertes affiche le résultat suivant :
| Ingénieur de test |