

• AWS Systems Manager CloudWatch ダッシュボードは、2026 年 4 月 30 日以降は利用できなくなります。お客様は、これまでと同様に Amazon CloudWatch コンソールを使用して、Amazon CloudWatch ダッシュボードの表示、作成、管理を継続できます。詳細については、「[Amazon CloudWatch ダッシュボードのドキュメント](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)」を参照してください。

# SSM Agent が Windows Server インスタンス用にプロキシを使用するように設定する
<a name="configure-proxy-ssm-agent-windows"></a>

このトピックの情報は、2016 年 11 月以降に作成された、Nano インストールオプションを使用*しない* Windows Server インスタンスに該当します。Session Manager を使用する予定の場合は、HTTPS プロキシサーバーはサポートされていないことに注意してください。

**[開始する前に]**  
SSM Agent がプロキシを使用するように設定する前に、以下の重要な情報に注意してください。

次の手順ではコマンドを実行し、SSM Agent がプロキシを使用するように設定します。コマンドには、IP アドレスを含む `no_proxy` 設定が含まれています。この IP アドレスは、Systems Manager のインスタンスメタデータサービス (IMDS) エンドポイントです。`no_proxy` を指定しない場合、Systems Manager への呼び出しによってプロキシサービスからアイデンティティを引き受けるか (IMDSv1 フォールバックが有効の場合)、Systems Manager への呼び出しが失敗します (IMDSv2 が強制されている場合)。
+ IPv4 の場合は、`no_proxy=169.254.169.254` を指定します。
+ IPv6 の場合は、`no_proxy=[fd00:ec2::254]` を指定します。インスタンスメタデータサービスの IPv6 アドレスは、IMDSv2 コマンドと互換性があります。IPv6 アドレスは、[AWS Nitro System](https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html) 上に構築されたインスタンスでのみアクセス可能です。詳細については、「Amazon EC2 ユーザーガイド」の「[インスタンスメタデータサービスバージョン 2 の仕組み](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-metadata-v2-how-it-works.html)」を参照してください。

**SSM Agent がプロキシを使用するように設定するには**

1. リモートデスクトップまたは Windows PowerShell を使用して、プロキシを使用するように設定するインスタンスに接続します。

1. PowerShell で次のコマンドブロックを実行します。*hostname* と *port* を、プロキシの情報に置き換えます。

   ```
   $serviceKey = "HKLM:\SYSTEM\CurrentControlSet\Services\AmazonSSMAgent"
   $keyInfo = (Get-Item -Path $serviceKey).GetValue("Environment")
   $proxyVariables = @("http_proxy=hostname:port", "https_proxy=hostname:port", "no_proxy=IP address for instance metadata services (IMDS)")
   
   if ($keyInfo -eq $null) {
       New-ItemProperty -Path $serviceKey -Name Environment -Value $proxyVariables -PropertyType MultiString -Force
   } else {
       Set-ItemProperty -Path $serviceKey -Name Environment -Value $proxyVariables
   }
   
   Restart-Service AmazonSSMAgent
   ```

上記のコマンドを実行した後、SSM Agent ログを確認すると、プロキシ設定が適用されたことを確認できます。ログのエントリは次のようになります。SSM Agent ログの詳細については、「[SSM Agent ログの表示](ssm-agent-logs.md)」を参照してください。

```
2020-02-24 15:31:54 INFO Getting IE proxy configuration for current user: The operation completed successfully.
2020-02-24 15:31:54 INFO Getting WinHTTP proxy default configuration: The operation completed successfully.
2020-02-24 15:31:54 INFO Proxy environment variables:
2020-02-24 15:31:54 INFO http_proxy: hostname:port
2020-02-24 15:31:54 INFO https_proxy: hostname:port
2020-02-24 15:31:54 INFO no_proxy: IP address for instance metadata services (IMDS)
2020-02-24 15:31:54 INFO Starting Agent: amazon-ssm-agent - v2.3.871.0
2020-02-24 15:31:54 INFO OS: windows, Arch: amd64
```

**SSM Agent のプロキシ設定をリセットするには**

1. リモートデスクトップまたは Windows PowerShell を使用して、設定先のインスタンスに接続します。

1. リモートデスクトップを使用して接続した場合は、管理者として PowerShell を起動します。

1. PowerShell で次のコマンドブロックを実行します。

   ```
   Remove-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Services\AmazonSSMAgent -Name Environment
   Restart-Service AmazonSSMAgent
   ```

## SSM Agent プロキシ設定の優先順位
<a name="ssm-agent-proxy-precedence"></a>

Windows Server インスタンスで SSM Agent のプロキシ設定を構成する場合、SSM Agent の起動時にこれらの設定が評価され、エージェント構成に適用されることを理解することが重要です。Windows Server インスタンスのプロキシ設定を構成する方法によって、他の設定が目的の設定よりも優先されるかどうかを決定できます。エージェントは、エージェントが見つけた最初のプロキシ設定を使用します。

**重要**  
SSM Agent は、HTTPS プロトコルを使用して通信します。このため、次の設定オプションのいずれかを使用して `HTTPS proxy` パラメータを設定する必要があります。

SSM Agent プロキシ設定は、次の順序で評価されます。

1. `AmazonSSMAgent` のレジストリ設定 (`HKLM:\SYSTEM\CurrentControlSet\Services\AmazonSSMAgent`)

1. `System` 環境変数 (`http_proxy`、`https_proxy`、`no_proxy`)

1. `LocalSystem` ユーザーアカウントの環境変数 (`http_proxy`、`https_proxy`、`no_proxy`)

1. ブラウザ設定 (`HTTP`、`secure`、`exceptions`)

1. `WinHTTP` のプロキシ設定 (`http=`、`https=`、`bypass-list=`)

## SSM Agent プロキシ設定とSystems Manager サービス
<a name="ssm-agent-proxy-services"></a>

プロキシを使用するように SSM Agent を設定し、Windows Server インスタンスでの実行時に PowerShell や Windows Update クライアントを使用する AWS Systems Manager のツール (Run Command や Patch Manager など) を使う場合は、追加のプロキシ設定を行います。そうしないと、プロキシ設定が PowerShell や Windows Update クライアントによって使用され、SSM Agent プロキシ設定から継承されないため、オペレーションが失敗する可能性があります。

Run Command の場合は、Windows Server インスタンスで `WinINet` プロキシ設定を行います。指定される `[System.Net.WebRequest]` コマンドはセッション単位です。これらの設定を Run Command で実行する後続のネットワークコマンドに適用する場合、同じ `aws:runPowershellScript` プラグイン入力内の他の Powershell コマンドの前にこれらのコマンドを指定する必要があります。

次の PowerShell コマンドでは、現在の `WinINet` プロキシ設定を返し、プロキシ設定を `WinINet` に適用します。

```
[System.Net.WebRequest]::DefaultWebProxy

$proxyServer = "http://hostname:port"
$proxyBypass = "169.254.169.254"
$WebProxy = New-Object System.Net.WebProxy($proxyServer,$true,$proxyBypass)

[System.Net.WebRequest]::DefaultWebProxy = $WebProxy
```

Patch Manager の場合は、Windows Update クライアントが更新をスキャンしてダウンロードできるように、システム全体のプロキシ設定を行います。次のコマンドは SYSTEM アカウントで実行され、設定がシステム全体に適用されるため、Run Command を使用して実行することをお勧めします。次の `netsh` コマンドでは、現在のプロキシ設定を返し、プロキシ設定をローカルシステムに適用します。

```
netsh winhttp show proxy

netsh winhttp set proxy proxy-server="hostname:port" bypass-list="169.254.169.254"
```

Run Command の使用の詳細については、「[AWS Systems Manager Run Command](run-command.md)」を参照してください。