用 AWS Transfer Family 於傳輸資料 - Amazon Elastic File System

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

用 AWS Transfer Family 於傳輸資料

AWS Transfer Family 這是一項全受管 AWS 服務,可透過下列協定將檔案傳入和傳出 Amazon EFS 檔案系統:

  • 安全殼層 (SSH) 檔案傳輸通訊協定 (SFTP) (AWS Transfer for SFTP)

  • 檔案傳輸通訊協定安全 (FTPS) (AWS Transfer for FTPS)

  • 檔案傳輸通訊協定 (FTP) (AWS Transfer for FTP)

使用 Transfer Family,您可以安全地讓第三方 (例如廠商、合作夥伴或客戶) 透過支援的通訊協定在全球範圍內大規模存取您的檔案,而無需管理任何基礎架構。此外,您現在可以使用、和用FTP戶端,從 Windows、macOS 和 Linux 環境輕SFTP鬆存取EFS檔案系統。FTPS這有助於將資料的可存取性擴展到用NFS戶端和存取點以外的地方,對於跨多個環境的使用者。

使用 Transfer Family 在 Amazon EFS 檔案系統中傳輸資料的計算方式與其他用戶端使用方式相同。如需詳細資訊,請參閱 輸送量模式Amazon EFS 配額

若要進一步了解 AWS Transfer Family,請參閱使AWS Transfer Family 用者指南

注意

對於擁有具有允許EFS在 2021 年 1 月 6 日之前建立的公共存取政策的 Amazon EFS 檔案系統,Tran AWS 帳戶 sfer Family 與 Amazon 搭配使用預設為停用。要啟用使用 Transfer Family 訪問您的文件系統,請聯繫 AWS Support。

使用 AWS Transfer Family Amazon 的先決條件 EFS

若要使用 Transfer Family 列存取 Amazon 檔EFS案系統的檔案,您的組態必須符合下列條件:

  • 傳輸系列服務器和您的 Amazon EFS 文件系統位於相同的位置 AWS 區域。

  • IAM原則已設定為允許存取「Transfer Family」所使用的IAM角色。如需詳細資訊,請參閱AWS Transfer Family 使用指南中的建立IAM角色和策略

  • (選用) 如果 Transfer Family 伺服器屬於其他帳戶,請啟用跨帳户存取權。

設定您的EFS檔案系統 AWS Transfer Family

設定 Amazon EFS 檔案系統與 Transfer Family 搭配使用時,需要執行下列步驟:

  • 步驟 1. 獲取分配給 Transfer Family 用戶的POSIXIDs列表。

  • 步驟 2. 使用POSIXIDs分配給「轉移系列」使用者,確保「Transfer Family」使用者可以存取您檔案 Transfer Family 統的目錄。

  • 步驟 3. 設定IAM以啟用對 Transfer Family 所使用IAM角色的存取權。

設定 Transfer Family 使用者的檔案和目錄許可

請確定「Transfer Family」使用者可以存取檔案系統上必要的EFS檔案和目錄。使用POSIXIDs分配給「Transfer Family 列」使用者的清單,將存取權限指派給目錄。在此範例中,使用者會在EFS掛載點transferFam下建立名為的目錄。根據您的使用情況,可選用建立目錄。如果需要,您可以在EFS檔案系統上選擇其名稱和位置。

為「Transfer Family 列」指定檔案和目錄權限給POSIX使用者
  1. Connect 到您的 Amazon EC2 實例。Amazon EFS 僅支援以 Linux 為基礎EC2的執行個體進行掛接。

  2. 如果您的EFS檔案系統尚未掛載在EC2執行個體上,請掛載該檔案系統。如需詳細資訊,請參閱 掛載EFS檔案系統

  3. 下列範例會在EFS檔案系統上建立目錄,並將其群組變更為「Transfer Family 系列」使用者的POSIX群組 ID,在此範例中為 1101。

    1. 使用下列命令,建立 efs/transferFam 目錄。實際上,您可以使用已選檔案系統上的名稱和位置。

      [ec2-user@ip-192-0-2-0 ~]$ ls efs efs-mount-point efs-mount-point2 [ec2-user@ip-192-0-2-0 ~]$ ls efs [ec2-user@ip-192-0-2-0 ~]$ sudo mkdir efs/transferFam [ec2-user@ip-192-0-2-0 ~]$ ls -l efs total 0 drwxr-xr-x 2 root root 6 Jan 6 15:58 transferFam
    2. 使用以下指令將的群組變更為POSIXGID指定efs/transferFam給「Transfer Family 列」使用者的群組。

      [ec2-user@ip-192-0-2-0 ~]$ sudo chown :1101 efs/transferFam/
    3. 確認變更。

      [ec2-user@ip-192-0-2-0 ~]$ ls -l efs total 0 drwxr-xr-x 2 root 1101 6 Jan 6 15:58 transferFam

啟用「Transfer Family 列」所使用IAM角色的存取權

在「Transfer Family」中,您可以建立以資源為基礎的IAM策略以及定義使用者對EFS檔案系統的存取權限的IAM角色。如需詳細資訊,請參閱AWS Transfer Family 使用指南中的建立IAM角色和策略。您必須使用IAM身分識別原則或EFS檔案系統原則,授與該「Transfer Family」IAM 角色存取您的檔案系統。

以下是授與 ClientMount (讀取) 和ClientWrite存取IAM角色的範例檔案系統原則EFS-role-for-transfer

{ "Version": "2012-10-17", "Id": "efs-policy-wizard-8698b356-4212-4d30-901e-ad2030b57762", "Statement": [ { "Sid": "Grant-transfer-role-access", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/EFS-role-for-transfer" }, "Action": [ "elasticfilesystem:ClientWrite", "elasticfilesystem:ClientMount" ] } ] }

如需建立檔案系統政策的詳細資訊,請參閱 建立檔案系統原則。如需有關使用以身分識別為基礎的IAM原則來管理EFS資源存取的詳細資訊,請參閱。Amazon 的身分型政策 EFS

設定 Transfer Family 的跨帳户存取權

如果用來存取檔案系統的 Transfer Family 伺服器屬於不同的伺服器 AWS 帳戶,您必須授與該帳戶對您檔案系統的存取權。此外,您的檔案系統政策必須是非公開狀態。如需封鎖對檔案系統的公開存取的詳細資訊,請參閱 封鎖公開存取EFS檔案系統

您可以在檔案系統原則中授與不同的檔案系統 AWS 帳戶 存取權。在 Amazon EFS 主控台中,使用檔案系統政策編輯器授與其他許可區段,指定要授與的檔案系統存取權限 AWS 帳戶 和層級。如需建立或編輯檔案系統政策的詳細資訊,請參閱 建立檔案系統原則

您可以使用帳戶 ID 或帳戶 Amazon 資源名稱(ARN)指定帳戶。若要取得更多資訊ARNs,請參閱《IAM使用指南》IAMARNs中的〈〉。

下列範例是非公用檔案系統政策,該政策將授予檔案系統跨帳户存取權。該政策有下列兩種陳述式:

  1. 第一個陳述式會授與讀取、寫入和 root 權限給使用檔案系統掛載目標存取檔案系統的從NFS屬端。NFS-client-read-write-via-fsmt

  2. 第二個陳述式只會授與讀取和寫入權限給 AWS 帳戶 111122223333,這是擁有 Transfer Family 伺服器的帳戶,需要在您的帳戶中存取此EFS檔案系統。Grant-cross-account-access

{ "Statement": [ { "Sid": "NFS-client-read-write-via-fsmt", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite", "elasticfilesystem:ClientMount" ], "Condition": { "Bool": { "elasticfilesystem:AccessedViaMountTarget": "true" } } }, { "Sid": "Grant-cross-account-access", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": [ "elasticfilesystem:ClientWrite", "elasticfilesystem:ClientMount" ] } ] }

下列檔案系統原則會新增一個陳述式,授與 Transfer Family 所使用之IAM角色的存取權。

{ "Statement": [ { "Sid": "NFS-client-read-write-via-fsmt", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite", "elasticfilesystem:ClientMount" ], "Condition": { "Bool": { "elasticfilesystem:AccessedViaMountTarget": "true" } } }, { "Sid": "Grant-cross-account-access", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": [ "elasticfilesystem:ClientWrite", "elasticfilesystem:ClientMount" ] }, { "Sid": "Grant-transfer-role-access", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/EFS-role-for-transfer" }, "Action": [ "elasticfilesystem:ClientWrite", "elasticfilesystem:ClientMount" ] } ] }