本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 VPC 型輸出建立 SFTP 連接器
本主題提供step-by-step說明。啟用 VPC_LATTICE 的連接器使用 Amazon VPC Lattice 透過 Virtual Private Cloud 路由流量,啟用與私有端點的安全連線,或使用您自己的 NAT 閘道進行網際網路存取。
何時使用 VPC 連線
在下列情況下,使用 SFTP 連接器的 VPC 連線能力:
-
私有 SFTP 伺服器:連線至只能從 VPC 存取的 SFTP 伺服器。
-
內部部署連線:透過 AWS Direct Connect 或 AWS Site-to-Site VPN 連線連線至內部部署 SFTP 伺服器。
-
自訂 IP 地址:使用您自己的 NAT 閘道和彈性 IP 地址,包括 BYOIP 案例。
-
集中式安全控制:透過組織的中央輸入/輸出控制路由檔案傳輸。
啟用 VPC_LATTICE 的 SFTP 連接器的先決條件
建立已啟用 VPC_LATTICE 的 SFTP 連接器之前,您必須完成下列先決條件:
VPC 型連線的運作方式
VPC Lattice 可讓您安全地與其他 AWS 服務共用 VPC 資源。 AWS Transfer Family 使用服務網路來簡化資源共用程序。關鍵元件包括:
-
資源閘道:做為 VPC 的存取點。您可以在至少有兩個可用區域的 VPC 中建立此項目。
-
資源組態:包含您要連線之 SFTP 伺服器的私有 IP 地址或公有 DNS 名稱。
當您建立已啟用 VPC_LATTICE 的連接器時, AWS Transfer Family 會使用轉送存取工作階段 (FAS) 暫時取得您的登入資料,並將您的資源組態與我們的服務網路建立關聯。
必要的設定步驟
-
VPC 基礎設施:確保您已正確設定 VPC,其中包含 SFTP 伺服器連線需求所需的子網路、路由表和安全群組。
-
資源閘道:使用 VPC Lattice
create-resource-gateway命令在 VPC 中建立資源閘道。資源閘道必須與至少兩個可用區域中的子網路相關聯。如需詳細資訊,請參閱《Amazon VPC Lattice 使用者指南》中的資源閘道。 -
資源組態:使用 VPC Lattice
create-resource-configuration命令建立代表目標 SFTP 伺服器的資源組態。您可以指定下列其中一項:-
私有端點的私有 IP 地址
-
公有端點的公有 DNS 名稱 (公有端點不支援 IP 地址)
-
-
身分驗證憑證:將 SFTP 使用者憑證存放在 中 AWS Secrets Manager ,如中所述在 Secrets Manager 中存放 SFTP 連接器的身分驗證憑證 。
重要
資源閘道和資源組態必須在相同的 AWS 帳戶中建立。建立資源組態時,您必須先備妥資源閘道。
如需 VPC 資源組態的詳細資訊,請參閱《Amazon VPC Lattice 使用者指南》中的資源組態。
注意
可使用 Amazon VPC Lattice 資源 AWS 區域 的 中,提供 SFTP 連接器的 VPC 連線能力。如需詳細資訊,請參閱 VPC Lattice FAQs
建立已啟用 VPC_LATTICE 的 SFTP 連接器
完成先決條件後,您可以使用 、 AWS 管理主控台或 SDK AWS CLI建立具有 VPC 連線能力的 SFTP 連接器。 AWS SDKs
監控 VPC 連接器狀態
啟用 VPC_LATTICE 的連接器具有非同步設定程序。建立之後,請監控連接器狀態:
-
待定:正在佈建連接器。服務網路佈建正在進行中,通常需要幾分鐘的時間。
-
ACTIVE:連接器已準備就緒,可以傳輸檔案。
-
ERRORED:連接器無法佈建。檢查錯誤詳細資訊以取得故障診斷資訊。
使用 describe-connector命令檢查連接器狀態:
aws transfer describe-connector --connector-id c-1234567890abcdef0
在 PENDING 狀態期間,test-connectionAPI 將傳回「Connector not available」,直到佈建完成為止。
限制及考量
-
公有端點:透過 VPC 連線至公有端點時,您必須在資源組態中提供 DNS 名稱。不支援公有 IP 地址。
-
區域可用性:VPC 連線可在選取中使用 AWS 區域。不支援跨區域資源共用。
-
可用區域需求:資源閘道必須與至少兩個可用區域中的子網路相關聯。並非所有可用區域在每個區域中都支援 VPC Lattice。
-
連線限制:每個資源最多 350 個連線,TCP 連線的閒置逾時為 350 秒。
成本考量
除了一般服務費用 AWS Transfer Family 之外,沒有額外的費用。不過,與共用 Amazon Virtual Private Cloud 資源相關的 Amazon VPC Lattice 可能會向客戶收取額外費用,如果客戶使用自己的 NAT 閘道輸出至網際網路,則會收取 NAT 閘道費用。
如需完整的 AWS Transfer Family 定價資訊,請參閱 AWS Transfer Family 定價頁面
SFTP 連接器的 VPC 連線範例
本節提供針對各種案例使用 VPC 連線建立 SFTP 連接器的範例。使用這些範例之前,請確定您已完成 VPC 連線文件中所述的 VPC 基礎設施設定。
範例:私有端點連線
此範例示範如何建立 SFTP 連接器,以連接至只能從 VPC 存取的私有 SFTP 伺服器。
先決條件
-
在 VPC 中建立資源閘道:
aws vpc-lattice create-resource-gateway \ --name my-private-server-gateway \ --vpc-identifier vpc-1234567890abcdef0 \ --subnet-ids subnet-1234567890abcdef0 subnet-0987654321fedcba0 -
為您的私有 SFTP 伺服器建立資源組態:
aws vpc-lattice create-resource-configuration \ --name my-private-server-config \ --resource-gateway-identifier rgw-1234567890abcdef0 \ --resource-configuration-definition ipResource={ipAddress="10.0.1.100"} \ --port-ranges 22
建立已啟用 VPC_LATTICE 的連接器
-
建立具有 VPC 連線能力的 SFTP 連接器:
aws transfer create-connector \ --access-role arn:aws:iam::123456789012:role/TransferConnectorRole \ --sftp-config UserSecretId=my-private-server-credentials,TrustedHostKeys="ssh-rsa AAAAB3NzaC..." \ --egress-config VpcLattice={ResourceConfigurationArn=arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-1234567890abcdef0,PortNumber=22} -
監控連接器狀態,直到變成
ACTIVE:aws transfer describe-connector --connector-id c-1234567890abcdef0
遠端 SFTP 伺服器將看到來自您 VPC CIDR 範圍內資源閘道 IP 地址的連線。
範例:透過 VPC 的公有端點
此範例說明如何透過 VPC 將連線路由至公有 SFTP 伺服器,以利用集中式安全控制並使用您自己的 NAT Gateway IP 地址。
先決條件
-
在 VPC 中建立資源閘道 (與私有端點範例相同)。
-
使用公有 SFTP 伺服器 DNS 名稱建立資源組態:
aws vpc-lattice create-resource-configuration \ --name my-public-server-config \ --resource-gateway-identifier rgw-1234567890abcdef0 \ --resource-configuration-definition dnsResource={domainName="sftp.example.com"} \ --port-ranges 22注意
對於公有端點,您必須使用 DNS 名稱,而不是 IP 地址。
建立連接器
-
建立 SFTP 連接器:
aws transfer create-connector \ --access-role arn:aws:iam::123456789012:role/TransferConnectorRole \ --sftp-config UserSecretId=my-public-server-credentials,TrustedHostKeys="ssh-rsa AAAAB3NzaC..." \ --egress-config VpcLattice={ResourceConfigurationArn=arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-0987654321fedcba0,PortNumber=22}
流量會從連接器流向 資源閘道,然後透過 NAT 閘道到達公有 SFTP 伺服器。遠端伺服器會將 NAT Gateway 的彈性 IP 地址視為來源。
範例:跨帳戶私有端點
此範例說明如何使用資源共用連線到不同 AWS 帳戶中的私有 SFTP 伺服器。
注意
如果您已透過其他機制啟用跨 VPC 資源共用,例如 AWS Transit Gateway,您不需要設定此處所述的資源共用。SFTP 連接器會自動使用現有的路由機制,例如 Transit Gateway 路由表。您只需在建立 SFTP 連接器的相同帳戶中建立資源組態。
帳戶 A (資源提供者) - 共用資源組態
-
在帳戶 A 中建立資源閘道和資源組態 (與先前的範例相同)。
-
使用 Resource Access Manager 與帳戶 B 共用 AWS 資源組態:
aws ram create-resource-share \ --name cross-account-sftp-share \ --resource-arns arn:aws:vpc-lattice:us-east-1:111111111111:resourceconfiguration/rcfg-1234567890abcdef0 \ --principals 222222222222
帳戶 B (資源消費者) - 接受和使用共用
-
接受資源共享邀請:
aws ram accept-resource-share-invitation \ --resource-share-invitation-arn arn:aws:ram:us-east-1:111111111111:resource-share-invitation/invitation-id -
在帳戶 B 中建立 SFTP 連接器:
aws transfer create-connector \ --access-role arn:aws:iam::222222222222:role/TransferConnectorRole \ --sftp-config UserSecretId=cross-account-server-credentials,TrustedHostKeys="ssh-rsa AAAAB3NzaC..." \ --egress-config VpcLattice={ResourceConfigurationArn=arn:aws:vpc-lattice:us-east-1:111111111111:resourceconfiguration/rcfg-1234567890abcdef0,PortNumber=22}
帳戶 B 中的連接器現在可以透過共用資源組態存取帳戶 A 中的私有 SFTP 伺服器。
常見的疑難排解案例:
以下是建立啟用 VPC_LATTICE 連接器時常見問題的解決方案:
-
連接器卡在待定狀態:檢查您的資源閘道是否為 ACTIVE,並在支援的可用區域中具有子網路。如果連接器仍然卡在 PENDING 狀態,
UpdateConnector請使用您最初使用的相同組態參數來呼叫 。這會觸發可能解決問題的新狀態事件。 -
連線逾時:驗證安全群組規則是否允許連接埠 22 上的流量,以及您的 VPC 路由是否正確。
-
DNS 解析問題:對於公有端點,請確保您的 VPC 透過 NAT 閘道或網際網路閘道具有網際網路連線能力。
-
跨帳戶存取遭拒:確認資源共用已接受且資源組態 ARN 正確。如果在原始伺服器帳戶建立資源共用時,將適當的許可政策連接到資源組態,則需要這些許可:
vpc-lattice:AssociateViaAWSService、vpc-lattice:AssociateViaAWSService-EventsAndStates、vpc-lattice:CreateServiceNetworkResourceAssociation、vpc-lattice:GetResourceConfiguration。