

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# サービスマネージド出力で SFTP コネクタを作成する
<a name="create-sftp-connector-procedure"></a>

この手順では、 AWS Transfer Family コンソールまたは を使用して SFTP コネクタを作成する方法について説明します AWS CLI。

------
#### [ Console ]<a name="create-sftp-connector"></a>

**SFTPコネクタを作成するには**

1. [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/) で AWS Transfer Family コンソールを開きます。

1. 左側のナビゲーションペインで、**SFTP コネクタ**を選択し、**SFTP コネクタの作成**を選択します。

1. **Connector 設定**セクション**の Egress type** で、**Service managed** を選択します。このオプションは、 AWS Transfer Family マネージド Egress インフラストラクチャを使用します。Transfer Family サービスは、各 SFTP コネクタの静的 IP アドレスを提供および管理します。

1. [**コネクタ構成**] セクションで、次の情報を入力します。  
![\[コネクタの設定を示す Transfer Family SFTP コネクタコンソール。\]](http://docs.aws.amazon.com/ja_jp/transfer/latest/userguide/images/create-connector-example-config.png)
   + **[URL]** には、リモート SFTP サーバーの URL を入力します。この URL は `sftp://partner-SFTP-server-url`、例えば次のような形式にする必要があります。`sftp://AnyCompany.com`
**注記**  
オプションで、URL にポート番号を指定できます。形式は `sftp://partner-SFTP-server-url:port-number` です。デフォルトのポート番号 (ポートが指定されていない場合) はポート 22 です。
   + **アクセスロール**で、使用する (IAM) ロールの Amazon リソースネーム AWS Identity and Access Management (ARN) を選択します。
     + `StartFileTransfer` リクエストで使用されるファイルロケーションの親ディレクトリに対して、**このロールが読み取りと書き込みのアクセスを提供することを確認します**。
     + **`secretsmanager:GetSecretValue` このロールがシークレットへのアクセス許可を提供していることを確認してください。**
**注記**  
ポリシーでは、シークレットの ARN を指定する必要があります。ARN にはシークレット名が含まれていますが、名前に 6 つのランダムな英数字を追加します。シークレットの ARN の形式は次のとおりです。  

       ```
       arn:aws:secretsmanager:region:account-id:secret:aws/transfer/SecretName-6RandomCharacters
       ```
     + 「**このロールに信頼関係が含まれていることを確認する**」ことで、ユーザーの転送要求に対応する際に、コネクタがリソースにアクセスできません。信頼関係の確立の詳細については、[信頼関係を確立するには](requirements-roles.md#establish-trust-transfer) を参照してください。  
****  

     ```
     {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
         {
             "Sid": "AllowListingOfUserFolder",
             "Action": [
                 "s3:ListBucket",
                 "s3:GetBucketLocation"
             ],
             "Effect": "Allow",
             "Resource": [
                 "arn:aws:s3:::amzn-s3-demo-bucket"
             ]
         },
         {
             "Sid": "HomeDirObjectAccess",
             "Effect": "Allow",
             "Action": [
                 "s3:PutObject",
                 "s3:GetObject",
                 "s3:DeleteObject",
                 "s3:DeleteObjectVersion",
                 "s3:GetObjectVersion",
                 "s3:GetObjectACL",
                 "s3:PutObjectACL"
             ],
             "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*"
         },
         {
             "Sid": "GetConnectorSecretValue",
             "Effect": "Allow",
             "Action": [
                 "secretsmanager:GetSecretValue"
             ],
             "Resource": "arn:aws:secretsmanager:us-west-2:111122223333:secret:aws/transfer/SecretName-6RandomCharacters"
         }
       ]
     }
     ```
**注記**  
アクセス ロールの場合、この例では 1 つのシークレットへのアクセスを許可します。ただし、ワイルドカード文字を使用すると、複数のユーザーとシークレットに対して同じ IAM ロールを再利用する場合に作業を節約できます。例えば、次のリソース ステートメントは、`aws/transfer` で始まる名前を持つすべてのシークレットに対するアクセス許可を付与します。  

     ```
     "Resource": "arn:aws:secretsmanager:region:account-id:secret:aws/transfer/*"
     ```
SFTP 認証情報を含むシークレットを別の AWS アカウントに保存することもできます。クロスアカウントシークレットアクセスの有効化の詳細については、[「別のアカウントのユーザーの AWS Secrets Manager シークレットへのアクセス許可](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_examples_cross.html)」を参照してください。

1. コネクタ設定を完了します。
   + (オプション) **[Logging ロールでは]**、CloudWatch ログにイベントをプッシュするために使用するコネクタの IAM ロールを選択します。次のポリシー例では、SFTP コネクタのイベントをログに記録するために必要なアクセス許可を一覧表示します。  
****  

     ```
     {
         "Version":"2012-10-17",		 	 	 
         "Statement": [
             {
                 "Sid": "VisualEditor0",
                 "Effect": "Allow",
                 "Action": [
                     "logs:CreateLogStream",
                     "logs:DescribeLogStreams",
                     "logs:CreateLogGroup",
                     "logs:PutLogEvents"
                 ],
                 "Resource": "arn:aws:logs:*:*:log-group:/aws/transfer/*"
             }
         ]
     }
     ```

1. 「**SFTPの設定**」セクションで、以下の情報を入力する：  
![\[Transfer Family SFTP コネクタコンソール。SFTP 設定が表示されます。\]](http://docs.aws.amazon.com/ja_jp/transfer/latest/userguide/images/create-connector-example-sftp-config.png)
   + **Connector 認証情報**では、ドロップダウンリストから、SFTP ユーザーのプライベートキーまたはパスワード AWS Secrets Manager を含む のシークレットの名前を選択します。シークレットを作成し、特定の方法で保存する必要があります。詳細については、「[Secrets Manager に SFTP コネクタの認証情報を保存する](sftp-connector-secret-procedure.md)」を参照してください。
   + (オプション) `TrustedHostKeys`パラメータを空のままにしてコネクタを作成するオプションがあります。ただし、コネクタの設定でこのパラメータを指定するまで、コネクタはリモートサーバーでファイルを転送できません。コネクタの作成時に信頼されたホストキー (複数可) を入力するか、後で`TestConnection`コンソールアクションまたは API コマンドによって返されるホストキー情報を使用してコネクタを更新できます。つまり、**信頼されたホストキー**のテキストボックスでは、次のいずれかを実行できます。
     + **コネクタの作成時に信頼されたホストキー (複数可) を指定します。**外部サーバーを識別するために使用されるホストキーのパブリック部分を貼り付けます。**[信頼できるホストキーを追加]** を選択してキーを追加することで、複数のキーを追加できます。SFTP サーバーに対して `ssh-keyscan` コマンドを使用して、必要なキーを取得できます。Transfer Family がサポートするトラステッドホストキーの形式とタイプの詳細については、を参照してください[「SFTPConnectorConfig」](https://docs.aws.amazon.com//transfer/latest/APIReference/API_SftpConnectorConfig.html)。
     + *コネクタを作成するときは、信頼されたホストキー (複数可) テキストボックスを空のままにし、後でこの情報を使用してコネクタを更新します。*コネクタの作成時にホストキー情報がない場合は、現時点ではこのパラメータを空のままにして、コネクタの作成に進むことができます。コネクタを作成したら、新しいコネクタの ID を使用して、 AWS CLI またはコネクタの詳細ページで `TestConnection` コマンドを実行します。成功すると、 `TestConnection` は必要なホストキー情報を返します。その後、コンソールを使用して (または `UpdateConnector` AWS CLI コマンドを実行して) コネクタを編集し、 の実行時に返されたホストキー情報を追加できます`TestConnection`。
**重要**  
を実行してリモートサーバーのホストキーを取得する場合は`TestConnection`、返されるキーに対してout-of-band検証を実行してください。  
新しいキーを信頼済みとして受け入れるか、接続先のリモート SFTP サーバーの所有者から受け取った既知のフィンガープリントを使用して、提示されたフィンガープリントを検証する必要があります。
   + (オプション) **最大同時接続**については、ドロップダウンリストから、コネクタがリモートサーバーに作成する同時接続の数を選択します。コンソールのデフォルトの選択は **5** です。

     この設定では、コネクタがリモートサーバーと同時に確立できるアクティブな接続の数を指定します。同時接続を作成すると、並列オペレーションを有効にしてコネクタのパフォーマンスを向上させることができます。

1. **暗号化アルゴリズムオプション**セクションで、**セキュリティポリシー**フィールドのドロップダウンリストから**セキュリティポリシー**を選択します。セキュリティポリシーを使用すると、コネクタがサポートする暗号化アルゴリズムを選択できます。使用可能なセキュリティポリシーとアルゴリズムの詳細については、「」を参照してください[AWS Transfer Family SFTP コネクタのセキュリティポリシー](security-policies-connectors.md)。

1. （オプション）[**Tags**] セクションの[**Key**] と[**Value**] に、1 つ以上のタグをキーと値のペアとして入力します。

1. すべての設定を確認したら、**SFTP コネクタの作成**を選択して SFTP コネクタを作成します。コネクタが正常に作成されると、割り当てられた静的 IP アドレスのリストと**接続のテスト**ボタンが画面に表示されます。ボタンを使用して、新しいコネクタの設定をテストします。  
![\[SFTP コネクタが正常に作成されたときに表示されるコネクタ作成画面。これには、接続をテストするためのボタンと、このコネクタのサービスマネージド静的 IP アドレスのリストが含まれています。\]](http://docs.aws.amazon.com/ja_jp/transfer/latest/userguide/images/connector-success-ip.png)

新しい SFTP **[コネクタの]** ID がリストに追加されたコネクタページが表示されます。コネクタの詳細を表示するには、[SFTP コネクタの詳細を表示します。](manage-sftp-connectors.md#sftp-connectors-view-info) を参照してください。

------
#### [ CLI ]

コネクタを作成するには、「[https://docs.aws.amazon.com/transfer/latest/APIReference/API_CreateConnector.html](https://docs.aws.amazon.com/transfer/latest/APIReference/API_CreateConnector.html)」コマンドを使用します。このコマンドを使用して SFTP コネクタを作成するには、次の情報を指定する必要があります。
+ リモート SFTP サーバーの URL。この URL は `sftp://partner-SFTP-server-url`、例えば次のような形式にする必要があります。`sftp://AnyCompany.com`
+ アクセスロール 使用する AWS Identity and Access Management （IAM）ロールの Amazon リソースネーム（ARN）を選択します。
  + `StartFileTransfer` リクエストで使用されるファイルロケーションの親ディレクトリに対して、**このロールが読み取りと書き込みのアクセスを提供することを確認します**。
  + **`secretsmanager:GetSecretValue` このロールがシークレットへのアクセス許可を提供していることを確認してください。**
**注記**  
ポリシーでは、シークレットの ARN を指定する必要があります。ARN にはシークレット名が含まれていますが、名前に 6 つのランダムな英数字を追加します。シークレットの ARN の形式は次のとおりです。  

    ```
    arn:aws:secretsmanager:region:account-id:secret:aws/transfer/SecretName-6RandomCharacters
    ```
  + 「**このロールに信頼関係が含まれていることを確認する**」ことで、ユーザーの転送要求に対応する際に、コネクタがリソースにアクセスできません。信頼関係の確立の詳細については、[信頼関係を確立するには](requirements-roles.md#establish-trust-transfer) を参照してください。  
****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
          "Sid": "AllowListingOfUserFolder",
          "Action": [
              "s3:ListBucket",
              "s3:GetBucketLocation"
          ],
          "Effect": "Allow",
          "Resource": [
              "arn:aws:s3:::amzn-s3-demo-bucket"
          ]
      },
      {
          "Sid": "HomeDirObjectAccess",
          "Effect": "Allow",
          "Action": [
              "s3:PutObject",
              "s3:GetObject",
              "s3:DeleteObject",
              "s3:DeleteObjectVersion",
              "s3:GetObjectVersion",
              "s3:GetObjectACL",
              "s3:PutObjectACL"
          ],
          "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*"
      },
      {
          "Sid": "GetConnectorSecretValue",
          "Effect": "Allow",
          "Action": [
              "secretsmanager:GetSecretValue"
          ],
          "Resource": "arn:aws:secretsmanager:us-west-2:111122223333:secret:aws/transfer/SecretName-6RandomCharacters"
      }
    ]
  }
  ```
**注記**  
アクセス ロールの場合、この例では 1 つのシークレットへのアクセスを許可します。ただし、ワイルドカード文字を使用すると、複数のユーザーとシークレットに対して同じ IAM ロールを再利用する場合に作業を節約できます。例えば、次のリソース ステートメントは、`aws/transfer` で始まる名前を持つすべてのシークレットに対するアクセス許可を付与します。  

  ```
  "Resource": "arn:aws:secretsmanager:region:account-id:secret:aws/transfer/*"
  ```
SFTP 認証情報を含むシークレットを別の AWS アカウントに保存することもできます。クロスアカウントシークレットアクセスの有効化の詳細については、[「別のアカウントのユーザーの AWS Secrets Manager シークレットへのアクセス許可](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_examples_cross.html)」を参照してください。
+ (オプション) イベントを CloudWatch ログにプッシュするために使用するコネクタの IAM ロールを選択します。次のポリシー例では、SFTP コネクタのイベントをログに記録するために必要なアクセス許可を一覧表示します。  
****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Sid": "VisualEditor0",
              "Effect": "Allow",
              "Action": [
                  "logs:CreateLogStream",
                  "logs:DescribeLogStreams",
                  "logs:CreateLogGroup",
                  "logs:PutLogEvents"
              ],
              "Resource": "arn:aws:logs:*:*:log-group:/aws/transfer/*"
          }
      ]
  }
  ```
+ 次の SFTP 構成情報を入力します。
  + SFTP ユーザーのプライベートキーまたはパスワード AWS Secrets Manager を含む のシークレットの ARN。
  + 外部サーバーを識別するために使用されるホストキーの公開部分。必要に応じて、複数の信頼できるホスト キーを指定できます。

  SFTP 情報を提供する最も簡単な方法は、SFTP 情報をファイルに保存することです。例えば、`testSFTPConfig.json` 次のサンプルテキストをという名前のファイルにコピーします。

  ```
  // Listing for testSFTPConfig.json
  {   
     "UserSecretId": "arn:aws::secretsmanager:us-east-2:123456789012:secret:aws/transfer/example-username-key",
     "TrustedHostKeys": [
        "sftp.example.com ssh-rsa AAAAbbbb...EEEE="
     ]
  }
  ```
+ コネクタのセキュリティポリシーを指定し、セキュリティポリシー名を入力します。

**注記**  
`SecretId` は、ARN 全体またはシークレットの名前 (前のリストの *example-username-key*) のいずれかになります。

次に、次のコマンドを実行してコネクタを作成します。

```
aws transfer create-connector --url "sftp://partner-SFTP-server-url" \
--access-role your-IAM-role-for-bucket-access \
--logging-role arn:aws:iam::your-account-id:role/service-role/AWSTransferLoggingAccess \
--sftp-config file:///path/to/testSFTPConfig.json \
--security-policy-name security-policy-name \
--maximum-concurrent-connections integer-from-1-to-5
```

VPC 出力タイプコネクタを記述すると、レスポンスに新しいフィールドが含まれます。

```
{
   "Connector": { 
      "AccessRole": "arn:aws:iam::123456789012:role/connector-role",
      "Arn": "arn:aws:transfer:us-east-1:123456789012:connector/c-1234567890abcdef0",
      "ConnectorId": "c-1234567890abcdef0",
      "Status": "ACTIVE",
      "EgressConfig": {
        "VpcLattice": {
          "ResourceConfigurationArn": "arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-12345678",
          "PortNumber": 22
        }
      },
      "EgressType": "VPC",
      "ServiceManagedEgressIpAddresses": null,
      "SftpConfig": { 
         "TrustedHostKeys": [ "ssh-rsa AAAAB3NzaC..." ],
         "UserSecretId": "aws/transfer/connector-secret"
      },
      "Url": "sftp://my.sftp.server.com:22"
   }
}
```

トラフィック`ServiceManagedEgressIpAddresses`は AWS マネージドインフラストラクチャではなく VPC を通過するため、VPC 出力タイプコネクタでは は null です。

------