Azure Stack HCI のプロキシ設定を構成する

適用対象: Azure Stack HCI バージョン 22H2 および 21H2

この記事では、ネットワークでインターネット アクセスにプロキシ サーバーを使用する場合に、Azure Stack HCI のプロキシ設定を構成する方法について説明します。

Azure Stack HCI の送信エンドポイントと内部規則とポートのファイアウォール要件については、「Azure Stack HCI のファイアウォール要件」を参照してください。

開始する前に

プロキシ設定の構成を開始する前に、次の点を確認してください。

  • プロキシ設定を構成する Azure Stack HCI クラスターにアクセスできます。 また、Azure Stack HCI クラスター内のサーバーにアクセスするためのローカル管理者の資格情報もあります。

  • プロキシ サーバー名または IP アドレスとポートがわかっている (省略可能)。 この情報がない場合は、ネットワーク管理者に問い合わせてください。

プロキシ設定を構成する前に留意する必要があるその他の考慮事項を次に示します。

  • プロキシ設定は、Azure Stack HCI のさまざまなコンポーネントと機能に対して個別であることを理解してください。 必要なすべてのコンポーネントと、使用する予定の追加機能のプロキシ設定を構成する必要があります。

  • より簡単な管理を行う場合は、異なるコンポーネントと機能全体で同じプロキシ構成を維持することをお勧めします。

  • 認証されたユーザー資格情報の格納に関連するセキュリティ上の懸念があるため、認証済みプロキシはサポートされていません。

Azure Stack HCI のプロキシ要件

ネットワークでインターネット アクセスにプロキシ サーバーを使用する場合は、Azure Stack HCI 用に次のプロキシを構成する必要があります。

  • Azure Stack HCI オペレーティング システムのプロキシ。 このプロキシは、登録を成功させるために必要です。
  • Azure Arc 対応サーバーのプロキシ。 このプロキシは、登録を成功させるために必要です。
  • Microsoft Update とクラスター クラウド監視のプロキシ。 このプロキシは、Microsoft Update とクラスター クラウド監視を使用している場合にのみ必要です。
  • Azure サービスのプロキシ。 このプロキシは、Azure Kubernetes Services (AKS) ハイブリッド、Azure Arc VM 管理、Azure Monitor などの追加機能を使用している場合にのみ必要です。

次のセクションでは、これらの各プロキシ設定を構成する方法について説明します。

Azure Stack HCI オペレーティング システムのプロキシ設定を構成する

クラスターを Azure に登録する前に、Azure Stack HCI オペレーティング システム のプロキシを構成する必要があります。

モジュールを WinInetProxy インストールして、このセクションのコマンドを実行します。 モジュールの詳細とインストール方法については、「PowerShell ギャラリー | WinInetProxy 0.1.0」を参照してください。 PowerShell スクリプトの WinInetProxy 詳細については、「 WinInetProxy.psm1」を参照してください。

注意

インターネットにアクセスできないためにモジュールを WinInetProxy クラスター ノードにインストールできない場合は、モジュールを管理コンピューターにダウンロードしてから、モジュールを実行するクラスター ノードに手動で転送することをお勧めします。 Start-BitsTransfer PowerShell コマンドレットを使用して、管理コンピューターとサーバー間で 1 つ以上のファイルを転送することもできます。 Azure Stack HCI オペレーティング システムのプロキシ設定を構成するには、クラスター内の各サーバーで管理者として次の PowerShell コマンドを実行します。

  1. リモート デスクトップ プロトコル (RDP) を使用して Azure Stack HCI クラスター内のサーバーに接続し、PowerShell セッションを開きます。

  2. モジュールのインストール後にプロキシ設定を WinInetProxy 構成するには、次のコマンドレットを実行します。

    Set-WinInetProxy -ProxySettingsPerUser 0 -ProxyServer <Proxy_Server_Address:Proxy_Port> -ProxyBypass <URLs to bypass>
    

    各値の説明:

    • ProxySettingsPerUser は、プロキシ設定がマシンごとかユーザーごとかを指定します。

      • 0 - プロキシ設定はマシンごとに設定されます。
      • 1 (既定値) - プロキシ設定はユーザーごとです。
      • 値が指定されていない場合は、 ProxySettingsPerUser 環境変数が存在する場合は代わりに使用されます。
    • ProxyServer は、プロキシ サーバー エンドポイントを [Proxy_Server_Address]:[Proxy_Port] の形式で指定します。 たとえば、「 proxy.contoso.com:8080 」のように入力します。

    • ProxyBypass は、 パラメーターによって設定されたプロキシ サーバーをバイパスするホスト URL の一覧を -ProxyServer 指定します。 たとえば、ローカル イントラネット URL をバイパスするように 設定 -ProxyBypass <local> できます。

    コマンドの使用方法の例を次に示します。

    Set-WinInetProxy -ProxySettingsPerUser 0 -ProxyServer proxy.contoso.com:8080 -ProxyBypass "localhost,127.0.0.1,.svc,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,*.contoso.com"
    

プロキシ構成を削除するには、引数を指定せずに PowerShell コマンド Set-WinInetProxy を実行します。

Azure Arc 対応サーバーのプロキシ設定を構成する

クラスターを Azure に登録する前に、Azure Arc 対応サーバーのプロキシ を構成する必要があります。

プロキシ サーバー環境変数を設定するには、クラスター内の各サーバーで管理者として次のコマンドを実行します。

# If a proxy server is needed, execute these commands with the proxy URL and port.
[Environment]::SetEnvironmentVariable("HTTPS_PROXY", "http://ProxyServerFQDN:port", "Machine")
$env:HTTPS_PROXY = [System.Environment]::GetEnvironmentVariable("HTTPS_PROXY", "Machine")
[Environment]::SetEnvironmentVariable("HTTP_PROXY", "10.10.42.200:8080/", "Machine")
$env:HTTP_PROXY = [System.Environment]::GetEnvironmentVariable("HTTP_PROXY", "Machine")
# For the changes to take effect, the agent services need to be restarted after the proxy environment variable is set.
Restart-Service -Name himds, ExtensionService, GCArcService

次のコマンドを実行して、設定が適用されたことを確認します。

echo "https :" $env:https_proxy "http :" $env:http_proxy

プロキシなしの環境変数を設定するには、クラスター内の各サーバーで管理者として次のコマンドを実行します。

$no_proxy = "localhost,127.0.0.1,.svc,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,.contoso.com"
[Environment]::SetEnvironmentVariable("NO_PROXY", $no_proxy, "Machine")

プロキシ構成を削除するには、クラスター内の各サーバーで管理者として次のコマンドを実行します。

[Environment]::SetEnvironmentVariable("HTTPS_PROXY", $null, "Machine") 
$env:HTTPS_PROXY = [System.Environment]::GetEnvironmentVariable("HTTPS_PROXY", "Machine")
# For the changes to take effect, the agent services need to be restarted after the proxy environment variable removed. 
Restart-Service -Name himds, ExtensionService, GCArcService

Azure Arc 対応サーバーのプロキシ構成の詳細については、「 Connected Machine エージェントの管理と保守」を参照してください。

Microsoft Update とクラスター クラウド監視のプロキシ設定を構成する

Microsoft Update とクラスター クラウド監視のプロキシ設定は、 WinHTTP autoproxy を使用して自動的に構成することも、コマンド ライン ユーティリティを netsh 使用して手動で構成することもできます。

  • Microsoft Update とクラスター クラウド監視のプロキシ構成を手動で構成するには、コマンド プロンプトで次のように入力します。

    netsh winhttp set proxy Proxy_Server_Address:Proxy_Port
    
  • 現在の WinHTTP プロキシ構成を表示または確認するには、コマンド プロンプトで次のように入力します。

    netsh winhttp show proxy
    
  • プロキシ サーバーをバイパスするホスト URL の一覧を指定するには、コマンド プロンプトで次のように入力します。

    netsh winhttp set proxy Proxy_Server_Address:Proxy_Port bypass-list="<URL to bypass>"
    
  • 現在のユーザーではなく、コンピューター レベルでインターネット エクスプローラー (IE) プロキシ設定を構成するには、 にプロキシ構成をWinHTTPインポートWinInetします。 これを行うには、コマンド プロンプトで次のように入力します。

    netsh winhttp import proxy source=ie
    
  • Microsoft Update とクラスター クラウド監視のプロキシ構成を削除するには、コマンド プロンプトで次のように入力します。

    netsh winhttp reset proxy
    

Azure サービスのプロキシ設定を構成する

次のいずれかの Azure サービスを使用している場合、または使用する予定の場合は、各 Azure サービスのプロキシ サーバー設定を構成する方法の詳細については、次の記事を参照してください。

次のステップ

詳細については、次のトピックも参照してください。