教學課程:入門 AWS Transfer Family - AWS Transfer Family

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

教學課程:入門 AWS Transfer Family

使用此教學課程開始使用AWS Transfer Family(Transfer Family). 您將瞭解如何使用 Amazon S3 存儲創建具有可公開訪問終端節點的支持 SFTP 的服務器,添加具有服務管理身份驗證的用户,以及使用 Cyberduck 傳輸文件。

內容

先決條件

開始之前,請務必完成設定。作為本設置的一部分,您可以創建 Amazon Simple Storage Service (Amazon S3) 儲存貯體和AWS Identity and Access Management(IAM) 用户角色。

注意

您創建的角色需要在AmazonS3FullAccessAWSTransferConsoleFullAccess,和IAMFullAccess政策。

  • AmazonS3FullAccess授予許可,以建立和使用 Amazon S3 儲存貯體。

  • AWSTransferConsoleFullAccess授予 SFTP 用户創建 Transfer Family 資源的權限。

  • IAMFullAccess授予創建所需角色和策略的權限。

步驟 1:登入 AWS Transfer Family 主控台。

登錄 Transfer Family

  1. 登入AWS Management Console並開啟AWS Transfer Family主控台https://console.aws.amazon.com/transfer/

  2. 針對 Account ID or alias (帳戶 ID 或別名),輸入您的帳戶 ID 或別名。

  3. 適用於IAM 使用者名稱中,輸入您為 Transfer Family 列建立的使用者角色名稱。

  4. 適用於Password (密碼),輸入您的AWS帳户密碼。

  5. 選擇 Sign In (登入)

步驟 2:建立啟用 SFTP 的伺服器

安全殼層 (SSH) 檔案傳輸協定 (SFTP) 是使用互聯網安全傳輸數據的網絡協議。該協議支持 SSH 的完整安全和身份驗證功能。它被廣泛用於交換數據,包括金融服務、醫療保健、零售和廣告等各行業的業務合作夥伴之間的敏感信息。

建立啟用 SFTP 的伺服器

  1. 選擇伺服器,然後選擇建立伺服器

  2. In選擇協議,選擇SFTP,然後選擇下一頁

  3. In選擇身分供應商,選擇受管服務在 Transfer Family 列中存放使用者身分和金鑰,然後選擇下一頁

  4. In選擇終端節點,執行下列動作:

    1. 適用於Endpoint type (端點類型)中,選擇可公開存取端點類型。

    2. 適用於自定義主機名稱,選擇

    3. 選擇 Next (下一步)。

  5. In選擇域,選擇Amazon S3

  6. In設定其他詳細資訊,執行下列動作:

    1. 適用於CloudWatch 日誌記錄,選擇Create a new role (建立新角色)以允許 Transfer Family 自動創建 IAM 角色,前提是您擁有創建新角色的正確權限。創建的 IAM 角色稱為AWSTransferLoggingAccess

    2. 適用於密碼算法選項中,選擇包含為服務器啟用的加密算法的安全策略。默認安全策略為TransferSecurityPolicy-2020-06

    3. 選擇 Next (下一步)。

  7. InReview and create (檢閱和建立),選擇建立伺服器。您會被導向至伺服器(憑證已建立!) 頁面上的名稱有些許差異。

您的新伺服器狀態可能需要幾分鐘才會變更為線上。此時,您的伺服器可以執行檔案操作,但您需要首先建立使用者。

步驟 3:添加服務管理用户

將使用者新增至啟用 SFTP 的伺服器

  1. 伺服器頁面中,選擇您要添加使用者的伺服器的複選框。

  2. 選擇 Add user (新增使用者)

  3. 在 中使用者組態區段, 針對使用者名稱下,輸入使用者名稱。此使用者名稱必須最少為 3 個字元,最多為 100 個字元。您可以使用下列字元:a—z、A-Z、0—9、底線 '_'、連字號 '-'、句號 '、句號' 。 ',並在符號「@」處。使用者名稱不能以連字號、句號或符號開頭。

  4. 適用於存取中,選擇您之前建立的 IAM 角色,以存取您 Amazon S3 儲存貯體的 IAM 角色。

    您使用建立 IAM 角色和政策的程序建立此 IAM 角色。此 IAM 角色包含能夠存取您 Amazon S3 儲存貯體的 IAM 政策。它也包含在其他 IAM 政策中定義的 AWS Transfer Family 服務信任關係。

    注意

    服務託管用户的 IAM 角色必須包含訪問所需存儲桶的權限。存取所需儲存貯體的許可在S3 完整訪問,它授予管理員級別對 S3 資源的權限。

  5. 適用於政策,選擇

  6. 適用於主目錄中,選擇 Amazon S3 儲存貯體存放使用AWS Transfer Family。輸入home目錄,您的使用者使用者使用其客户端登入時,登陸的位置。

    如果您將此參數保留空白,則會使用root目錄中使用 Amazon S3 儲存貯體的存放。在本例中,請確定您的 IAM 角色能夠存取此 root 目錄。

    注意

    建議您選擇包含使用者使用者名稱的目錄路徑,以有效使用會話策略。會話政策限制使用者只能存取 Amazon S3 儲存貯體的使用者home目錄。

  7. 適用於受限中,選中該複選框,以便您的用户無法訪問該文件夾以外的任何內容,也看不到 Amazon S3 存儲桶或文件夾名稱。

    注意

    當為用户分配一個主目錄並將用户限製為該主目錄時,這應足以鎖定用户對指定文件夾的訪問。當需要應用進一步控制時,請使用會話策略。

  8. 適用於SSH 公有金鑰中,輸入 SSH key pair 的公有 SSH 金鑰部分。

    金鑰要先經服務驗證,您才能新增新使用者。

    重要

    SSH 公有金鑰的格式是ssh-rsa <string>。如需如何產生 SSH 金鑰對的說明,請參閱產生 SSH 金鑰

  9. (可選)對於金鑰數值,輸入一個或多個標籤作為鍵值組,然後選擇新增標籤

  10. 選擇 Add (新增) 將新使用者新增至您選擇的伺服器。

    新用户將顯示在使用者的 區段伺服器細節(憑證已建立!) 頁面上的名稱有些許差異。

步驟 4:使用客户端傳輸文件

通過傳輸檔案AWS Transfer Family服務,方法是指定客户端中的傳輸操作。AWS Transfer Family支援多個用户端。如需詳細資訊,請參閱 使用用戶端傳輸檔案

本節包含使用 CyberDuck 和 OpenSSH 的程序。

使用 Cyberduck

使用 Cyberduck 透過 AWS Transfer Family 傳輸檔案

  1. 開啟Cyberduck用户端。

  2. 選擇打開連接

  3. 在 中打開連接對話方塊中,選擇SSH 檔案傳輸協定

  4. 適用於伺服器下,輸入您的伺服器端點。服務器端點位於伺服器細節頁面上,請參閲檢視伺服器詳細資

  5. 適用於連接埠號碼,輸入22針對 SFTP。

  6. 針對 Username (使用者名稱),輸入您在管理使用者中建立的使用者名稱。

  7. 適用於SSH 私有金鑰下,選擇或輸入 SSH 私有金鑰。

  8. 選擇 Connect (連線)。

  9. 執行您的檔案傳輸。

    根據檔案所在位置,執行以下其中一項:

    • 在本機目錄中 (來源),選擇您要傳輸的檔案,然後拖放至 Amazon S3 目錄 (目錄)。

    • 在 Amazon S3 目錄中 (來源),選擇您要傳輸的檔案,然後拖放至本機目錄 (目錄)。

使用 OpenSSH

使用下列說明使用 OpenSSH 從命令列傳輸檔案。

注意

此客户端僅適用於啟用 SFTP 的服務器。

使用 OpenSSH 命令列公用程式透過 AWS Transfer Family 傳輸檔案

  1. 在 Linux 或 Macintosh 上,開啟命令終端機。

  2. 在提示中輸入下列命令:% sftp -i transfer-key sftp_user@service_endpoint

    在前面的命令中,sftp_user 是使用者名稱,而 transfer-key 是 SSH 私有金鑰。在這裡,service_endpoint是服務器的終端節點,如AWS Transfer Family控制台。

    應會出現 sftp 提示。

  3. (可選)要查看用户的主目錄,請在sftp提示:sftp> pwd

  4. 在下一行中,輸入下列文字:sftp> cd /mybucket/home/sftp_user

    在本入門練習中,此 Amazon S3 儲存貯體是檔案傳輸的目標。

  5. 在下一行中,輸入下列命令:sftp> put filename.txt

    所以此put命令會將檔案傳輸至 Amazon S3 儲存貯體。

    即會顯示類似下面的訊息,指出正在傳輸檔案或已完成。

    Uploading filename.txt to /my-bucket/home/sftp_user/filename.txt

    some-file.txt 100% 127 0.1KB/s 00:00