View a markdown version of this page

Konfiguration von gegenseitigem TLS auf einem Application Load Balancer - Elastic Load Balancing

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Konfiguration von gegenseitigem TLS auf einem Application Load Balancer

Um den gegenseitigen TLS-Passthrough-Modus zu verwenden, müssen Sie den Listener nur so konfigurieren, dass er alle Zertifikate von Clients akzeptiert. Wenn Sie gegenseitiges TLS-Passthrough verwenden, sendet der Application Load Balancer die gesamte Client-Zertifikatskette mithilfe von HTTP-Headern an das Ziel, sodass Sie die entsprechende Authentifizierungs- und Autorisierungslogik in Ihrer Anwendung implementieren können. Weitere Informationen finden Sie unter Erstellen Sie einen HTTPS-Listener für Ihren Application Load Balancer.

Wenn Sie Mutual TLS im Verifizierungsmodus verwenden, führt der Application Load Balancer die X.509 Client-Zertifikatsauthentifizierung für Clients durch, wenn ein Load Balancer TLS-Verbindungen aushandelt.

Gehen Sie wie folgt vor, um den gegenseitigen TLS-Verifizierungsmodus zu verwenden:

  • Erstellen Sie eine neue Trust Store-Ressource.

  • Laden Sie Ihr Certificate Authority (CA) -Paket und optional die Sperrlisten hoch.

  • Hängen Sie den Trust Store an den Listener an, der für die Überprüfung von Client-Zertifikaten konfiguriert ist.

Verwenden Sie die folgenden Verfahren, um den gegenseitigen TLS-Überprüfungsmodus auf Ihrem Application Load Balancer zu konfigurieren.

Erstellen Sie einen Trust Store

Wenn Sie beim Erstellen eines Load Balancers oder Listeners einen Trust Store hinzufügen, wird der Trust Store automatisch dem neuen Listener zugeordnet. Andernfalls müssen Sie ihn selbst einem Listener zuordnen.

Voraussetzungen
  • Um einen Trust Store zu erstellen, benötigen Sie ein Zertifikatspaket von Ihrer Zertifizierungsstelle (CA).

Console

Im folgenden Beispiel wird mithilfe des Trust Store-Bereichs der Konsole ein Trust Store erstellt. Alternativ können Sie den Trust Store erstellen, wenn Sie einen HTTP-Listener erstellen.

Um einen Trust Store zu erstellen
  1. Öffnen Sie die Amazon-EC2-Konsole unter https://console.aws.amazon.com/ec2/.

  2. Wählen Sie im Navigationsbereich Trust Stores aus.

  3. Wählen Sie Create Trust Store aus.

  4. Konfiguration des Trust-Stores

    1. Geben Sie unter Name des Trust Stores einen Namen für Ihren Trust Store ein.

    2. Geben Sie für das Certificate Authority Bundle den Amazon S3-Pfad zum CA-Zertifikatspaket ein, das Sie verwenden möchten.

    3. (Optional) Verwenden Sie Objektversion, um eine frühere Version des CA-Zertifikatspakets auszuwählen. Andernfalls wird die aktuelle Version verwendet.

  5. (Optional) Für Widerrufe können Sie Ihrem Trust Store eine Zertifikatssperrliste hinzufügen.

    1. Wählen Sie Neue CRL hinzufügen und geben Sie den Speicherort der Zertifikatssperrliste in Amazon S3 ein.

    2. (Optional) Verwenden Sie Objektversion, um eine frühere Version der Zertifikatssperrliste auszuwählen. Andernfalls wird die aktuelle Version verwendet.

  6. (Optional) Erweitern Sie Trust Store-Tags und geben Sie bis zu 50 Tags für Ihren Trust Store ein.

  7. Wählen Sie Create Trust Store aus.

AWS CLI
Um einen Trust Store zu erstellen

Verwenden Sie den Befehl create-trust-store.

aws elbv2 create-trust-store \ --name my-trust-store \ --ca-certificates-bundle-s3-bucket amzn-s3-demo-bucket \ --ca-certificates-bundle-s3-key certificates/ca-bundle.pem
CloudFormation
Um einen Trust Store zu erstellen

Definieren Sie eine Ressource vom Typ AWS::ElasticLoadBalancing V2:: TrustStore.

Resources: myTrustStore: Type: 'AWS::ElasticLoadBalancingV2::TrustStore' Properties: Name: my-trust-store CaCertificatesBundleS3Bucket: amzn-s3-demo-bucket CaCertificatesBundleS3Key: certificates/ca-bundle.pem

Ordnen Sie einen Trust Store zu

Nachdem Sie einen Trust Store erstellt haben, müssen Sie ihn einem Listener zuordnen, bevor Ihr Application Load Balancer den Trust Store verwenden kann. Sie können jedem Ihrer sicheren Listener nur einen Trust Store zuordnen, aber ein Trust Store kann mehreren Listenern zugeordnet werden.

Console

Sie können einen Trust Store einem vorhandenen Listener zuordnen, wie im folgenden Verfahren gezeigt. Alternativ können Sie beim Erstellen eines HTTPS-Listeners einen Trust Store zuordnen. Weitere Informationen finden Sie unter Erstellen eines HTTPS-Listeners.

Um einen Trust Store zuzuordnen
  1. Öffnen Sie die Amazon-EC2-Konsole unter https://console.aws.amazon.com/ec2/.

  2. Wählen Sie im Navigationsbereich Load Balancers aus.

  3. Wählen Sie den Load Balancer aus.

  4. Wählen Sie auf der Registerkarte Listener und Regeln den Link in der Protocol:Port Spalte aus, um die Detailseite für den sicheren Listener zu öffnen.

  5. Wählen Sie auf der Registerkarte Sicherheit die Option Einstellungen für sicheren Listener bearbeiten aus.

  6. Wenn Mutual TLS nicht aktiviert ist, wählen Sie unter Umgang mit Client-Zertifikaten die Option Gegenseitige Authentifizierung (mTLS) aus und wählen Sie dann Mit Trust Store verifizieren aus.

  7. Wählen Sie für Trust Store den Trust Store aus.

  8. Wählen Sie Änderungen speichern aus.

AWS CLI
Um einen Trust Store zuzuordnen

Verwenden Sie den Befehl modify-listener.

aws elbv2 modify-listener \ --listener-arn listener-arn \ --mutual-authentication "Mode=verify,TrustStoreArn=trust-store-arn"
CloudFormation
Um einen Trust Store zuzuordnen

Aktualisieren Sie die AWS::ElasticLoadBalancing V2: :Listener-Ressource.

Resources: myHTTPSListener: Type: 'AWS::ElasticLoadBalancingV2::Listener' Properties: LoadBalancerArn: !Ref myLoadBalancer Protocol: HTTPS Port: 443 DefaultActions: - Type: "forward" TargetGroupArn: !Ref myTargetGroup SslPolicy: ELBSecurityPolicy-TLS13-1-2-2021-06 Certificates: - CertificateArn: certificate-arn MutualAuthentication: - Mode: verify TrustStoreArn: trust-store-arn

Ersetzen Sie ein CA-Zertifikatspaket

Das CA-Zertifikatspaket ist eine erforderliche Komponente des Trust Stores. Es handelt sich um eine Sammlung vertrauenswürdiger Stamm- und Zwischenzertifikate, die von einer Zertifizierungsstelle validiert wurden. Diese validierten Zertifikate stellen sicher, dass der Client darauf vertrauen kann, dass das vorgelegte Zertifikat dem Load Balancer gehört.

Ein Trust Store kann jeweils nur ein CA-Zertifikatspaket enthalten. Sie können das CA-Zertifikatspaket jedoch jederzeit ersetzen, nachdem der Trust Store erstellt wurde.

Console
Um ein CA-Zertifikatspaket zu ersetzen
  1. Öffnen Sie die Amazon-EC2-Konsole unter https://console.aws.amazon.com/ec2/.

  2. Wählen Sie im Navigationsbereich Trust Stores aus.

  3. Wählen Sie den Trust Store aus.

  4. Wählen Sie „Aktionen“, „CA-Paket ersetzen“.

  5. Geben Sie auf der Seite Replace CA bundle unter Certificate Authority Bundle den Amazon S3-Standort des gewünschten CA-Pakets ein.

  6. (Optional) Verwenden Sie Objektversion, um eine frühere Version der Zertifikatssperrliste auszuwählen. Andernfalls wird die aktuelle Version verwendet.

  7. Wählen Sie CA-Paket ersetzen aus.

AWS CLI
Um ein CA-Zertifikatspaket zu ersetzen

Verwenden Sie den Befehl modify-trust-store.

aws elbv2 modify-trust-store \ --trust-store-arn trust-store-arn \ --ca-certificates-bundle-s3-bucket amzn-s3-demo-bucket-new \ --ca-certificates-bundle-s3-key certificates/new-ca-bundle-pem
CloudFormation
Um das CA-Zertifikatspaket zu aktualisieren

Definieren Sie eine Ressource vom Typ AWS::ElasticLoadBalancing V2:: TrustStore.

Resources: myTrustStore: Type: 'AWS::ElasticLoadBalancingV2::TrustStore' Properties: Name: my-trust-store CaCertificatesBundleS3Bucket: amzn-s3-demo-bucket-new CaCertificatesBundleS3Key: certificates/new-ca-bundle.pem

Fügen Sie eine Zertifikatssperrliste hinzu

Optional können Sie eine Zertifikatssperrliste für einen Trust Store erstellen. Sperrlisten werden von Zertifizierungsstellen veröffentlicht und enthalten Daten für Zertifikate, die gesperrt wurden. Application Load Balancer unterstützen nur Zertifikatssperrlisten im PEM-Format.

Wenn eine Zertifikatssperrliste zu einem Trust Store hinzugefügt wird, erhält sie eine Sperr-ID. Die Sperrkennungen erhöhen sich mit jeder Sperrliste, die dem Trust Store hinzugefügt wird, und sie können nicht geändert werden.

Application Load Balancer können keine Zertifikate sperren, die eine negative Seriennummer in einer Zertifikatssperrliste haben.

Console
Um eine Sperrliste hinzuzufügen
  1. Öffnen Sie die Amazon-EC2-Konsole unter https://console.aws.amazon.com/ec2/.

  2. Wählen Sie im Navigationsbereich Trust Stores aus.

  3. Wählen Sie den Trust Store aus, um dessen Detailseite anzuzeigen.

  4. Wählen Sie auf der Registerkarte Zertifikatssperrlisten die Optionen Aktionen und Sperrliste hinzufügen aus.

  5. Geben Sie auf der Seite Sperrliste hinzufügen unter Zertifikatssperrliste den Amazon S3-Speicherort der gewünschten Zertifikatssperrliste ein

  6. (Optional) Verwenden Sie Objektversion, um eine frühere Version der Zertifikatssperrliste auszuwählen. Andernfalls wird die aktuelle Version verwendet.

  7. Wählen Sie Sperrliste hinzufügen

AWS CLI
Um eine Sperrliste hinzuzufügen

Verwenden Sie den Befehl https://docs.aws.amazon.com/cli/latest/reference/elbv2/add-trust-store-revocations.html add-trust-store-revocations.

aws elbv2 add-trust-store-revocations \ --trust-store-arn trust-store-arn \ --revocation-contents "S3Bucket=amzn-s3-demo-bucket,S3Key=crl/revoked-list.crl,RevocationType=CRL"
CloudFormation
Um eine Sperrliste hinzuzufügen

Definieren Sie eine Ressource vom Typ AWS::ElasticLoadBalancing V2:: TrustStoreRevocation.

Resources: myRevocationContents: Type: 'AWS:ElasticLoadBalancingV2::TrustStoreRevocation' Properties: TrustStoreArn: !Ref myTrustStore RevocationContents: - RevocationType: CRL S3Bucket: amzn-s3-demo-bucket S3Key: crl/revoked-list.crl

Löschen Sie eine Zertifikatssperrliste

Wenn Sie eine Zertifikatssperrliste nicht mehr benötigen, können Sie sie löschen. Wenn Sie eine Zertifikatssperrliste aus einem Vertrauensspeicher löschen, wird auch deren Sperr-ID gelöscht und für die gesamte Lebensdauer des Vertrauensspeichers nicht wiederverwendet.

Console
Um eine Sperrliste zu löschen
  1. Öffnen Sie die Amazon-EC2-Konsole unter https://console.aws.amazon.com/ec2/.

  2. Wählen Sie im Navigationsbereich Trust Stores aus.

  3. Wählen Sie den Trust Store aus.

  4. Wählen Sie auf der Registerkarte Zertifikatssperrlisten die Optionen Aktionen > Sperrliste löschen aus.

  5. Wenn Sie zur Bestätigung aufgefordert werden, geben Sie confirm ein.

  6. Wählen Sie Löschen aus.

AWS CLI
Um eine Sperrliste zu löschen

Verwenden Sie den Befehl https://docs.aws.amazon.com/cli/latest/reference/elbv2/remove-trust-store-revocations.html remove-trust-store-revocations.

aws elbv2 remove-trust-store-revocations \ --trust-store-arn trust-store-arn \ --revocation-ids id-1 id-2 id-3

Löschen Sie einen Trust Store

Wenn Sie einen Trust Store nicht mehr verwenden, können Sie ihn löschen. Sie können keinen Trust Store löschen, der einem Listener zugeordnet ist.

Console
Um einen Trust Store zu löschen
  1. Öffnen Sie die Amazon-EC2-Konsole unter https://console.aws.amazon.com/ec2/.

  2. Wählen Sie im Navigationsbereich Trust Stores aus.

  3. Wählen Sie den Trust Store aus.

  4. Wählen Sie Löschen aus.

  5. Wenn Sie zur Bestätigung aufgefordert werden, geben Sie confirm ein und wählen Sie dann Löschen aus.

AWS CLI
Um einen Trust Store zu löschen

Verwenden Sie den Befehl delete-trust-store.

aws elbv2 delete-trust-store \ --trust-store-arn trust-store-arn