

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

# Amazon DCV Connection Gateway との統合
<a name="configure-gateway-integration"></a>

[Amazon DCV Connection Gateway](https://docs.aws.amazon.com/dcv/latest/gw-admin/what-is-gw.html) は、ユーザーが LAN または VPC への単一のアクセスポイントを通じて Amazon DCV サーバーフリートにアクセスできるようにする、インストール可能なソフトウェアパッケージです。

 インフラストラクチャに Amazon DCV Connection Gateway 経由でアクセス可能な Amazon DCV サーバーが含まれている場合は、Amazon DCV Connection Gateway を統合するようにセッションマネージャーを構成できます。以下のセクションで説明する手順を実行すると、ブローカーは接続ゲートウェイの[セッションリゾルバー](https://docs.aws.amazon.com/dcv/latest/gw-admin/session-resolver.html)として機能します。つまり、ブローカーは追加の HTTP エンドポイントを公開します。Connection Gateway はエンドポイントに対して API コールを行い、ブローカーが選択したホストに Amazon DCV 接続をルーティングするために必要な情報を取得します。

**Topics**
+ [セッションマネージャーブローカーを Amazon DCV Connection Gateway のセッションリゾルバーとして設定](#set-up-sm-broker)
+ [オプション - TLS クライアント認証の有効化](#enable-tls-client-auth)
+ [Amazon DCV サーバー - DNS マッピングリファレンス](dcv-server-dns-mapping.md)

## セッションマネージャーブローカーを Amazon DCV Connection Gateway のセッションリゾルバーとして設定
<a name="set-up-sm-broker"></a>

**セッションマネージャーブローカー側**

1. 任意のテキストエディタを使用して `/etc/dcv-session-manager-broker/session-manager-broker.properties` を開き、以下の変更を適用します。
   + `enable-gateway = true` を設定する
   + `gateway-to-broker-connector-https-port` を空いている TCP ポートに設定する (デフォルトは 8447)
   + `gateway-to-broker-connector-bind-host` を Amazon DCV Connection Gateway の接続のためにブローカーによりバインドされるホストの IP アドレスに設定する (デフォルトは 0.0.0.0) 

1. 次に、以下のコマンドを実行して Broker を停止し、再起動します。

   ```
   sudo systemctl stop dcv-session-manager-broker
   ```

   ```
   sudo systemctl start dcv-session-manager-broker
   ```

1. ブローカーの自己署名証明書のコピーを取得し、ユーザーディレクトリに入れます。

   ```
   sudo cp /var/lib/dcvsmbroker/security/dcvsmbroker_ca.pem $HOME
   ```

   これは、次のステップで Amazon DCV Connection Gateway をインストールするときに必要になります。

**Amazon DCV Connection Gateway 側**
+ Amazon DCV Connection Gateway のドキュメントの[セクション](https://docs.aws.amazon.com/dcv/latest/gw-admin/setting-up-configuring.html#configuring-resolver)に従ってください。

  Amazon DCV Connection Gateway はブローカーに対して HTTP API コールを行うため、ブローカーが自己署名証明書を使用している場合はブローカーの証明書を Amazon DCV Connection Gateway のホスト (前のステップで取得) にコピーし、Amazon DCV Connection Gateway 構成の `[resolver]` セクションでパラメータを `ca-file` に設定する必要があります。

## オプション - TLS クライアント認証の有効化
<a name="enable-tls-client-auth"></a>

前のステップを完了すると、セッションマネージャーと接続ゲートウェイは安全なチャネルを介して通信できるようになり、接続ゲートウェイはセッションマネージャブローカーの識別情報を確認できます。安全なチャネルを確立する前にセッションマネージャブローカーにも接続ゲートウェイの識別情報を確認させる必要がある場合は、次のセクションの手順に従って TLS クライアント認証機能を有効にする必要があります。

**注記**  
セッションマネージャーがロードバランサーの背後にある場合、Application Load Balancer (ALB) やゲートウェイロードバランサー (GLB) などの TLS 接続終了機能のあるロードバランサーでは TLS クライアント認証を有効にできません。サポートされるのは、ネットワークロードバランサー (NLB) などの TLS 終了機能を搭載していないロードバランサーのみです。ALB または GLB を使用する場合は、特定のセキュリティグループのみがロードバランサーに接続できるように設定して、セキュリティレベルを高めることができます。セキュリティグループの詳細については、「[VPC のセキュリティグループ](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html)」をご覧ください。

**セッションマネージャーブローカー側**

1. セッションマネージャーブローカーと Amazon DCV Connection Gateway 間の通信で TLS クライアント認証を有効にするには、次の手順に従ってください。

1.  以下のコマンドを実行して、必要なキーと証明書を生成します。コマンドの出力には、認証情報が生成されたフォルダと、TrustStore ファイルの作成に使用されたパスワードが表示されます。

   ```
   sudo /usr/share/dcv-session-manager-broker/bin/gen-gateway-certificates.sh
   ```

1.  Amazon DCV Connection Gateway のプライベートキーと自己署名証明書のコピーをユーザーディレクトリに入れます。これは、次のステップで、Amazon DCV Connection Gateway で TLS クライアント認証を有効にするときに必要になります。

   ```
   sudo cp /etc/dcv-session-manager-broker/resolver-creds/dcv_gateway_key.pem $HOME 
   ```

   ```
   sudo cp /etc/dcv-session-manager-broker/resolver-creds/dcv_gateway_cert.pem $HOME
   ```

1.  次に、任意のテキストエディタを使用して /etc/dcv-session-manager-broker/session-manager-broker.properties を開き、以下を実行します。
   + `enable-tls-client-auth-gateway` を `true` に設定します。
   + `gateway-to-broker-connector-trust-store-file` を前のステップで作成した TrustStore ファイルのパスに設定します
   + `gateway-to-broker-connector-trust-store-pass` を前のステップで TrustStore ファイルの作成に使用したパスワードに設定します。

1. 次に、以下のコマンドを実行して Broker を停止し、再起動します。

   ```
   sudo systemctl stop dcv-session-manager-broker
   ```

   ```
   sudo systemctl start dcv-session-manager-broker
   ```

**Amazon DCV Connection Gateway 側**
+ Amazon DCV Connection Gateway のドキュメントの[セクション](https://docs.aws.amazon.com/dcv/latest/gw-admin/setting-up-configuring.html)に従ってください。
  + `[resolver]` セクションで `cert-file` パラメータを設定するときは、前のステップでコピーした証明書ファイルのフルパスを使用します
  + `[resolver]` セクションで `cert-key-file` パラメーターを設定するときは、前のステップでコピーしたキーファイルのフルパスを使用します

# Amazon DCV セッションマネージャー Amazon DCV サーバー - DNS マッピングリファレンス
<a name="dcv-server-dns-mapping"></a>

 Amazon DCV Connection Gateway は、DCV サーバーインスタンスに接続するために Amazon DCV サーバーの DNS 名を必要とします。このセクションでは、各 DCV サーバーと、関連する DNS 名とのマッピングを含む JSON ファイルを定義する方法を説明します。

## ファイル構造
<a name="file-structure"></a>

マッピングは、次のフィールドを持つ JSON オブジェクトのリストで構成されます。

```
[
	{
		“ServerIdType”: "Ip",
		“ServerId”: "192.168.0.1",
		“DnsNames”:
		{
			“InternalDnsName”: "internal"
		}
	},
	...
]
```

コードの説明は以下のとおりです。

**`ServerIdType: `**  
値がどのタイプの ID を参照しているかを示します。現在使用可能な値は IPAddress、AgentServerID、および instanceId です。    
**`Ip: `**  
Amazon EC2 インフラストラクチャとオンプレミスインフラストラクチャの両方で使用できます。システム管理者は ifconfig (Linux/macOS) または ipconfig (Windows) コマンドを使用してすばやく取得できます。この情報は DescribeServers API レスポンスでも確認できます。  
**`Id: `**  
Amazon EC2 とオンプレミスの両方のインフラストラクチャで使用できます。セッションマネージャーエージェントは、ホスト名または IP アドレスが変更されるたびに新しい UUID を作成します。この情報は DescribeServers API レスポンスで確認できます。  
**`Host.Aws.Ec2InstanceId: `**  
Amazon EC2 インスタンスでのみ使用でき、マシンを一意に識別します。インスタンスの再起動後も変更されません。http://169.254.169.254/latest/meta-data/instance-id に問い合わせることで、ホスト上で取得できます。この情報は DescribeServers API レスポンスでも確認できます。

**`ServerId: `**  
ネットワーク内の各 Amazon DCV サーバーを一意に識別する、指定されたタイプの ID。

**`DnsNames: `**  
Amazon DCV サーバーに関連付けられた DNS 名を含むオブジェクトです。このオブジェクトには以下が含まれます。    
**`InternalDnsNames: `**  
Amazon DCV Connection Gateway がインスタンスへの接続に使用する DNS 名。

ファイルからマッピングをロードするにはセッションマネージャーブローカー CLI コマンド `register-server-dns-mapping` (コマンドページリファレンス: [register-server-dns-mapping](https://docs.aws.amazon.com/dcv/latest/sm-admin/register-server-dns-mappings.html)) 、セッションマネージャーブローカーに現在ロードされているマッピングを一覧表示するには `describe-server-dns-mappings` を使用してください (コマンドページリファレンス: [describe-server-dns-mappings](https://docs.aws.amazon.com/dcv/latest/sm-admin/describe-server-dns-mappings.html))。

## 永続的
<a name="persistence"></a>

複数のブローカーまたはクラスター全体がダウンした場合にマッピングが失われないように、セッションマネージャーブローカーの永続化機能を有効にすることを強くお勧めします。データ永続化の有効化について詳しくは、「[ブローカーの永続化の設定](https://docs.aws.amazon.com/dcv/latest/sm-admin/configure_broker_persistence.html)」を参照してください。