Wie kann ich einen AWS Config-Bereitstellungskanal neu erstellen?

Lesedauer: 7 Minute
0

Ich habe meinen AWS Config-Bereitstellungskanal gelöscht. Wie kann ich ihn neu erstellen?

Kurzbeschreibung

Wenn Sie AWS Config mithilfe der AWS Config-Konsole einrichten, werden Sie in einem Einrichtungsprozess dabei unterstützt, AWS-Ressourcen so zu konfigurieren, dass Benachrichtigungen an den Bereitstellungskanal gesendet werden. Die Einrichtung von AWS Config umfasst die Konfiguration eines Amazon Simple Storage Service (Amazon S3)-Buckets, eines Amazon Simple Notification Service (Amazon SNS)-Themas, einer AWS Identity and Access Management (IAM)-Rolle und der aufzuzeichnenden Ressourcentypen.

Wenn Sie einen AWS Config-Bereitstellungskanal mit dem Befehl delete-delivery-channel der AWS-Befehlszeilenschnittstelle (AWS CLI) löschen, wird der Konfigurationsrekorder ausgeschaltet. Wenn Sie versuchen, den Konfigurationsrekorder erneut einzuschalten, wird der Fehler „AWS Config kann die Aufzeichnung nicht starten, da der Bereitstellungskanal nicht gefunden wurde“ zurückgegeben"

Hinweis: Sie können den Bereitstellungskanal nicht mithilfe der AWS Config-Konsole neu erstellen.

Lösung

Folgen Sie diesen Anweisungen, 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

1.    Öffnen Sie die Amazon S3-Konsole in derselben Region wie Ihr AWS Config-Service und wählen Sie Bucket erstellen aus.

2.    Geben Sie im Feld Bucketname einen Namen für den S3-Bucket ein, und wählen Sie dann Weiter aus.

3.    Wählen Sie Weiter, Weiter und dann Bucket erstellen aus.

4.    Wählen Sie in S3-Buckets den S3-Bucket aus, den Sie gerade in Schritt 3 erstellt haben.

5.    Wählen Sie Berechtigungen und dann Bucketrichtlinie aus.

6.    Kopieren Sie die folgende Beispiel- Bucket-Richtlinie, fügen Sie sie ein 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

1.    Öffnen Sie die Amazon SNS-Konsole in derselben Region wie Ihr AWS Config-Service und wählen Sie dann Themen aus.

2.    Wählen Sie Thema erstellen aus.

3.    Geben Sie unter Name einen Namen für Ihr SNS-Thema ein. Wählen Sie dann Theme erstellen aus.

4.    Wählen Sie Abonnement erstellen aus.

5.    Wählen Sie für Protokoll die Option E-Mail.

6.    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.

7.    Suchen Sie in Ihrer E-Mail nach der Abonnementbestätigung, und wählen Sie dann Abonnement bestätigen aus.

8.    Sie erhalten die Nachricht 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

1.    Öffnen Sie die IAM-Konsole.

2.    Wählen Sie Rollen und dann Rolle erstellen aus.

3.    Wählen Sie unter Typ der vertrauenswürdigen Entität auswählen die Option AWS-Service aus.

4.    Wählen Sie unter Anwendungsfälle für andere AWS-Services die Option Config aus.

5.    Wählen Sie unter Ihren Anwendungsfall auswählen die Option Config – Customizable aus und klicken Sie dann auf Weiter: Berechtigungen.

6.    Wählen Sie Weiter: Tags, und wählen Sie dann Weiter: Bewertung.

7.    Geben Sie im Feld Rollenname einen Namen ein, und wählen Sie dann Rolle erstellen aus.

8.    Wählen Sie die Rolle aus, die Sie in Schritt 7 erstellt haben, wählen Sie Inline-Richtlinie hinzufügen und wählen Sie dann die Registerkarte JSON.

9.    Kopieren Sie die folgende Beispielrichtlinie und fügen Sie sie 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"
    }
  ]
}

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. Stellen Sie sicher, dass Sie über die erforderlichen Berechtigungen für Ihren KMS-Schlüssel verfügen.

Wenn Sie sich dafür entscheiden, die Objekte nicht zu verschlüsseln, überspringen Sie diese Schritte und fahren Sie mit dem Abschnitt Bereitstellungskanal erstellen fort.

1.    Öffnen Sie die AWS KMS-Konsole.

2.    Wählen Sie im Navigationsbereich Vom Kunden verwaltete Schlüssel.

3.    Wählen Sie Schlüssel erstellen aus.

4.    Wählen Sie als Schlüsseltyp die Option Symmetrisch aus, um einen KMS-Schlüssel mit symmetrischer Verschlüsselung zu erstellen. Informationen zu asymmetrischen KMS-Schlüsseln finden Sie unter Erstellen asymmetrischer KMS-Schlüssel (Konsole).

5.    Für Schlüsselverwendung ist die Option Verschlüsseln und Entschlüsseln standardmäßig ausgewählt. Bestätigen Sie diese Option und wählen Sie dann Weiter.

6.    Geben Sie einen Alias für Ihren KMS-Schlüssel ein. Wählen Sie dann Weiter. Hinweis: Der Aliasname darf nicht mit aws/ beginnen.

7.    Wählen Sie die IAM-Benutzer und -Rollen aus, die den KMS-Schlüssel verwalten können. Wählen Sie dann Weiter.

8.    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.

9.    Wählen Sie Fertig stellen, um den KMS-Schlüssel zu erstellen.

10.    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 gerade erstellt haben

11.    Wählen Sie auf der Registerkarte Schlüsselrichtlinie die Option Zur Richtlinienansicht wechseln aus. Wählen Sie dann Bearbeiten.

12.    Wenn Sie eine benutzerdefinierte IAM-Rolle für AWS Config verwenden, kopieren Sie diese Richtlinie und fügen Sie sie als zusätzliche Schlüsselrichtlinien-Anweisung 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 Service Linked Roles (SLR) für AWS Config verwenden, verwenden Sie die folgende Richtlinienanweisung, 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

1.    Kopieren Sie die folgende Beispielvorlage mit einem Texteditor, fügen Sie sie ein und speichern Sie sie dann als JSON-Datei. Sie können den deliveryFrequency -Wert an Ihren Anwendungsfall anpassen. Wenn Sie die Verschlüsselung nicht aktivieren möchten, lassen Sie den s3KmsKeyArn -Wert aus der JSON-Datei weg.

Wichtig: Wenn Sie beim Ausführen von AWS Command Line Interface (AWS CLI)-Befehlen Fehler erhalten, stellen Sie sicher, dass Sie die neueste AWS-CLI-Version verwenden.

{
    "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: Das s3KeyPrefix muss bereitgestellt werden, wenn die S3-Bucket-Richtlinie PutObject auf ein bestimmtes Präfix und nicht auf das Standardpräfix beschränkt.

2.    Führen Sie den folgenden AWS-CLI-Befehl aus:

$ aws configservice put-delivery-channel --delivery-channel file://deliveryChannel.json

3.    Führen Sie den folgenden AWS-CLI-Befehl aus, um zu bestätigen, dass der Bereitstellungskanal erstellt wurde:

$ aws configservice describe-delivery-channels

Starten des Konfigurationsrekorders

1.    Öffnen Sie die AWS Config-Konsole.

2.    Wählen Sie im Navigationsbereich Einstellungen aus.

3.    Wählen Sie unter Aufnahme ist aus die Option Einschalten und dann Fortfahren.

  • oder -

Führen Sie den folgenden AWS-CLI-Befehl aus:

$ aws configservice start-configuration-recorder --configuration-recorder-name configRecorderName

Weitere Informationen finden Sie unter Verwaltung des Konfigurationsrekorders und Verwaltung Ihrer AWS Config-Regeln.


Verwandte Informationen

Einrichten von AWS Config mit der Konsole

Wie kann ich Fehlermeldungen der AWS Config-Konsole beheben?

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 2 Jahren