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 で転送のログを記録し、ファイルの送受信状況を監査します。 Transfer Family に関する詳しい解説はAmazon の関連書籍でも確認できます。

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

エンドポイントタイプの選択は最初の重要な設計判断です。パブリックエンドポイントは構成が最も簡単ですが、IP アドレスが固定されないためパートナーのファイアウォール許可リストに対応できません。VPC エンドポイントを選択すれば Elastic IP で固定 IP を割り当てられ、パートナーへの IP 通知が可能になります。VPC 内部専用エンドポイントは VPN/Direct Connect 経由のアクセスに限定され、インターネット経由のアクセスを完全に遮断します。よくある落とし穴として、エンドポイントの常時稼働コスト (月額約 216 ドル) を見落とすケースがあります。転送が 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 ワークフローを一切変更せずにクラウド移行できる」点に集約されます。パートナーの IT 部門に変更を依頼する政治的コストが高い場合、Transfer Family のエンドポイント維持コストは移行摩擦の回避費用として正当化されます。FTP (暗号化なし) はセキュリティ要件を満たさないため新規採用を避け、SFTP か FTPS を使用します。

Transfer Family の料金

Transfer Family の料金はプロトコルのエンドポイント時間 (1 時間あたり約 0.30 ドル、月額約 216 ドル) とデータ転送量 (アップロード 1 GB あたり約 0.04 ドル、ダウンロード 1 GB あたり約 0.04 ドル) で構成されます。エンドポイントの常時稼働コストが主要な費用のため、転送頻度が低い場合はコスト効率を事前に評価します。複数プロトコル (SFTP + FTPS) を同一サーバーで提供する場合、エンドポイント料金は 1 サーバー分のみです。S3 のストレージ料金は別途発生します。マネージドワークフローのステップ実行には追加料金がかかるため、大量ファイルの処理ではステップ数を最小限に抑えます。AS2 コネクタは別途コネクタ時間で課金され、パートナーとの交換頻度に応じたコスト見積もりが必要です。

まとめ

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