本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
教學課程:開始使用AWS Transfer Family伺服器端點
使用此自學課程可以開始使用 AWS Transfer Family (Transfer Family)。您將學習如何使用 Amazon S3 儲存建立具有可公開存取的端點啟用 SFTP 的伺服器、新增具有服務管理身份驗證的使用者,以及使用 Cyberduck 傳輸檔案。
先決條件
在開始之前,請務必完成中的需求設定。在此設定中,您可以建立 Amazon Simple Storage Service (Amazon S3) 儲存貯體和 AWS Identity and Access Management (IAM) 使用者角色。
使用AWS Transfer Family主控台需要許可,並且設定 Transfer Family 使用的其他AWS服務 (例如 Amazon 簡單儲存服務AWS Certificate Manager、Amazon 彈性檔案系統和 Amazon Route 53) 時需要許可。例如,對於使用傳輸系列傳入和傳出檔案的AWS使用者,AmazonS3 會FullAccess授予設定和使用 Amazon S3 儲存貯體的許可。建立 Amazon S3 儲存貯體需要此政策中的某些許可。
若要使用「Transfer Family」主控台,您需要下列項目:
-
AWSTransferConsoleFullAccess授予 SFTP 使用者建立 Transfer Family 資源的權限。
-
只有當您希望 Transfer Family 在 Amazon Lo CloudWatch gs 中為伺服器自動建立記錄角色,或是為登入伺服器的使用者建立使用者角色時,才需要 IAM FullAccess (或特別是允許建立 IAM 角色的政策)。
-
若要建立和刪除 VPC 伺服器類型,您需要將 ec2: CreateVpcEndpoint 和 ec2: 動作新增DeleteVpcEndpoints至政策。
注意
亞馬遜 S3 FullAccess 和 IAM FullAccess 政策本身並不需要一般使用. AWS Transfer Family 這裡會以簡單的方式呈現,以確保涵蓋您需要的所有權限。此外,這些是AWS受管理的政策,也就是可供所有AWS客戶使用的標準政策。您可以檢視這些原則中的個別權限,並決定您的目的所需的最小權限集。
步驟 1:登入 AWS Transfer Family 主控台
登入以 Transfer Family
-
請登入AWS Management Console並開啟AWS Transfer Family主控台,網址為 https://console.aws.amazon.com/transfer/
。 -
對於帳戶 ID 或別名,請輸入您的 ID AWS 帳戶。
-
對於 IAM 使用者名稱,請輸入您為 Transfer Family 建立的使用者角色名稱。
-
在「密碼」中,輸入您的AWS帳戶密碼。
-
選擇 Sign In (登入)。
步驟 2:建立啟用 SFTP 的伺服器
安全殼層 (SSH) 檔案傳輸通訊協定 (SFTP) 是用於透過網際網路安全傳輸資料的網路通訊協定。該協議支持 SSH 的完整安全性和身份驗證功能。它廣泛用於交換數據,包括金融服務,醫療保健,零售和廣告等各種行業的業務合作夥伴之間的敏感信息。
若要建立已啟用 SFTP 的伺服器
-
從功能窗格中選取伺服器,然後選擇建立伺服器。
-
在 [選擇通訊協定] 中選取 [SFTP],然後選擇 [下一步]。
-
在 [選擇身分識別提供者] 中,選擇 [Transfer Family] 中的 [受管理以儲存使用者身分識別和金鑰的服務],然後選
-
在選擇端點中,執行下列操作:
-
對於端點類型,請選擇可公開存取的端點類型。
-
對於自訂主機名稱,請選擇無。
-
選擇下一步。
-
-
在 [選擇網域] 中,選擇 Amazon S3。
-
在設定其他詳細資料中,執行下列動作:
-
對於CloudWatch 記錄,請選擇 [建立新角色] 以允許 Transfer Family 自動建立 IAM 角色,只要您有建立新角色的適當權限即可。所建立的 IAM 角色稱為
AWSTransferLoggingAccess
。 -
對於密碼編譯演算法選項,請選擇包含伺服器啟用的加密演算法的安全性原則。預設的安全性原則為
TransferSecurityPolicy-2020-06
。 -
選擇下一步。
-
-
在 [檢閱並建立] 中選擇 [建立伺服器]。系統會將您帶到「伺服器」頁面。
新伺服器的狀態變更為「線上」可能需要幾分鐘的時間。此時,您的伺服器可以執行檔案作業,但您必須先建立使用者。
步驟 3:新增服務受管理的使用者
將使用者新增至啟用 SFTP 的伺服器
-
在 [伺服器] 頁面上,選取要新增使用者之伺服器的核取方塊。
-
選擇 Add user (新增使用者)。
-
在 [使用者設定] 區段中,輸入使用者名稱做為使用者名稱。此使用者名稱必須至少為 3 個字元且最多 100 個字元。您可以在使用者名稱中使用下列字元:a—z、A-Z、0—9、底線 '_'、連字號 '-'、句號 ' 。 ',並在符號「@」。使用者名稱不能以連字號、句點或位於符號開頭。
-
對於存取,請選擇您先前建立的 IAM 角色,以提供對 Amazon S3 儲存貯體的存取權限。
您使用建立 IAM 角色和政策的程序建立此 IAM 角色。該 IAM 角色包含 IAM 政策,可讓您存取 Amazon S3 儲存貯體。它也包含在其他 IAM 政策中定義的 AWS Transfer Family 服務信任關係。
注意
服務受管使用者的 IAM 角色必須包含存取所需儲存貯體的權限。S3 涵蓋存取所需儲存貯體的許可,FullAccess這些許可授予管理員層級 S3 資源的許可。
-
針對「策略」,選擇「無」。
-
對於主目錄,請選擇要使用的 Amazon S3 儲存貯體存放要傳輸的資料AWS Transfer Family。輸入使用者使用其用戶端登入時所在
home
目錄的路徑。如果將此參數保留空白,則會使用 Amazon S3 儲存貯體的
root
目錄。在本例中,請確定您的 IAM 角色能夠存取此root
目錄。注意
建議您選擇包含使用者使用者名稱的目錄路徑,以便有效地使用階段作業原則。工作階段政策將 Amazon S3 儲存貯體中的使用者存取限制在該使用者的
home
目錄。 -
對於「受限制」,請選取核取方塊,讓使用者無法存取該資料夾以外的任何內容,也看不到 Amazon S3 儲存貯體或資料夾名稱。
注意
為使用者指定主目錄並將使用者限制在該主目錄時,這應該足以鎖定使用者對指定資料夾的存取權限。當您需要套用進一步控制時,請使用工作階段原則。
-
對於 SSH 公開金鑰,請輸入安全殼層 key pair 的公開安全殼層金鑰部分。
金鑰要先經服務驗證,您才能新增新使用者。
重要
SSH 公開金鑰的格式為
ssh-rsa
。如需如何產生 SSH 金鑰對的說明,請參閱為服務管理的使用者產生 SSH 金鑰。<string>
-
(選擇性) 在「機碼和值」中,輸入一或多個標籤作為鍵值配對,然後選擇「新增標籤」。
-
選擇 Add (新增) 將新使用者新增至您選擇的伺服器。
新使用者會顯示在 [伺服器詳細資訊] 頁面的 [使用者] 區段中。
步驟 4:使用用戶端傳輸檔案
您可以透過在用戶端中指定傳輸作業,透過AWS Transfer Family服務傳輸檔案。 AWS Transfer Family支持多個客戶端。如需詳細資訊,請參閱使用用戶端透過伺服器端點傳輸檔案
本節包含使用網路鴨和 OpenSSH 的程序。
主題
使用數碼鴨
使用 Cyberduck 透過 AWS Transfer Family 傳輸檔案
-
打開網絡鴨
客戶端。 -
選擇「開啟連線」。
-
在「開啟連線」對話方塊中,選擇「SFTP (SSH 檔案傳輸通訊協定)」。
-
在伺服器中,輸入您的伺服器端點。伺服器端點位於 [伺服器詳細資訊] 頁面上,請參閱檢視伺服器詳情。
-
針對「連接埠號碼」,輸入
22
SFTP。 -
針對 Username (使用者名稱),輸入您在管理使用者中建立的使用者名稱。
-
對於 SSH 私密金鑰,請選擇或輸入安全殼層私密金鑰。
-
選擇 Connect (連線)。
-
執行檔案傳輸。
根據檔案所在位置,執行以下其中一項:
-
在本機目錄 (來源) 中,選擇要傳輸的檔案,然後將檔案拖放到 Amazon S3 目錄 (目標)。
-
在 Amazon S3 目錄 (來源) 中,選擇要傳輸的檔案,然後將檔案拖放到本機目錄 (目標) 中。
-
使用 OpenSSH
使用下列說明使用 OpenSSH 從命令列傳輸檔案。
注意
此用戶端僅適用於啟用 SFTP 的伺服器。
使用 OpenSSH 命令列公用程式透過 AWS Transfer Family 傳輸檔案
-
在 Linux 或 Macintosh 上,開啟命令終端機。
-
在提示符下,輸入以下命令:
% sftp -i transfer-key sftp_user@service_endpoint
在前面的命令中,
sftp_user
是用戶名,transfer-key
是 SSH 私鑰。這裡service_endpoint
是所選伺服器的AWS Transfer Family主控台中所示的伺服器端點。應會出現
sftp
提示。 -
(選擇性) 若要檢視使用者的主目錄,請在提示下輸入下列命
sftp
令:sftp> pwd
-
在下一行中,輸入下列文字:
sftp> cd /mybucket/home/sftp_user
在這個開始的練習中,此 Amazon S3 儲存貯體是檔案傳輸的目標。
-
在下一行中,輸入下列命令:
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