Warum kann ich über Schnittstellen-VPC-Endpunkte keine Verbindung zu meinem S3-Bucket herstellen?

Zuletzt aktualisiert: 31.3.2022

Ich kann keine Verbindung zu meinem Amazon-S3-Bucket (Amazon Simple Storage Service) herstellen, wenn ich die Schnittstellen-Endpunkte von Amazon Virtual Private Cloud (Amazon VPC) verwende. Wie kann ich das Problem beheben?

Kurzbeschreibung

Um diesen Fehler zu beheben, überprüfen Sie Folgendes:

  • Überprüfen Sie die mit dem Schnittstellen-VPC-Endpunkt und dem S3-Bucket verknüpfte Richtlinie.
  • Überprüfen Sie, ob Ihr Netzwerk eine Verbindung zu den S3-Endpunkten herstellen kann.
  • Überprüfen Sie, ob Ihr DNS die Verbindung zu den IP-Adressen der S3-Endpunkte auflösen kann.

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

Auflösung

Überprüfen der Richtlinie, die mit dem Schnittstellen-VPC-Endpunkt und dem S3-Bucket verknüpft ist

Standardmäßig ist einem S3-Bucket keine Richtlinie zugeordnet, wenn Sie einen Bucket erstellen. Eine Richtlinie, die während der Erstellung mit einem S3-Schnittstellen-Endpunkt verknüpft ist, ermöglicht standardmäßig jede Aktion für jeden S3-Bucket. Informationen zum Anzeigen der mit Ihrem Endpunkt verknüpften Richtlinie finden Sie unter Anzeigen Ihres Schnittstellen-Endpunkts.

Überprüfen, ob Ihr Netzwerk eine Verbindung zu den S3-Endpunkten herstellen kann

Prüfen Sie die Konnektivität zwischen der Quelle und dem Ziel. Überprüfen Sie beispielsweise die Netzwerkzugriffssteuerungsliste (ACL) und die Sicherheitsgruppe, die den S3-Schnittstellen-Endpunkten zugeordnet ist, um zu bestätigen, dass Datenverkehr zum Schnittstellen-Endpunkt zulässig ist.

Verwenden Sie den folgenden Telnet-Befehl, um die Konnektivität zwischen der AWS-Ressource oder von einem lokalen Host und dem S3-Endpunkt zu testen. Ersetzen Sie im folgenden Befehl S3_Interface_Endpoint_DNS durch das DNS Ihres S3-Schnittstellen-Endpunkts.

telnet bucket.S3_interface_endpoint_DNS 443
Trying a.b.x.y...
Connected to bucket.vpce-0a1b2c3d4e5f6g-m7o5iqbh.s3.us-east-2.vpce.amazonaws.com

Sie können die Telnet-Konnektivität auch mit einer EC2-Test-Instance (Amazon Elastic Compute Cloud) testen. Testen Sie die Konnektivität im Subnetz, in dem Sie den Endpunkt von der Quelle haben (On-Premises-Host oder eine andere Instance), um zu überprüfen, ob die Layer-3-Konnektivität von der Quelle zur AWS-Zielressource besteht. Stellen Sie sicher, dass Sie dieselbe Sicherheitsgruppe in der Test-Instance verwenden, die mit dem S3-Schnittstellen-Endpunkt verknüpft ist. Durch das Testen dieser Konnektivität können Sie feststellen, ob das Problem bei der Sicherheitsgruppe oder der Netzwerk-ACL liegt.

Überprüfen, ob Ihr DNS diese Amazon-S3-Endpunkte auflösen kann

Stellen Sie sicher, dass Sie das DNS des Schnittstellen-Endpunkts von der Quelle aus auflösen können. Sie können dazu Tools wie nslookup, dig usw. verwenden. Das folgende Beispiel verwendet dig: Ersetzen Sie im folgenden Befehl S3_Interface_Endpoint_DNS durch das DNS Ihres S3-Schnittstellen-Endpunkts.

dig *s3_interface_endpoint_DNS@local_nameserver

Hinweis: Der von Amazon bereitgestellte DNS-Server ist die IP-Adresse .2 des VPC-CIDR. Ihr On-Premises-Host ist der lokale Nameserver des Hosts, der in der Datei /etc/resolv.conf aufgeführt ist.


War dieser Artikel hilfreich?


Benötigen Sie Hilfe zur Fakturierung oder technischen Support?