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) ユーザーロールを作成します。

AWS Transfer Family コンソールを使用するために必要なアクセス許可があり、Amazon Simple Storage Service、Amazon Elastic File System、Amazon Route 53 など AWS Certificate Manager、Transfer Family が使用する他の AWS サービスの設定に必要なアクセス許可があります。例えば、Transfer Family AWS を使用してファイルを送受信するユーザーの場合、AmazonS3FullAccess は Amazon S3 バケットをセットアップして使用するアクセス許可を付与します。Amazon S3 バケットを作成するには、このポリシーのアクセス許可の一部が必要です。

Transfer Family コンソールを使用するには、以下が必要です。

  • AWSTransferConsoleFullAccess は、SFTP ユーザーに Transfer Family リソースを作成するためのアクセス許可を付与します。

  • IAMFullAccess (または具体的には IAM ロールの作成を許可するポリシー) は、Transfer Family が Amazon CloudWatch Logs でサーバーのログ記録ロールを自動的に作成するか、ユーザーがサーバーにログインするためのユーザーロールを作成する場合にのみ必要です。

  • VPC サーバータイプを作成および削除するには、ポリシーに ec2:CreateVpcEndpoint および ec2:DeleteVpcEndpoints アクションを追加する必要があります。

注記

AmazonS3FullAccess および IAMFullAccess ポリシー自体は、 の一般的な使用には必要ありません AWS Transfer Family。ここでは、必要なすべての権限が適用されていることを確認するための簡単な方法として紹介しています。さらに、これらは AWS マネージドポリシーであり、すべての AWS お客様が利用できる標準ポリシーです。これらのポリシーに含まれる個々の権限を確認して、目的に必要な最小限の権限セットを決定できます。

ステップ 1: AWS Transfer Family コンソールにサインインする

Transfer Family にサインインするには
  1. にサインイン AWS Management Console し、https://console.aws.amazon.com/transfer/ で AWS Transfer Family コンソールを開きます。

  2. アカウント ID または エイリアス」には、自分の AWS アカウントの ID を入力します。

  3. [IAM user name] (IAM ユーザー名) に、Transfer Family 用に作成したユーザーロールの名前を入力します。

  4. パスワード には、 AWS アカウントのパスワードを入力します。

  5. [Sign in] (サインイン) を選択します。

ステップ 2: SFTP 対応サーバーを作成する

SFTP は Secure Shell (SSH) File Transfer Protocol の略称で、インターネット経由の安全なデータ転送に使用されるネットワークプロトコルです。このプロトコルは、SSH のセキュリティおよび認証機能をすべてサポートします。金融サービス、医療、小売、広告など、さまざまな業界のビジネスパートナー間の機密情報を含むデータを交換するために広く使用されています。

SFTP 対応サーバーを作成するには
  1. [Servers] (サーバー) ナビゲーションペインから [Create server] (サーバーの作成) を選択します。

  2. [Choose protocols] (プロトコルの選択) で SFTP を選択し、[Next] (次へ) を選択します。

  3. [Choose an identity provider] (ID プロバイダーの選択) で[Service managed] (マネージドサービス) を選択してユーザー ID とキーを Transfer Family に選択してから [Next] (次へ) を選択します。

  4. [Choose an endpoint] (エンドポイントの選択) で次のように操作します。

    1. [Endpoint type] (エンドポイントタイプ) として [Publicly accessible] (パブリックにアクセス可能な) エンドポイントタイプを選択します。

    2. [Custom hostname] (カスタムホスト名) で [None] (なし) を選択します。

    3. [Next] (次へ) を選択します。

  5. [Choose a domain] (ドメインの選択) で Amazon S3 を選択します。

  6. 「追加の詳細を設定する」の「暗号化アルゴリズムオプション」で、サーバーで使用できる暗号化アルゴリズムを含むセキュリティポリシーを選択します。最新のセキュリティポリシーがデフォルトです。詳細については、「」を参照してくださいAWS Transfer Family サーバーのセキュリティポリシー

    注記

    サーバーのマネージドワークフローを追加する場合にのみ、 をログ記録するための新しいロールを作成するを選択します。 CloudWatch サーバーイベントをログに記録するには、IAM ロールを作成する必要はありません。

  7. [Review and create] (確認と作成) で [Create server] (サーバーの作成) を選択します。[Servers] (サーバー) ページが表示されます。

新しいサーバーのステータスが [Online] (オンライン) に変わるまでに数分かかることがあります。その時点で、サーバーでファイルオペレーションを実行できますが、まずユーザーを作成する必要があります。ユーザーの作成の詳細については、「」を参照してくださいサーバーエンドポイントのユーザーの管理

ステップ 3: サービスマネージドユーザーを追加する

SFTP 対応サーバーにユーザーを追加するには
  1. サーバーページで、ユーザーを追加するサーバーを選択します。

  2. [ユーザーを追加] を選択します。

  3. [ユーザー設定] セクションの[ユーザー名] にユーザー名を入力します。このユーザー名は最低 3 文字、最高 100 文字である必要があります。ユーザー名には、a~z、A~Z、0~9、アンダースコア「_」、ハイフン「-」、ピリオド「.」、アットマーク (@) を使用できます。ユーザー名はハイフン、ピリオド、アットマークで始めることはできません。

  4. アクセス で、 で作成した IAM ロールを選択しますIAM ポリシーとロールを作成する。この IAM ロールには、Amazon S3 バケットにアクセスするためのアクセス許可と、 サービスとの信頼関係を含む IAM ポリシーが含まれています。 AWS Transfer Family で概説されている手順は、適切な信頼関係を確立する方法信頼関係を確立するにはを示しています。

  5. [Policy] (ポリシー) で [None] (なし) を選択します。

  6. ホームディレクトリ で、 を使用して転送するデータを保存する Amazon S3 バケットを選択します AWS Transfer Family。home ディレクトリへのパスを入力します。これは、ユーザーがクライアントを使用してログインしたときに表示されるディレクトリです。

    セッションポリシーを使用できるように、ユーザー名を含むディレクトリパスを使用することをお勧めします。セッションポリシーは、Amazon S3 バケット内のユーザーのアクセスをそのユーザーのhomeディレクトリに制限します。セッションポリシーの使用の詳細については、「」を参照してくださいセッションポリシーの仕組み

    必要に応じて、このパラメータを空白のままにして Amazon S3 バケットの root ディレクトリを使用できます。このオプションを選択した場合は、IAM ロールが ディレクトリへのアクセスrootを許可していることを確認してください。

  7. 制限付きチェックボックスをオンにすると、ユーザーがhomeディレクトリ外のものにアクセスできなくなります。これにより、ユーザーが Amazon S3 バケット名またはフォルダ名を表示できなくなります。

  8. SSH パブリックキー には、SSH キーペアのパブリック SSH キー部分を ssh-rsa <string>形式で入力します。

    新しいユーザーを追加する前に、 サービスによってキーが検証されている必要があります。SSH キーペアを生成する方法の詳細については、「」を参照してくださいサービス管理ユーザーの SSH キーの生成

  9. (オプション) [Key] (キー) と [Value] (値) にキーバリューペアとして 1 つ以上のタグを入力して [Add tag] (タグの追加) を選択します。

  10. [Add] (追加) を選択して、選択したサーバーに新しいユーザーを追加します。

    [Server details] (サーバーの詳細) ページの [Users] (ユーザー) セクションに新しいユーザーが表示されます。

ステップ 4: クライアントを使用してファイルを転送する

クライアントで転送オペレーションを指定して、 AWS Transfer Family サービス経由でファイルを転送します。 は複数のクライアント AWS Transfer Family をサポートしています。詳細については、「クライアントを使用してサーバーエンドポイント経由でファイルを転送する」を参照してください。

このセクションでは、Cyberduck と OpenSSH を使用する手順について説明します。

サイバーダックを使用

Cyberduck AWS Transfer Family を使用してファイルを 経由で転送するには
  1. Cyberduck クライアントを開きます。

  2. [Open Connection] (接続を開く) を選択します。

  3. [Open Connection] (接続を開く) ダイアログボックスで SFTP (SSH File Transfer Protocol) を選択します。

  4. [Servers] (サーバー) にサーバーのエンドポイントを入力します。サーバエンドポイントは [Server details] (サーバーの詳細) ページにあります。「SFTP、FTPS、FTP サーバーの詳細を表示する」を参照してください。

  5. [Port number] (ポート番号) に SFTP の 22 を入力します。

  6. [Username] (ユーザー名) に、サーバーエンドポイントのユーザーの管理 で作成したユーザーの名前を入力します。

  7. [SSH Private Key] (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