Surveillez les paires de clés d'instances EC2 à l'aide d'AWS Config - Recommandations AWS

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.

Surveillez les paires de clés d'instances EC2 à l'aide d'AWS Config

Environnement : Production

Technologies : sécurité, identité, conformité

Services AWS : Amazon SNS ; AWS Config ; AWS Lambda

Récapitulatif

Lors du lancement d'une instance Amazon Elastic Compute Cloud (Amazon EC2) sur le cloud Amazon Web Services (AWS), il est recommandé de créer ou d'utiliser une paire de clés existante pour se connecter à l'instance. La paire de clés, composée d'une clé publique stockée dans l'instance et d'une clé privée fournie à l'utilisateur, permet un accès sécurisé via Secure Shell (SSH) à l'instance et évite l'utilisation de mots de passe. Cependant, les utilisateurs peuvent parfois lancer des instances par inadvertance sans attacher de paire de clés. Les paires de clés ne pouvant être attribuées que lors du lancement d'une instance, il est important d'identifier rapidement et de signaler comme non conforme les instances lancées sans paires de clés. Cela est particulièrement utile lorsque vous travaillez dans des comptes ou des environnements qui nécessitent l'utilisation de paires de clés, par exemple l'accès.

Ce modèle décrit comment créer une règle personnalisée dans AWS Config pour surveiller les paires de clés d'instance EC2. Lorsque des instances sont identifiées comme non conformes, une alerte est envoyée à l'aide des notifications Amazon Simple Notification Service (Amazon SNS) initiées par le biais d'un événement Amazon. EventBridge

Conditions préalables et limitations

Prérequis

  • Un compte AWS actif

  • AWS Config est activé pour la région AWS que vous souhaitez surveiller et configuré pour enregistrer toutes les ressources AWS

Limites

  • Cette solution est spécifique à chaque région. Toutes les ressources doivent être créées dans la même région AWS.

Architecture

Pile technologique cible

  • AWS Config

  • Amazon EventBridge

  • AWS Lambda

  • Amazon SNS

Architecture cible

  1. AWS Config initie la règle.

  2. La règle invoque la fonction Lambda pour évaluer la conformité des instances EC2.

  3. La fonction Lambda envoie l'état de conformité mis à jour à AWS Config.

  4. AWS Config envoie un événement à EventBridge.

  5. EventBridge publie des notifications de modification de conformité dans une rubrique SNS.

  6. Amazon SNS envoie une alerte par e-mail.

Automatisation et mise à l'échelle

La solution peut surveiller un nombre illimité d'instances EC2 au sein d'une région.

Outils

Outils

  • AWS Config — AWS Config est un service qui vous permet d'évaluer, d'auditer et d'évaluer les configurations de vos ressources AWS. AWS Config surveille et enregistre en permanence les configurations de vos ressources AWS et vous permet d'automatiser l'évaluation des configurations enregistrées par rapport aux configurations souhaitées.

  • Amazon EventBridge — Amazon EventBridge est un service de bus d'événements sans serveur permettant de connecter vos applications à des données provenant de diverses sources.

  • AWS Lambda — AWS Lambda est un service de calcul sans serveur qui permet d'exécuter du code sans provisionner ni gérer de serveurs, de créer une logique de dimensionnement des clusters adaptée à la charge de travail, de gérer les intégrations d'événements ou de gérer les temps d'exécution.

  • Amazon SNS — Amazon Simple Notification Service (Amazon SNS) est un service de messagerie entièrement géré pour les communications (A2A) application-to-application et (A2P). application-to-person

Code

Le code de la fonction Lambda est joint. 

Épopées

TâcheDescriptionCompétences requises
Créez un rôle AWS Identity and Access Management (IAM) pour Lambda.

Sur la console de gestion AWS, choisissez IAM, puis créez le rôle en utilisant Lambda comme entité de confiance et en ajoutant AmazonEventBridgeFullAccess les AWSConfigRulesExecutionRole autorisations et. Pour plus d'informations, consultez la documentation AWS.

DevOps
Créez et déployez la fonction Lambda.
  1. Sur la console Lambda, créez une fonction en utilisant Author from scratch, avec Python 3.6 comme moteur d'exécution et le rôle IAM créé précédemment. Notez l’Amazon Resource Name (ARN).

  2. Dans l'onglet Codelambda_function.py, choisissez et collez le code associé à ce modèle. 

  3. Pour enregistrer vos modifications, choisissez Déployer

DevOps
TâcheDescriptionCompétences requises
Ajoutez une règle AWS Config personnalisée.

Sur la console AWS Config, ajoutez une règle personnalisée à l'aide des paramètres suivants :

  • ARN — L'ARN de la fonction Lambda créée précédemment

  • Type de déclencheur : modifications de configuration

  • Portée des modifications — Ressources

  • Type de ressource : instance Amazon EC2

Pour plus d'informations, consultez la documentation AWS.

DevOps
TâcheDescriptionCompétences requises
Créez le sujet et l'abonnement SNS.

Sur la console Amazon SNS, créez un sujet en utilisant le type Standard, puis créez un abonnement en utilisant le protocole Email comme protocole.

Lorsque vous recevez le message électronique de confirmation, cliquez sur le lien pour confirmer l'abonnement.

Pour plus d'informations, consultez la documentation AWS.

DevOps
Créez une EventBridge règle pour lancer les notifications Amazon SNS.

Sur la EventBridge console, créez une règle à l'aide des paramètres suivants :

  • Nom du service — AWS Config

  • Type d'événement : modification de la conformité aux règles de configuration

  • Type de message : types de messages spécifiques, ComplianceChangeNotification

  • Nom de règle spécifique : nom de votre règle AWS Config créée précédemment

  • Cible : sujet SNS, sujet que vous avez créé précédemment

Pour plus d'informations, consultez la documentation AWS.

DevOps
TâcheDescriptionCompétences requises
Créez des instances EC2.

Créez deux instances EC2 de n'importe quel type et attachez une paire de clés, puis créez une instance EC2 sans paire de clés.

DevOps
Vérifiez la règle.
  1. Sur la console AWS Config, sur la page Règles, sélectionnez votre règle.

  2. Pour voir les instances EC2 conformes et non conformes, remplacez Resources in scope par All. Vérifiez que deux instances sont répertoriées comme conformes et qu'une instance est répertoriée comme non conforme. 

  3. Attendez de recevoir la notification par e-mail d'Amazon SNS concernant l'état de conformité des instances EC2. 

DevOps

Pièces jointes

Pour accéder au contenu supplémentaire associé à ce document, décompressez le fichier suivant : attachment.zip