Erstellen Sie einen SFTP-Connector - 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

In diesem Verfahren wird erklärt, wie Sie SFTP-Konnektoren mithilfe der AWS Transfer Family Konsole oder erstellen. AWS CLI

Console
Um einen SFTP-Connector zu erstellen
  1. Öffnen Sie die AWS Transfer Family 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. Geben Sie im Abschnitt Connector-Konfiguration die folgenden Informationen ein:

    Die Transfer Family SFTP-Connector-Konsole mit den Connector-Konfigurationseinstellungen.
    • Geben Sie für die URL die URL für einen Remote-SFTP-Server ein. Diese URL muss beispielsweise als sftp://partner-SFTP-server-url formatiert sein. sftp://AnyCompany.com

      Anmerkung

      Optional können Sie in Ihrer URL eine Portnummer angeben. Das Format ist sftp://partner-SFTP-server-url:port-number. Die Standard-Portnummer (wenn kein Port angegeben ist) ist Port 22.

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

      Das folgende Beispiel gewährt die erforderlichen Zugriffsberechtigungen für den Zugriff auf das amzn-s3-demo-bucket in Amazon S3 und das angegebene Geheimnis, das in Secrets Manager gespeichert ist.

      { "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:region:account-id: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.

    • (Optional) Wählen Sie für die Logging-Rolle die IAM-Rolle aus, die der Connector verwenden soll, um Ereignisse in Ihre CloudWatch Logs zu übertragen. In der folgenden Beispielrichtlinie sind die erforderlichen Berechtigungen für die Protokollierung von Ereignissen für SFTP-Konnektoren aufgeführt.

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

    Die Transfer Family SFTP-Connector-Konsole mit den SFTP-Konfigurationseinstellungen.
    • Wählen Sie für Connector-Anmeldeinformationen aus der Dropdownliste den Namen eines Geheimnisses aus, das den privaten Schlüssel AWS Secrets Manager oder das Passwort des SFTP-Benutzers enthält. Sie müssen ein Geheimnis erstellen und es auf eine bestimmte Weise speichern. Details hierzu finden Sie unter Speichern Sie Authentifizierungsdaten für SFTP-Konnektoren in Secrets Manager .

    • (Optional)) Sie haben die Möglichkeit, Ihren Connector zu erstellen und dabei den TrustedHostKeys Parameter leer zu lassen. Ihr Connector kann jedoch keine Dateien mit dem Remoteserver übertragen, bis Sie diesen Parameter in der Konfiguration Ihres Connectors angeben. Sie können den oder die vertrauenswürdigen Hostschlüssel bei der Erstellung Ihres Connectors eingeben oder Ihren Connector später aktualisieren, indem Sie die Host-Schlüsselinformationen verwenden, die von der TestConnection Konsolenaktion oder dem API-Befehl zurückgegeben wurden. Das heißt, für das Textfeld Vertrauenswürdige Hostschlüssel können Sie einen der folgenden Schritte ausführen:

      • Geben Sie bei der Erstellung Ihres Connectors den/die Trusted Host Key (s) an. Fügen Sie den öffentlichen Teil des Hostschlüssels ein, der zur Identifizierung des externen Servers verwendet wird. Sie können mehr als einen Schlüssel hinzufügen, indem Sie Vertrauenswürdigen Hostschlüssel hinzufügen wählen, um einen zusätzlichen Schlüssel hinzuzufügen. Sie können den ssh-keyscan Befehl für den SFTP-Server verwenden, um den erforderlichen Schlüssel abzurufen. Einzelheiten zum Format und Typ der vertrauenswürdigen Hostschlüssel, die Transfer Family unterstützt, finden Sie unter SFTPConnectorConfig.

      • Lassen Sie das Textfeld Vertrauenswürdige Hostschlüssel leer, wenn Sie Ihren Connector erstellen, und aktualisieren Sie Ihren Connector zu einem späteren Zeitpunkt mit diesen Informationen. Wenn Sie zum Zeitpunkt der Erstellung Ihres Connectors nicht über die Informationen zum Hostschlüssel verfügen, können Sie diesen Parameter vorerst leer lassen und mit der Erstellung Ihres Connectors fortfahren. Nachdem der Connector erstellt wurde, verwenden Sie die ID des neuen Connectors, um den TestConnection Befehl entweder auf der AWS CLI oder auf der Detailseite des Connectors auszuführen. Bei Erfolg TestConnection werden die erforderlichen Host-Schlüsselinformationen zurückgegeben. Anschließend können Sie Ihren Connector mithilfe der Konsole (oder durch Ausführen des UpdateConnector AWS CLI Befehls) bearbeiten und die Hostschlüsselinformationen hinzufügen, die bei der Ausführung zurückgegeben wurdenTestConnection.

      Wichtig

      Wenn Sie den Hostschlüssel des Remoteservers durch Ausführen abrufenTestConnection, stellen Sie sicher, dass Sie den zurückgegebenen Schlüssel überprüfen. out-of-band

      Sie müssen den neuen Schlüssel als vertrauenswürdig akzeptieren oder den angezeigten Fingerabdruck mit einem bereits bekannten Fingerabdruck verifizieren, den Sie vom Besitzer des Remote-SFTP-Servers erhalten haben, zu dem Sie eine Verbindung herstellen.

    • (Optional) Wählen Sie für Maximale Anzahl gleichzeitiger Verbindungen aus der Dropdownliste die Anzahl der gleichzeitigen Verbindungen aus, die Ihr Connector zum Remoteserver herstellt. Die Standardauswahl auf der Konsole ist 5.

      Diese Einstellung gibt die Anzahl der aktiven Verbindungen an, die Ihr Connector gleichzeitig mit dem Remoteserver herstellen kann. Durch das Erstellen gleichzeitiger Verbindungen kann die Leistung des Connectors verbessert werden, indem parallel Operationen ermöglicht werden.

  5. Wählen Sie im Abschnitt Optionen für kryptografische Algorithmen eine Sicherheitsrichtlinie aus der Dropdownliste im Feld Sicherheitsrichtlinie aus. Mit der Sicherheitsrichtlinie können Sie die kryptografischen Algorithmen auswählen, die Ihr Connector unterstützt. Einzelheiten zu den verfügbaren Sicherheitsrichtlinien und Algorithmen finden Sie unterAWS Transfer Family Sicherheitsrichtlinien für SFTP-Konnektoren.

  6. (Optional) Geben Sie im Abschnitt Tags für Schlüssel und Wert ein oder mehrere Tags als Schlüssel-Wert-Paare ein.

  7. Nachdem Sie alle Ihre Einstellungen bestätigt haben, wählen Sie „SFTP-Connector erstellen“, um den SFTP-Connector zu erstellen. Wenn der Connector erfolgreich erstellt wurde, erscheint ein Bildschirm mit einer Liste der zugewiesenen statischen IP-Adressen und der Schaltfläche Verbindung testen. Verwenden Sie die Schaltfläche, um die Konfiguration für Ihren neuen Connector zu testen.

    Der Bildschirm zur Konnektorerstellung, der angezeigt wird, wenn ein SFTP-Connector erfolgreich erstellt wurde. Er enthält eine Schaltfläche zum Testen der Verbindung und eine Liste der vom Dienst verwalteten statischen IP-Adressen dieses Connectors.

Die Seite Connectors wird angezeigt, auf der die ID Ihres neuen SFTP-Connectors zur Liste hinzugefügt wurde. Einzelheiten zu Ihren Konnektoren finden Sie unterDetails zum SFTP-Connector anzeigen.

CLI

Sie verwenden den create-connectorBefehl, um einen Konnektor zu erstellen. Um mit diesem Befehl einen SFTP-Connector zu erstellen, müssen Sie die folgenden Informationen angeben.

  • Die URL für einen Remote-SFTP-Server. Diese URL muss beispielsweise als sftp://partner-SFTP-server-url formatiert sein. sftp://AnyCompany.com

  • Die Zugriffsrolle. Wählen Sie den Amazon-Ressourcennamen (ARN) der zu AWS Identity and Access Management verwendenden (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.

    Das folgende Beispiel gewährt die erforderlichen Zugriffsberechtigungen für den Zugriff auf das amzn-s3-demo-bucket in Amazon S3 und das angegebene Geheimnis, das in Secrets Manager gespeichert ist.

    { "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:region:account-id: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.

  • (Optional) Wählen Sie die IAM-Rolle aus, die der Connector verwenden soll, um Ereignisse in Ihre CloudWatch Logs zu übertragen. In der folgenden Beispielrichtlinie sind die erforderlichen Berechtigungen für die Protokollierung von Ereignissen für SFTP-Konnektoren aufgeführt.

    { "Version": "2012-10-17", "Statement": [{ "Sid": "SFTPConnectorPermissions", "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:DescribeLogStreams", "logs:CreateLogGroup", "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:*:*:log-group:/aws/transfer/*" ] }] }
  • Geben Sie die folgenden SFTP-Konfigurationsinformationen an.

    • Der ARN eines Geheimnisses AWS Secrets Manager , das den privaten Schlüssel oder das Passwort des SFTP-Benutzers enthält.

    • Der öffentliche Teil des Hostschlüssels, der zur Identifizierung des externen Servers verwendet wird. Sie können mehrere vertrauenswürdige Hostschlüssel angeben, wenn Sie möchten.

    Der einfachste Weg, die SFTP-Informationen bereitzustellen, besteht darin, sie in einer Datei zu speichern. Kopieren Sie beispielsweise den folgenden Beispieltext in eine Datei mit dem NamentestSFTPConfig.json.

    // Listing for testSFTPConfig.json { "UserSecretId": "arn:aws::secretsmanager:us-east-2:123456789012:secret:aws/transfer/example-username-key", "TrustedHostKeys": [ "sftp.example.com ssh-rsa AAAAbbbb...EEEE=" ] }
  • Geben Sie eine Sicherheitsrichtlinie für Ihren Connector an und geben Sie den Namen der Sicherheitsrichtlinie ein.

Anmerkung

Das SecretId kann entweder der gesamte ARN oder der Name des Geheimnisses (example-username-keyin der vorherigen Liste) sein.

Führen Sie dann den folgenden Befehl aus, um den Connector zu erstellen.

aws transfer create-connector --url "sftp://partner-SFTP-server-url" \ --access-role your-IAM-role-for-bucket-access \ --logging-role arn:aws:iam::your-account-id:role/service-role/AWSTransferLoggingAccess \ --sftp-config file:///path/to/testSFTPConfig.json --security-policy-name security-policy-name --maximum-concurrent-connections integer-from-1-to-5