Wie kann ich einen AWS Config-Bereitstellungskanal neu erstellen?
Ich habe meinen AWS Config-Bereitstellungskanal gelöscht und möchte den Kanal neu erstellen.
Kurzbeschreibung
Wenn Sie die AWS Config-Konsole verwenden, um AWS Config einzurichten, führt Sie ein Einrichtungsvorgang zur Konfiguration der AWS-Ressourcen. Die Ressourcen sind so konfiguriert, dass sie Benachrichtigungen an den Bereitstellungskanal senden. Die AWS Config-Einrichtung umfasst die Konfiguration der folgenden Ressourcen:
- Amazon Simple Storage Service (Amazon S3)-Bucket
- Amazon Simple Notification Service (Amazon SNS)-Thema
- Rolle für AWS Identity and Access Management (IAM)
- Die aufzuzeichnenden Ressourcentypen
Wenn Sie einen AWS Config-Bereitstellungskanal mit dem Befehl delete-delivery-channel der AWS Command Line Interface (AWS CLI) löschen, wird der Konfigurationsrekorder ausgeschaltet. Wenn Sie versuchen, den Konfigurationsrekorder einzuschalten, wird die folgende Fehlermeldung angezeigt:
„Delivery channel is not available to start configuration recorder.“
Hinweis: Sie können den Bereitstellungskanal nicht mithilfe der AWS Config-Konsole neu erstellen.
Lösung
**Hinweis:**Wenn Sie beim Ausführen von Befehlen in AWS CLI Fehlermeldungen erhalten, finden Sie weitere Informationen unter Troubleshoot AWS CLI errors. Stellen Sie außerdem sicher, dass Sie die neueste Version von AWS CLI verwenden.
Führen Sie die folgenden Schritte aus, um den AWS Config-Bereitstellungskanal manuell neu zu erstellen und den Konfigurationsrekorder einzuschalten.
Hinweis: Wenn Sie den Amazon S3-Bucket, das S3-Thema und die IAM-Rolle, die dem gelöschten AWS Config-Bereitstellungskanal zugeordnet sind, nicht gelöscht haben, können Sie diese Schritte überspringen.
Erstellen des Amazon S3-Buckets
Führen Sie die folgenden Schritte aus:
- Öffnen Sie die Amazon S3-Konsole in derselben AWS-Region wie Ihr AWS Config-Service.
- Wählen Sie im Navigationsbereich Bucket erstellen aus.
- Geben Sie als Bucket-Name einen Namen für den S3-Bucket ein, und wählen Sie dann Bucjet erstellen aus.
- Wählen Sie in S3-Buckets den S3-Bucket aus, den Sie gerade erstellt haben.
- Wählen Sie Berechtigungen und dann Bucket Policy (Bucket-Richtlinie) aus.
- Kopieren Sie die folgende Bucket-Richtlinie, die als Beispiel dient, und wählen Sie dann Speichern:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSConfigBucketPermissionsCheck", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::targetBucketName", "Condition": { "StringEquals": { "AWS:SourceAccount": "sourceAccountID" } } }, { "Sid": "AWSConfigBucketExistenceCheck", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::targetBucketName", "Condition": { "StringEquals": { "AWS:SourceAccount": "sourceAccountID" } } }, { "Sid": "AWSConfigBucketDelivery", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::targetBucketName/[optional] prefix/AWSLogs/sourceAccountID/Config/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control", "AWS:SourceAccount": "sourceAccountID" } } } ] }
Erstellen des SNS-Themas
Führen Sie die folgenden Schritte aus:
- Öffnen Sie die Amazon SNS-Konsole in derselben Region wie Ihr AWS Config-Service.
- Wählen Sie im Navigationsbereich Themen und wählen Sie dann Thema erstellen aus.
- Geben Sie unter Name einen Namen für Ihr SNS-Thema ein. Wählen Sie dann Thema erstellen aus.
- Wählen Sie Abonnement erstellen.
- Wählen Sie für Protokoll die Option E-Mail.
- Geben Sie für Endpunkt die E-Mail-Adresse ein, die Sie mit diesem SNS-Thema verknüpfen möchten, und wählen Sie dann Abonnement erstellen aus.
- Suchen Sie in Ihrer E-Mail nach der Abonnementbestätigung, und wählen Sie dann Abonnement erstellen aus.
Nachdem Sie Ihr Abonnement bestätigt haben, erhalten Sie die Meldung Abonnement bestätigt!
Hinweis: Um Ihr SNS-Thema verwenden zu können, stellen Sie sicher, dass Sie über die erforderlichen Berechtigungen verfügen.
Erstellen der IAM-Rolle
Führen Sie die folgenden Schritte aus:
-
Öffnen Sie die IAM-Konsole.
-
Wählen Sie Rollen und dann Create role (Rolle erstellen) aus.
-
Wählen Sie für Select type of trusted entity (Typ der vertrauenswürdigen Entität auswählen) die Option AWS Service aus.
-
Wählen Sie unter Use cases for other AWS services (Anwendungsfälle für andere AWS-Services) die Option Config aus.
-
Wählen Sie unter Wählen Sie Ihren Anwendungsfall aus die Option Config – Customizable (Config – Personalisierbar) aus, und klicken Sie dann auf Weiter: Berechtigungen.
-
Wählen Sie Weiter, geben Sie einen Rollennamen ein, und wählen Sie dann Rolle erstellen aus.
-
Wählen Sie die von Ihnen erstellte Rolle aus, wählen Sie Create inline policy (Inline-Richtlinie erstellen), und wählen Sie dann die Registerkarte JSON.
-
Geben Sie die folgende Beispielrichtlinie ein:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:PutObjectAcl" ], "Resource": [ "arn:aws:s3:::arn:aws:s3:::targetBucketName/[optional] prefix/AWSLogs/sourceAccountID-WithoutHyphens/*" ], "Condition": { "StringLike": { "s3:x-amz-acl": "bucket-owner-full-control" } } }, { "Effect": "Allow", "Action": [ "s3:GetBucketAcl" ], "Resource": "arn:aws:s3:::targetBucketName" }, { "Effect": "Allow", "Action": "sns:Publish", "Resource": "arn:aws:sns:region:account_number:targetTopicName" } ] }
-
Geben Sie als Richtlinienname einen Namen ein, und wählen Sie dann Richtlinie Create policy (Richtlinie erstellen) aus.
Erstellen des KMS-Schlüssels
Es ist eine bewährte Methode, die auf dem AWS Key Management Service (AWS KMS) basierende Verschlüsselung für Objekte zu verwenden, die von AWS Config an einen Amazon S3-Bucket übermittelt werden. Erstellen Sie einen KMS-Schlüssel in derselben Region wie Ihr AWS Config-Service.
Führen Sie die folgenden Schritte aus:
- Öffnen Sie AWS-KMS-Konsole.
- Wählen Sie im Navigationsbereich Vom Kunden verwaltete Schlüssel aus, und wählen Sie dann Schlüssel erstellen aus.
- Wählen Sie als Schlüsseltyp die Option Symmetrisch aus, um einen KMS-Schlüssel mit symmetrischer Verschlüsselung zu erstellen.
- Wählen Sie für Schlüsselnutzung die Option Verschlüsseln und Entschlüsseln und dann Weiter.
- Geben Sie einen Alias für Ihren KMS-Schlüssel ein. Wählen Sie dann Weiter aus.
Hinweis: Der Aliasname darf nicht mit aws/ beginnen. - Wählen Sie die IAM-Benutzer und -Rollen aus, die den KMS-Schlüssel verwalten können. Wählen Sie dann Weiter aus.
- Wählen Sie die IAM-Benutzer und -Rollen aus, die den Schlüssel für kryptografische Vorgänge verwenden können. Wählen Sie dann Weiter.
- Wählen Sie Abschließen, um den KMS-Schlüssel zu erstellen.
- Wählen Sie im Navigationsbereich Vom Kunden verwaltete Schlüssel. Wählen Sie dann unter Vom Kunden verwaltete Schlüssel den Schlüssel aus, den Sie erstellt haben.
- Wählen Sie auf der Registerkarte Schlüsselrichtlinie die Option Zur Richtlinienansicht aus. Wählen Sie dann Bearbeiten.
- Wenn Sie eine benutzerdefinierte IAM-Rolle für AWS Config verwenden, geben Sie die folgende Richtlinienerklärung als zusätzliche wichtige Schlüsselrichtlinienerklärung ein. Wählen Sie dann Änderungen speichern aus.
{ "Statement": [ { "Sid": "AWSConfigKMSPolicy", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Effect": "Allow", "Resource": "myKMSKeyARN", "Principal": { "AWS": [ "arn:aws:iam:account_id:role/my-config-role-name" ] } } ] }
Oder, wenn Sie Serviceverknüpfte Rollen (SLRs) für AWS Config verwenden, verwenden Sie die folgende Richtlinienerklärung, um die KMS-Schlüsselrichtlinie zu aktualisieren:
{ "Statement": [ { "Sid": "AWSConfigKMSPolicy", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "myKMSKeyARN", "Condition": { "StringEquals": { "AWS:SourceAccount": "sourceAccountID" } } } ] }
Erstellen des Bereitstellungkanals
Führen Sie die folgenden Schritte aus:
-
Geben Sie die folgende Beispielvorlage in einen Texteditor ein, und speichern Sie sie dann als JSON-Datei:
{ "name": "default", "s3BucketName": "targetBucketName", "s3KeyPrefix": "Optionalprefix", "snsTopicARN": "arn:aws:sns:region:account_ID:targetTopicName", "s3KmsKeyArn": "arn:aws:kms:region:account_ID:KmsKey", "configSnapshotDeliveryProperties": { "deliveryFrequency": "Twelve_Hours" } }
Hinweis: Sie müssen das S3KeyPrefix angeben, wenn die S3-Bucket-Richtlinie PutObject auf ein bestimmtes Präfix statt auf das Standardpräfix beschränkt. Sie können den Wert deliveryFrequency an Ihren Anwendungsfall anpassen. Wenn Sie die Verschlüsselung nicht aktivieren möchten, lassen Sie den Wert s3KmsKeyArn aus der JSON-Datei weg.
-
Führen Sie den AWS CLI-Befehl put-delivery-channel aus:
$ aws configservice put-delivery-channel --delivery-channel file://deliveryChannel.json
-
Führen Sie den AWS CLI-Befehl describe-delivery-channels aus, um zu bestätigen, dass der Bereitstellungskanal erstellt wurde:
$ aws configservice describe-delivery-channels
Starten des Konfigurationsrekorders
Führen Sie die folgenden Schritte aus:
- Öffnen Sie AWS Config-Konsole.
- Wählen Sie im Navigationsbereich Einstellungen aus.
- Wählen Sie unter Aufnahme ist aus die Option Einschalten und dann Fortfahren. Oder führen Sie den AWS CLI-Befehl start-configuration-recorder aus:
$ aws configservice start-configuration-recorder --configuration-recorder-name configRecorderName
Weitere Informationen finden Sie unter Verwaltung des Konfigurationsrekorders und Evaluieren von Ressourcen mit AWS Config-Regeln.
Ähnliche Informationen
Einrichten von AWS Config mit der Konsole
Wie kann ich Fehlermeldungen der AWS Config-Konsole beheben?
Ähnliche Videos
Relevanter Inhalt
- AWS OFFICIALAktualisiert vor 3 Jahren
- AWS OFFICIALAktualisiert vor einem Jahr
- AWS OFFICIALAktualisiert vor einem Jahr
- AWS OFFICIALAktualisiert vor 23 Tagen