Erstellen Sie einen SFTP-Connector mit VPC-basiertem Ausgang - AWS Transfer Family

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.

Erstellen Sie einen SFTP-Connector mit VPC-basiertem Ausgang

Dieses Thema enthält step-by-step Anweisungen zum Erstellen von SFTP-Connectors mit VPC-Konnektivität. VPC_Lattice-fähige Connectoren verwenden Amazon VPC Lattice, um den Datenverkehr durch Ihre Virtual Private Cloud zu leiten und so sichere Verbindungen zu privaten Endpunkten zu ermöglichen oder Ihre eigenen NAT-Gateways für den Internetzugang zu verwenden.

Wann sollte VPC-Konnektivität verwendet werden

Verwenden Sie VPC-Konnektivität für SFTP-Connectors in diesen Szenarien:

  • Private SFTP-Server: Connect zu SFTP-Servern her, auf die nur von Ihrer VPC aus zugegriffen werden kann.

  • Konnektivität vor Ort: Stellen Sie über AWS Direct Connect- oder AWS Site-to-Site VPN-Verbindungen eine Verbindung zu lokalen SFTP-Servern her.

  • Benutzerdefinierte IP-Adressen: Verwenden Sie Ihre eigenen NAT-Gateways und Elastic IP-Adressen, einschließlich BYOIP-Szenarien.

  • Zentralisierte Sicherheitskontrollen: Leiten Sie Dateiübertragungen über die zentralen Kontrollen Ihres Unternehmens weiter. ingress/egress

Architekturdiagramm, das den VPC-basierten Ausgang für SFTP-Konnektoren zeigt und veranschaulicht, wie Cross-VPC-Ressourcenzugriff sichere Verbindungen über Ihre Virtual Private Cloud ermöglicht.

Voraussetzungen für VPC_Lattice-fähige SFTP-Konnektoren

Bevor Sie einen VPC_Lattice-fähigen SFTP-Connector erstellen, müssen Sie die folgenden Voraussetzungen erfüllen:

So funktioniert VPC-basierte Konnektivität

Mit VPC Lattice können Sie VPC-Ressourcen sicher mit anderen Diensten teilen. AWS AWS Transfer Family verwendet ein Servicenetzwerk, um den Prozess der gemeinsamen Nutzung von Ressourcen zu vereinfachen. Die wichtigsten Komponenten sind:

  • Resource Gateway: Dient als Zugangspunkt zu Ihrer VPC. Sie erstellen dies in Ihrer VPC mit mindestens zwei Availability Zones.

  • Ressourcenkonfiguration: Enthält die private IP-Adresse oder den öffentlichen DNS-Namen des SFTP-Servers, zu dem Sie eine Verbindung herstellen möchten.

Wenn Sie einen VPC_Lattice-fähigen Connector erstellen, AWS Transfer Family verwendet er Forward Access Session (FAS), um vorübergehend Ihre Anmeldeinformationen abzurufen und Ihre Ressourcenkonfiguration mit unserem Servicenetzwerk zu verknüpfen.

Erforderliche Einrichtungsschritte

  1. VPC-Infrastruktur: Stellen Sie sicher, dass Sie über eine ordnungsgemäß konfigurierte VPC mit den erforderlichen Subnetzen, Routing-Tabellen und Sicherheitsgruppen für Ihre Anforderungen an die SFTP-Serverkonnektivität verfügen.

  2. Resource Gateway: Erstellen Sie mit dem Befehl VPC create-resource-gateway Lattice ein Resource Gateway in Ihrer VPC. Das Resource Gateway muss Subnetzen in mindestens zwei Availability Zones zugeordnet sein. Weitere Informationen finden Sie unter Resource Gateways im Amazon VPC Lattice-Benutzerhandbuch.

  3. Ressourcenkonfiguration: Erstellen Sie mit dem Befehl VPC create-resource-configuration Lattice eine Ressourcenkonfiguration, die den Ziel-SFTP-Server darstellt. Sie können entweder angeben:

    • Eine private IP-Adresse für private Endpunkte

    • Ein öffentlicher DNS-Name für öffentliche Endpunkte (IP-Adressen werden für öffentliche Endpunkte nicht unterstützt)

  4. Authentifizierungsdaten: Speichern Sie die SFTP-Benutzeranmeldeinformationen AWS Secrets Manager wie unter beschrieben. Speichern Sie Authentifizierungsdaten für SFTP-Konnektoren in Secrets Manager

Wichtig

Das Resource Gateway und die Ressourcenkonfiguration müssen im selben AWS Konto erstellt werden. Wenn Sie eine Ressourcenkonfiguration erstellen, müssen Sie zunächst über ein Resource Gateway verfügen.

Weitere Informationen zu VPC-Ressourcenkonfigurationen finden Sie unter Ressourcenkonfigurationen im Amazon VPC Lattice-Benutzerhandbuch.

Anmerkung

VPC-Konnektivität für SFTP-Konnektoren ist dort verfügbar, AWS-Regionen wo Amazon VPC Lattice-Ressourcen verfügbar sind. Weitere Informationen finden Sie unter VPC FAQs Lattice. Die Availability Zone-Unterstützung ist je nach Region unterschiedlich, und Resource Gateways erfordern mindestens zwei Availability Zones.

Erstellen Sie einen VPC_Lattice-fähigen SFTP-Connector

Nachdem Sie die Voraussetzungen erfüllt haben, können Sie mithilfe der AWS Managementkonsole oder einen SFTP-Connector mit VPC-Konnektivität erstellen. AWS CLI AWS SDKs

Console
So erstellen Sie einen VPC_Lattice-fähigen SFTP-Connector
  1. Öffnen AWS Transfer Family Sie die Konsole unter https://console.aws.amazon.com/transfer/.

  2. Wählen Sie im linken Navigationsbereich SFTP-Connectors und anschließend Create SFTP-Connector aus.

  3. Wählen Sie im Abschnitt Connector-Konfiguration für Egress type die Option VPC Lattice aus.

    Diese Option leitet den Datenverkehr mithilfe von Amazon VPC Lattice für den VPC-übergreifenden Ressourcenzugriff über Ihre VPC weiter. Sie können diese Option verwenden, um eine Verbindung zu privat gehosteten Serverendpunkten herzustellen, den Datenverkehr über die Sicherheitskontrollen Ihrer VPC weiterzuleiten oder Ihre eigenen NAT-Gateways und Elastic IP-Adressen zu verwenden. Die Adresse des Remote-SFTP-Servers wird in Ihrer VPC als Ressourcenkonfiguration dargestellt. Weitere Informationen zu Ressourcenkonfigurationen finden Sie unter Ressourcenkonfigurationen für VPC-Ressourcen im Amazon VPC Lattice-Benutzerhandbuch.

  4. Vervollständigen Sie die Connector-Konfiguration:

    • Wählen Sie für die Access-Rolle den Amazon-Ressourcennamen (ARN) der zu verwendenden AWS Identity and Access Management (IAM) -Rolle aus.

      • Stellen Sie sicher, dass diese Rolle Lese- und Schreibzugriff auf das übergeordnete Verzeichnis des Dateispeicherorts bietet, der in der StartFileTransfer Anfrage verwendet wird.

      • Stellen Sie sicher, dass diese Rolle die Berechtigung secretsmanager:GetSecretValue zum Zugriff auf den geheimen Schlüssel gewährt.

        Anmerkung

        In der Richtlinie müssen Sie den ARN für das Geheimnis angeben. Der ARN enthält den geheimen Namen, fügt dem Namen jedoch sechs zufällige alphanumerische Zeichen hinzu. Ein ARN für ein Geheimnis hat das folgende Format.

        arn:aws:secretsmanager:region:account-id:secret:aws/transfer/SecretName-6RandomCharacters
      • Stellen Sie sicher, dass diese Rolle eine Vertrauensstellung enthält, die es dem Connector ermöglicht, auf Ihre Ressourcen zuzugreifen, wenn er Übertragungsanfragen Ihrer Benutzer bearbeitet. Einzelheiten zum Aufbau einer Vertrauensbeziehung finden Sie unterSo stellen Sie eine Vertrauensbeziehung her.

      { "Version":"2012-10-17", "Statement": [ { "Sid": "AllowListingOfUserFolder", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket" ] }, { "Sid": "HomeDirObjectAccess", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:GetObjectVersion", "s3:GetObjectACL", "s3:PutObjectACL" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*" }, { "Sid": "GetConnectorSecretValue", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": "arn:aws:secretsmanager:us-west-2:111122223333:secret:aws/transfer/SecretName-6RandomCharacters" } ] }
      Anmerkung

      Für die Zugriffsrolle gewährt das Beispiel Zugriff auf ein einzelnes Geheimnis. Sie können jedoch ein Platzhalterzeichen verwenden, was Ihnen Arbeit ersparen kann, wenn Sie dieselbe IAM-Rolle für mehrere Benutzer und Geheimnisse wiederverwenden möchten. Die folgende Ressourcenanweisung gewährt beispielsweise Berechtigungen für alle Geheimnisse, deren Namen mit beginnen. aws/transfer

      "Resource": "arn:aws:secretsmanager:region:account-id:secret:aws/transfer/*"

      Sie können Geheimnisse, die Ihre SFTP-Anmeldeinformationen enthalten, auch in einem anderen AWS-Konto speichern. Einzelheiten zur Aktivierung des kontoübergreifenden geheimen Zugriffs finden Sie unter Berechtigungen für AWS Secrets Manager geheime Daten für Benutzer in einem anderen Konto.

    • Geben Sie für Resource Configuration ARN den ARN der VPC Lattice Resource Configuration ein, der auf Ihren SFTP-Server verweist:

      arn:aws:vpc-lattice:region:account-id:resourceconfiguration/rcfg-12345678
    • (Optional) Wählen Sie für die Logging-Rolle die IAM-Rolle aus, die der Connector verwenden soll, um Ereignisse in Ihre Logs zu übertragen. CloudWatch

      { "Version":"2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:DescribeLogStreams", "logs:CreateLogGroup", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:*:*:log-group:/aws/transfer/*" } ] }
  5. Geben Sie im Abschnitt SFTP-Konfiguration die folgenden Informationen ein:

    • Wählen Sie für Connector-Anmeldeinformationen den Namen eines Geheimnisses AWS Secrets Manager , das den privaten Schlüssel oder das Passwort des SFTP-Benutzers enthält.

    • Fügen Sie für vertrauenswürdige Hostschlüssel den öffentlichen Teil des Hostschlüssels ein, der zur Identifizierung des externen Servers verwendet wird, oder lassen Sie das Feld leer, um es später mit dem TestConnection Befehl zu konfigurieren.

      Da dieser Hostschlüssel für einen VPC_LATTICE-Connector bestimmt ist, entfernen Sie den Hostnamen aus dem Schlüssel

    • (Optional) Wählen Sie unter Maximale Anzahl gleichzeitiger Verbindungen die Anzahl der gleichzeitigen Verbindungen aus, die Ihr Connector zum Remoteserver herstellt (Standard ist 5).

  6. Wählen Sie im Abschnitt Optionen für kryptografische Algorithmen eine Sicherheitsrichtlinie aus der Dropdownliste aus.

  7. (Optional) Fügen Sie im Abschnitt Tags Tags als Schlüssel-Wert-Paare hinzu.

  8. Wählen Sie „SFTP-Connector erstellen“, um den VPC_Lattice-fähigen SFTP-Connector zu erstellen.

Der Connector wird mit dem Status „PENDINGWährend der Bereitstellung der Ressourcenzuordnung“ erstellt, was in der Regel mehrere Minuten dauert. Sobald sich der Status auf ändertACTIVE, ist der Connector einsatzbereit.

CLI

Verwenden Sie den folgenden Befehl, um einen VPC_Lattice-fähigen SFTP-Connector zu erstellen:

aws transfer create-connector \ --url "sftp://my.sftp.server.com:22" \ --access-role arn:aws:iam::123456789012:role/TransferConnectorRole \ --sftp-config UserSecretId=my-secret-id,TrustedHostKeys="ssh-rsa AAAAB3NzaC..." \ --egress-config VpcLattice={ResourceConfigurationArn=arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-1234567890abcdef0} \ --security-policy-name TransferSecurityPolicy-2024-01

Der Schlüsselparameter für VPC-Konnektivität ist--egress-config, der den ARN für die Ressourcenkonfiguration angibt, der Ihr SFTP-Serverziel definiert.

Überwachung des VPC-Connectorstatus

Für VPC_Lattice-fähige Konnektoren wird ein asynchroner Einrichtungsprozess durchgeführt. Überwachen Sie nach der Erstellung den Status des Connectors:

  • AUSSTEHEND: Der Connector wird bereitgestellt. Die Bereitstellung des Servicenetzwerks ist im Gange, was in der Regel mehrere Minuten dauert.

  • AKTIV: Der Connector ist einsatzbereit und kann Dateien übertragen.

  • FEHLER: Der Connector konnte nicht bereitgestellt werden. Informationen zur Problembehandlung finden Sie in den Fehlerdetails.

Überprüfen Sie den Status des Connectors mit dem describe-connector folgenden Befehl:

aws transfer describe-connector --connector-id c-1234567890abcdef0

Im Status PENDING gibt die test-connection API „Connector not available“ zurück, bis die Bereitstellung abgeschlossen ist.

Einschränkungen und Überlegungen

  • Öffentliche Endpunkte: Wenn Sie über VPC eine Verbindung zu öffentlichen Endpunkten herstellen, müssen Sie in der Ressourcenkonfiguration einen DNS-Namen angeben. Öffentliche IP-Adressen werden nicht unterstützt.

  • Regionale Verfügbarkeit: VPC-Konnektivität ist in ausgewählten AWS-Regionen Fällen verfügbar. Die regionsübergreifende gemeinsame Nutzung von Ressourcen wird nicht unterstützt.

  • Anforderungen an die Availability Zone: Resource Gateways müssen Subnetzen in mindestens zwei Availability Zones zugeordnet sein. Nicht alle Availability Zones unterstützen VPC Lattice in jeder Region.

  • Verbindungslimits: Maximal 350 Verbindungen pro Ressource mit einem Leerlaufzeitlimit von 350 Sekunden für TCP-Verbindungen.

Kostenüberlegungen

Es fallen keine zusätzlichen Gebühren an, die über die regulären Servicegebühren AWS Transfer Family hinausgehen. Für Kunden können jedoch zusätzliche Gebühren von Amazon VPC Lattice im Zusammenhang mit der gemeinsamen Nutzung ihrer Amazon Virtual Private Cloud Cloud-Ressourcen sowie NAT-Gateway-Gebühren anfallen, wenn sie ihre eigenen NAT-Gateways für den Internetzugang verwenden.

Vollständige AWS Transfer Family Preisinformationen finden Sie auf der Preisseite.AWS Transfer Family

Beispiele für VPC-Konnektivität für SFTP-Konnektoren

Dieser Abschnitt enthält Beispiele für die Erstellung von SFTP-Connectors mit VPC-Konnektivität für verschiedene Szenarien. Bevor Sie diese Beispiele verwenden, stellen Sie sicher, dass Sie die Einrichtung der VPC-Infrastruktur abgeschlossen haben, wie in der VPC-Konnektivitätsdokumentation beschrieben.

Beispiel: Private Endpunktverbindung

Dieses Beispiel zeigt, wie Sie einen SFTP-Connector erstellen, der eine Verbindung zu einem privaten SFTP-Server herstellt, auf den nur von Ihrer VPC aus zugegriffen werden kann.

Voraussetzungen
  1. Erstellen Sie ein Resource Gateway in Ihrer VPC:

    aws vpc-lattice create-resource-gateway \ --name my-private-server-gateway \ --vpc-identifier vpc-1234567890abcdef0 \ --subnet-ids subnet-1234567890abcdef0 subnet-0987654321fedcba0
  2. Erstellen Sie eine Ressourcenkonfiguration für Ihren privaten SFTP-Server:

    aws vpc-lattice create-resource-configuration \ --name my-private-server-config \ --resource-gateway-identifier rgw-1234567890abcdef0 \ --resource-configuration-definition ipResource={ipAddress="10.0.1.100"} \ --port-ranges 22
Erstellen Sie den VPC_Lattice-fähigen Connector
  1. Erstellen Sie den SFTP-Connector mit VPC-Konnektivität:

    aws transfer create-connector \ --access-role arn:aws:iam::123456789012:role/TransferConnectorRole \ --sftp-config UserSecretId=my-private-server-credentials,TrustedHostKeys="ssh-rsa AAAAB3NzaC..." \ --egress-config VpcLattice={ResourceConfigurationArn=arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-1234567890abcdef0,PortNumber=22}
  2. Überwachen Sie den Status des Connectors, bis er wie folgt aussieht: ACTIVE

    aws transfer describe-connector --connector-id c-1234567890abcdef0

Der Remote-SFTP-Server erkennt Verbindungen, die von der IP-Adresse des Resource Gateways innerhalb Ihres VPC-CIDR-Bereichs kommen.

Beispiel: Öffentlicher Endpunkt über VPC

Dieses Beispiel zeigt, wie Sie Verbindungen zu einem öffentlichen SFTP-Server über Ihre VPC weiterleiten, um zentralisierte Sicherheitskontrollen zu nutzen und Ihre eigenen NAT-Gateway-IP-Adressen zu verwenden.

Voraussetzungen
  1. Erstellen Sie ein Resource Gateway in Ihrer VPC (wie im Beispiel für einen privaten Endpunkt).

  2. Erstellen Sie eine Ressourcenkonfiguration für den öffentlichen SFTP-Server unter Verwendung seines DNS-Namens:

    aws vpc-lattice create-resource-configuration \ --name my-public-server-config \ --resource-gateway-identifier rgw-1234567890abcdef0 \ --resource-configuration-definition dnsResource={domainName="sftp.example.com"} \ --port-ranges 22
    Anmerkung

    Für öffentliche Endpunkte müssen Sie einen DNS-Namen verwenden, keine IP-Adresse.

Erstellen Sie den Connector
  • Erstellen Sie den SFTP-Connector:

    aws transfer create-connector \ --access-role arn:aws:iam::123456789012:role/TransferConnectorRole \ --sftp-config UserSecretId=my-public-server-credentials,TrustedHostKeys="ssh-rsa AAAAB3NzaC..." \ --egress-config VpcLattice={ResourceConfigurationArn=arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-0987654321fedcba0,PortNumber=22}

Der Datenverkehr fließt vom Connector zu Ihrem Resource Gateway und dann über Ihr NAT-Gateway zum öffentlichen SFTP-Server. Der Remoteserver sieht die Elastic IP-Adresse Ihres NAT-Gateways als Quelle.

Beispiel: Kontoübergreifender privater Endpunkt

Dieses Beispiel zeigt, wie Sie mithilfe von Resource Sharing eine Verbindung zu einem privaten SFTP-Server in einem anderen AWS Konto herstellen.

Anmerkung

Wenn Sie die VPC-übergreifende Ressourcenfreigabe bereits über andere Mechanismen aktiviert haben, z. B. AWS Transit Gateway, müssen Sie die hier beschriebene Ressourcenfreigabe nicht konfigurieren. Die vorhandenen Routingmechanismen, wie Transit Gateway Gateway-Routentabellen, werden automatisch von SFTP-Konnektoren verwendet. Sie müssen nur eine Ressourcenkonfiguration in demselben Konto erstellen, in dem Sie den SFTP-Connector erstellen.

Konto A (Ressourcenanbieter) — Teilen Sie die Ressourcenkonfiguration
  1. Erstellen Sie das Ressourcen-Gateway und die Ressourcenkonfiguration in Konto A (wie in den vorherigen Beispielen).

  2. Teilen Sie die Ressourcenkonfiguration mithilfe von AWS Resource Access Manager mit Konto B:

    aws ram create-resource-share \ --name cross-account-sftp-share \ --resource-arns arn:aws:vpc-lattice:us-east-1:111111111111:resourceconfiguration/rcfg-1234567890abcdef0 \ --principals 222222222222
Konto B (Ressourcennutzer) — Den Share akzeptieren und verwenden
  1. Nehmen Sie die Einladung zur gemeinsamen Nutzung von Ressourcen an:

    aws ram accept-resource-share-invitation \ --resource-share-invitation-arn arn:aws:ram:us-east-1:111111111111:resource-share-invitation/invitation-id
  2. Erstellen Sie den SFTP-Connector in Konto B:

    aws transfer create-connector \ --access-role arn:aws:iam::222222222222:role/TransferConnectorRole \ --sftp-config UserSecretId=cross-account-server-credentials,TrustedHostKeys="ssh-rsa AAAAB3NzaC..." \ --egress-config VpcLattice={ResourceConfigurationArn=arn:aws:vpc-lattice:us-east-1:111111111111:resourceconfiguration/rcfg-1234567890abcdef0,PortNumber=22}

Der Connector in Konto B kann jetzt über die gemeinsame Ressourcenkonfiguration auf den privaten SFTP-Server in Konto A zugreifen.

Allgemeine Problembehandlungsszenarien

Hier finden Sie Lösungen für häufig auftretende Probleme bei der Erstellung von VPC_Lattice-fähigen Connectoren:

  • Der Connector bleibt im Status AUSSTEHEND hängen: Überprüfen Sie, ob Ihr Resource Gateway AKTIV ist und Subnetze in unterstützten Availability Zones hat. Wenn der Connector immer noch den Status PENDING hat, rufen Sie UpdateConnector ihn mit denselben Konfigurationsparametern auf, die Sie ursprünglich verwendet haben. Dadurch wird ein neues Statusereignis ausgelöst, das das Problem möglicherweise behebt.

  • Verbindungstimeouts: Stellen Sie sicher, dass die Sicherheitsgruppenregeln den Verkehr auf Port 22 zulassen und dass Ihr VPC-Routing korrekt ist.

  • Probleme mit der DNS-Auflösung: Stellen Sie bei öffentlichen Endpunkten sicher, dass Ihre VPC über ein NAT-Gateway oder ein Internet Gateway mit dem Internet verbunden ist.

  • Kontoübergreifender Zugriff verweigert: Stellen Sie sicher, dass die Ressourcenfreigabe akzeptiert wurde und der ARN für die Ressourcenkonfiguration korrekt ist. Wenn der Ressourcenkonfiguration bei der Erstellung der Ressourcenfreigabe durch das Ursprungskonto die richtige Berechtigungsrichtlinie zugewiesen wurde, sind die folgenden Berechtigungen erforderlich:vpc-lattice:AssociateViaAWSService,, vpc-lattice:AssociateViaAWSService-EventsAndStatesvpc-lattice:CreateServiceNetworkResourceAssociation,vpc-lattice:GetResourceConfiguration.