AWS Transfer Family で構築するマネージド SFTP サーバー - S3 連携とユーザー管理

Transfer Family による SFTP/FTPS サーバーの構築、S3 との統合、カスタム認証の設定を解説します。

Transfer Family の概要

Transfer Family は SFTP、FTPS、FTP、AS2 の 4 プロトコルに対応するマネージドサーバーを提供するサービスです。取引先やパートナーとのファイル連携で SFTP を使用している場合、Transfer Family で SFTP サーバーを構築し、転送先を S3 に設定できます。既存の SFTP クライアントやスクリプトは、接続先のホスト名を変えて使い続けられます。EFS (Elastic File System) をバックエンドストレージとして選択することも可能で、POSIX パーミッションが必要なワークロードに対応します。

認証とワークフロー

ユーザー認証はサービスマネージド (Transfer Family 内で管理)、カスタム (Lambda オーソライザー)、AWS Directory Service の 3 方式から選択できます。カスタム認証では Lambda 関数で認証ロジックを実装し、既存の LDAP や Active Directory と統合できます。Lambda オーソライザーのレスポンスでユーザーごとのホームディレクトリ、IAM ロール、S3 バケットのプレフィックスを動的に決定でき、マルチテナント構成に対応します。マネージドワークフローはファイルアップロード後に自動実行される処理チェーンで、ファイルのコピー、タグ付け、PGP 復号、カスタム Lambda 処理を定義できます。

AS2 プロトコルと自動化

AS2 (Applicability Statement 2) プロトコルは B2B のファイル交換に使われ、メッセージの暗号化、署名、受信確認 (MDN) を提供します。Transfer Family の AS2 コネクタでパートナーとの自動ファイル交換を設定し、S3 をストレージとして使用します。マネージドワークフローでファイルのアップロード後に自動処理 (コピー、タグ付け、Lambda 呼び出し) を実行し、ファイル処理パイプラインを構築します。CloudWatch Logs で転送のログを記録し、ファイルの送受信状況を監査します。

設計のベストプラクティスと落とし穴

エンドポイントタイプは、設計の初めに決める項目です。パブリックエンドポイントは IP アドレスが固定されないため、パートナーのファイアウォールの許可リストでは扱いにくくなります。VPC エンドポイントを選択すれば Elastic IP で固定 IP を割り当てられ、パートナーへの IP 通知が可能になります。VPC 内部専用エンドポイントは VPN/Direct Connect 経由のアクセスに限られ、インターネットからの接続を受け付けません。エンドポイントには、プロトコルを有効にしている間、時間単位の料金がかかります。転送が 1 日 1 回程度の小規模な用途では、S3 プリサインド URL や DataSync のオンデマンド転送と費用を比べます。また、S3 バケットポリシーとユーザーの IAM ロールの権限が競合し、意図しないアクセス拒否が起きることがあります。ユーザーの IAM ロールには S3 バケットへの最小権限のみを付与し、バケットポリシーでは Transfer Family サービスロールからのアクセスを明示的に許可します。

他サービス / 方式との比較

Transfer Family と比較されるファイル転送手段には、S3 プリサインド URL、DataSync、Storage Gateway があります。S3 プリサインド URL は常時稼働サーバーが不要ですが、パートナーに SFTP クライアントの変更 (URL ベースの転送への移行) を求めるため、既存スクリプトはそのままでは使えません。DataSync はオンプレミスからの大量データ移行に使うサービスで、帯域制御やスケジュール実行ができますが、パートナーからの受信 (push 型) には対応しません。Storage Gateway (ファイルゲートウェイ) はオンプレミスに NFS/SMB マウントポイントを提供しますが、外部パートナーへの公開には向きません。Transfer Family を使うと、既存の SFTP ワークフローを保ったままクラウドへ移行できます。FTP は通信を暗号化しないため、新しく構築する場合は SFTP か FTPS を使います。

Transfer Family の料金

Transfer Family の料金は、サーバーのエンドポイントで有効にしたプロトコルの時間と、アップロードとダウンロードのデータ量などで決まります。エンドポイントの常時稼働コストが主要な費用のため、転送頻度が低い場合はコスト効率を事前に評価します。エンドポイントの料金はプロトコルごとにかかるため、同じサーバーで SFTP と FTPS を有効にすると 2 つのプロトコル分の料金になります。S3 のストレージ料金は別途発生します。マネージドワークフローでは、PGP の復号のステップで処理したデータの量に料金がかかります。AS2 は、プロトコルを有効にした時間に加えて、送受信したメッセージの数で課金されます。

まとめ

Transfer Family は SFTP、FTPS、FTP、AS2 プロトコルのマネージドサーバーを提供し、S3 との統合でファイルストレージの管理を簡素化するサービスです。カスタム認証で Lambda オーソライザーを使い、既存の ID プロバイダーと統合します。VPC エンドポイントで固定 IP を提供し、パートナーのファイアウォール要件に対応します。マネージドワークフローでファイルアップロード後の自動処理を実行し、AS2 コネクタで B2B のファイル交換を自動化します。エンドポイントには有効な間の時間の料金がかかるため、転送頻度が低い場合は S3 プリサインド URL 等の代替手段と費用を比べます。

参考資料 (AWS 公式)

本ページの一次情報は AWS 公式サイトと公式ドキュメントです。最新の仕様と料金は次の公式ページで確認できます。

本ページと公式ドキュメントの記述が食い違う場合は、公式ドキュメントを正としてください。

共有する