演習 - Azure Firewall 経由でネットワーク トラフィックをルーティングする

完了

前の演習では、Azure Firewall をデプロイしました。 次に、すべてのネットワーク トラフィックをファイアウォール経由でルーティングし、ファイアウォール規則を使用してトラフィックをフィルター処理する必要があります。 これを行うと、Azure Firewall が Azure Virtual Desktop の送信ネットワーク トラフィックを保護してくれます。

すべてのトラフィックをファイアウォール経由でルーティングする

ホスト プールで使われるサブネットでは、アウトバウンドの既定ルートがファイアウォールを通過するように構成します。 次の 3 つの手順を実行します。

  1. ホスト プールの VM およびファイアウォールと同じリソース グループにルート テーブルを作成します。
  2. ルート テーブルを、ホスト プール VM が使用するサブネットに関連付けます。
  3. ルート テーブルで、ファイアウォールにルートを追加します。

これらの手順を完了すると、すべてのトラフィックが Azure Firewall にルーティングされます。

ルート テーブルを作成する

まず、firewall-route という名前のルート テーブルを作成します。

  1. Azure portal[ルート テーブル] を検索し、選択します。

  2. [+ 作成] を選択します。

  3. 次の値を使用します。

    フィールド
    サブスクリプション 該当するサブスクリプション
    Resource group learn-firewall-rg
    リージョン 以前使用したのと同じ場所を選択します。
    名前 firewall-route

    Screenshot that shows the information to include when creating a route table.

  4. [確認と作成]>[作成] の順に選択します。

  5. デプロイが完了したら、[リソースに移動] を選択します。

ルート テーブルをワークロードのサブネットに関連付ける

ここで、firewall-route をホスト プールのサブネットに関連付けます。

  1. firewall-route[設定][サブネット] を選択します。 Screenshot that shows the subnet option under settings for the firewall route.

  2. [+ 関連付け] を選択します。

  3. 次の値を選択します。

    フィールド
    仮想ネットワーク hostVNet
    Subnet hostSubnet
  4. [OK] を選び、関連付けが追加されるまで待ちます。

ルート テーブルにルートを追加する

最後の手順では、ルート テーブルの Azure Firewall にルートを追加します。 この手順を完了すると、ホスト プール仮想ネットワーク上のすべてのネットワーク トラフィックが、Azure Firewall 経由でルーティングされます。

  1. [設定][ルート] を選択します。

    Screenshot that shows the routes option under settings on the firewall route table.

  2. [+ 追加] を選択します。

  3. 次の値を入力します。

    フィールド
    ルート名 fw-rt
    変換先の型 [IP アドレス]
    宛先 IP アドレス/CIDR 範囲 0.0.0.0/0
    ネクストホップの種類 仮想アプライアンス
    次ホップ アドレス 前の演習ユニットでコピーしたファイアウォールのプライベート IP アドレスを貼り付けます。 これは、[ファイアウォール] ページに [ファイアウォールのプライベート IP] として列挙されています。

    Screenshot that shows the information to include when adding a route.

  4. [追加] を選択します。

アプリケーション規則コレクションを作成する

既定では、ファイアウォールによってあらゆるアクセスが拒否されるため、トラフィックのファイアウォール通過を許可する条件を構成する必要があります。

複数の完全修飾ドメイン名 (FQDN) への Azure Virtual Desktop アクセスを許可する規則を含むアプリケーション規則コレクションを作成します。

  1. Azure portal で、[ファイアウォール] を検索し、選択します。

  2. learn-fw ファイアウォールを選択します。

  3. [設定] で、[規則 (クラシック)] を選択します。 Screenshot that shows the rules classic option under settings in the firewall.

  4. [アプリケーション規則コレクション] タブを選択し、[アプリケーション規則コレクションの追加] を選択します。 Screenshot that shows the application rule collection tab with the add application rule collection option.

  5. 次の情報を入力します。

    フィールド
    名前 app-coll01
    優先度 200
    アクション Allow
  6. [規則][FQDN タグ] セクションで、次の情報を入力します。

    フィールド
    名前 allow-virtual-desktop
    変換元の型 IP アドレス
    source hostVNet のアドレス空間 (10.0.0.0/16 など)
    FQDN のタグ Windows Virtual Desktop
  7. [規則][対象 FQDN] セクションで、次の情報を入力します。

    フィールド
    名前 allow-storage-service-bus-accounts
    変換元の型 IP アドレス
    source hostVNet のアドレス空間 (10.0.0.0/16 など)
    プロトコル:ポート https
    ターゲットの FQDN *xt.blob.core.windows.net*eh.servicebus.windows.net*xt.table.core.windows.net
  8. 完了すると、フォームは次の図のようになります。Screenshot that shows the application rule collection form filled out.

  9. [追加] を選択します。

ネットワーク規則コレクションを作成する

このシナリオでは Microsoft Entra Domain Services (Microsoft Entra Domain Services) を使用しているため、DNS を許可するネットワーク ルールを作成する必要がないとします。 ただし、Azure Virtual Desktop VM から Windows アクティブ化サービスへのトラフィックを許可する規則を作成する必要があります。 ネットワーク規則でキー管理サービス (KMS) を許可するには、Azure グローバル クラウドの KMS サーバーの宛先 IP アドレスを使用します。

  1. [learn-fw]>[規則 (クラシック)] で、[ネットワーク規則コレクション] を選択します。

  2. [ネットワーク規則コレクション] タブを選択し、[ネットワーク規則コレクションの追加] を選択します。 Screenshot that shows the network rule collection tab with the add network rule collection option.

  3. 次の情報を入力します。

    フィールド
    名前 net-coll01
    優先度 200
    アクション Allow
  4. [規則][IP アドレス] セクションで、次の情報を入力します。

    フィールド
    名前 allow-kms
    Protocol TCP
    変換元の型 IP アドレス
    source hostVNet のアドレス空間 (10.0.0.0/16 など)
    変換先の型 IP アドレス (IP address)
    Destination Address (宛先アドレス) 23.102.135.246
    ターゲット ポート 1688
  5. 完了すると、フォームは次の図のようになります。Screenshot that shows the network rule collection form filled out.

  6. [追加] を選択します。

作業を確認

この時点で、Azure Virtual Desktop のすべてのネットワーク トラフィックがファイアウォールを経由するようにルーティングされました。 ファイアウォールが想定どおりに動作することを確認してみましょう。 ファイアウォールを経由して Azure Virtual Desktop サービスに至るホスト プールからの送信ネットワーク トラフィックをフィルター処理する必要があります。 サービス コンポーネントの状態を確認することによって、サービスへのトラフィックがファイアウォールによって許可されていることを確認できます。

  1. Azure Cloud Shell で次のコマンドを実行します。

    "rdgateway", "rdbroker","rdweb"|% `
    {Invoke-RestMethod -Method:Get `
    -Uri https://$_.wvd.microsoft.com/api/health}|ft `
    -Property Health,TimeStamp,ClusterUrl
    
  2. 3 つすべてのコンポーネント サービスが正常であることが示される、次のような結果が表示されます。

    Health               TimeStamp           ClusterUrl
    ------               ---------           ----------
    RDGateway is Healthy 7/2/2021 6:00:00 PM https://rdgateway-c101-cac-r1.wvd.microsoft.com/
    RDBroker is Healthy  7/2/2021 6:00:00 PM https://rdbroker-c100-cac-r1.wvd.microsoft.com/
    RDWeb is Healthy     7/2/2021 6:00:00 PM https://rdweb-c100-cac-r1.wvd.microsoft.com/
    

    1 つ以上のコンポーネントが正常でない場合、ファイアウォールが想定どおりに動作していないことになります。