Direkt zum Inhalt

Wie konfiguriere ich meinen Transfer Family-Server für die Verwendung eines Amazon-EFS-Dateisystems, der sich in einem anderen AWS-Konto befindet?

Lesedauer: 3 Minute
0

Ich möchte, dass mein AWS Transfer Family-Server in meinem AWS-Konto auf ein Amazon Elastic File System (Amazon EFS)-Dateisystem in einem anderen Konto zugreift. Ich möchte auch meinen Transfer Family-Server mit kontoübergreifendem Zugriff auf das Amazon EFS-Dateisystem einrichten.

Behebung

Hinweis: Wenn du beim Ausführen von AWS CLI-Befehlen Fehlermeldungen erhältst, findest du weitere Informationen dazu unter Problembehandlung bei der AWS CLI. Stelle außerdem sicher, dass du die neueste Version der AWS CLI verwendest.

Um den Transfer Family-Server zu konfigurieren, erstelle eine AWS Identity and Access Management (IAM)-Rolle in Konto A mit Zugriff auf das Dateisystem in Konto B. Erstelle dann einen Transfer Family-Serverbenutzer, der mit der IAM-Rolle in Konto A konfiguriert ist. Stelle sicher, dass der Transfer Family-Serverbenutzer in Konto A auf das Dateisystem in Konto B zugreifen kann.

Hinweis: Die AWS Transfer Family-Konsole zeigt nur das Amazon EFS-Dateisystem an, das sich im selben Konto befindet. Verwende die AWS-CLI oder ein AWS-SDK, um den Transfer Family-Server mit einem Dateisystem zu verwenden, das sich in einem anderen Konto befindet.

Erstellen einer IAM-Rolle in Konto A mit Zugriff auf das Dateisystem

Erstelle eine IAM-Rolle für die Serverbenutzer. Verwende für die IAM-Richtlinie der Rolle die folgende Richtlinienanweisung:

{  
  "Version": "2012-10-17",  
  "Statement": [  
    {  
      "Sid": "RootFileSystemAccess",  
      "Effect": "Allow",  
      "Action": [  
        "elasticfilesystem:ClientRootAccess",  
        "elasticfilesystem:ClientMount",  
        "elasticfilesystem:ClientWrite"  
      ],  
      "Resource": "arn:aws:elasticfilesystem:region:accountB-id:file-system/file-system-id"  
    }  
  ]  
}

Füge im Dateisystem für Konto B eine Richtlinie hinzu, die die Berechtigung für die IAM-Rolle von Konto A erteilt:

{  
  "Sid": "EFS-TransferFamily",  
  "Effect": "Allow",  
  "Principal": {  
    "AWS": "arn:aws:iam::AccounA-id:role/RoleName"  
  },  
  "Action": [  
    "elasticfilesystem:ClientRootAccess",  
    "elasticfilesystem:ClientWrite",  
    "elasticfilesystem:ClientMount"  
  ],  
  "Resource": "arn:aws:elasticfilesystem:region:accountB-id:file-system/file-system-id"  
}

Einen Transfer-Family-Serverbenutzer mit der IAM-Rolle in Konto A erstellen

Führe den folgenden AWS-CLI-Befehl create-user aus, um einen Transfer Family-Benutzer zu erstellen:

aws transfer create-user --user-name "sftp" --server-id "SERVER-ID" --role "arn:aws:iam::accountA-id:role/RoleName" --home-directory "/file-system-id/username"

Der Befehl gibt die Server-ID und den Benutzernamen zurück.

Beispielausgabe:

{  
  "ServerId":  "MY_SERVER_ID",  
  "UserName":  "MY_SERVER_USER_NAME"  
}

Überprüfen, ob der Transfer-Family-Serverbenutzer in Konto A auf das Dateisystem in Konto B zugreifen kann

Führe die folgenden Schritte aus:

  1. Verbinde dich mit dem Server als der von dir erstellte Benutzer. Du kannst den folgenden OpenSSH-Befehl sftp ausführen, um eine Verbindung herzustellen:

    sftp -i myserveruser MY_SERVER_USER_NAME@MY_SERVER_ID.server.transfer.us-east-1.amazonaws.com
  2. Gib das Home-Verzeichnis des Buckets an. Wenn du OpenSSH verwendest, führe den Befehl ls aus:

    ls

Wenn der Befehl das Home-Verzeichnis zurückgibt, dann hat der Serverbenutzer kontoübergreifenden Zugriff auf das Amazon EFs-Dateisystem.

Ähnliche Informationen

Erstellen eines SFTP-fähigen Servers

Erstellen von Dateisystemrichtlinien

Wie konfiguriere ich meinen AWS Transfer Family-Server für die Verwendung eines Amazon-S3-Buckets, der sich in einem anderen AWS-Konto befindet?

Konfiguration des kontoübergreifenden Zugriffs für Transfer Family

AWS OFFICIALAktualisiert vor 8 Monaten