チュートリアル: Azure portal を使用して Azure Firewall とポリシーをデプロイして構成する

アウトバウンド ネットワーク アクセスを制御することは、ネットワーク セキュリティ プラン全体の重要な要素です。 たとえば、Web サイトへのアクセスを制限することができます。 また、アクセスできるアウトバウンドの IP アドレスとポートを制限することもできます。

Azure サブネットから外に向かうアウトバウンド ネットワーク アクセスを制御する方法の 1 つとして、Azure Firewall とファイアウォール ポリシーの使用が挙げられます。 Azure Firewall とファイアウォール ポリシーでは、次の構成を行うことができます。

  • アプリケーション ルール: サブネットからアクセスできる完全修飾ドメイン名 (FQDN) を定義します。
  • ネットワーク ルール: 送信元アドレス、プロトコル、宛先ポート、送信先アドレスを定義します。

ネットワーク トラフィックは、サブネットの既定ゲートウェイとしてのファイアウォールにルーティングしたときに、構成されているファイアウォール ルールに制約されます。

このチュートリアルでは、デプロイしやすいように、2 つのサブネットを含む簡単な VNet を 1 つ作成します。

  • AzureFirewallSubnet - このサブネットにファイアウォールが存在します。
  • Workload-SN - このサブネットにはワークロード サーバーがあります。 このサブネットのネットワーク トラフィックは、ファイアウォールを通過します。

チュートリアルのネットワーク インフラストラクチャ

運用環境のデプロイでは、ハブとスポーク モデルを採用して、独自の VNet にファイアウォールを配置することをお勧めします。 ワークロード サーバーは、1 つ以上のサブネットを含む同じリージョンのピアリングされた VNet に配置されます。

このチュートリアルでは、以下の内容を学習します。

  • テスト ネットワーク環境を設定する
  • ファイアウォールとファイアウォール ポリシーをデプロイする
  • 既定のルートを作成する
  • www.google.com へのアクセスを許可するようにアプリケーション ルールを構成する
  • 外部 DNS サーバーへのアクセスを許可するようにネットワーク ルールを構成する
  • テスト サーバーへのリモート デスクトップ接続を許可するように NAT 規則を構成する
  • ファイアウォールをテストする

好みに応じて、Azure PowerShell を使ってこの手順を実行することもできます。

前提条件

Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。

ネットワークのセットアップ

最初に、ファイアウォールをデプロイするために必要なリソースを含めるリソース グループを作成します。 次に、VNet、サブネット、およびテスト サーバーを作成します。

リソース グループを作成する

このリソース グループには、このチュートリアルのすべてのリソースが含まれます。

  1. Azure portal にサインインします。

  2. Azure portal メニューで [リソース グループ] を選択するか、または任意のページから [リソース グループ] を検索して選択し、[追加] を選択します。 次の値を入力または選択します。

    設定
    サブスクリプション Azure サブスクリプションを選択します。
    Resource group Test-FW-RG」と入力します。
    リージョン リージョンを選択します。 作成する他のすべてのリソースも、同じリージョン内のものである必要があります。
  3. [Review + create](レビュー + 作成) を選択します。

  4. [作成] を選択します

VNet を作成する

この VNet には 2 つのサブネットがあります。

Note

AzureFirewallSubnet サブネットのサイズは /26 です。 サブネットのサイズの詳細については、「Azure Firewall に関する FAQ」を参照してください。

  1. Azure portal メニュー上または [ホーム] ページから [リソースの作成] を選択します。

  2. [ネットワーク] を選択します。

  3. 仮想ネットワークを検索して選択します。

  4. [作成] を選択し、次の値を入力または選択します。

    設定
    サブスクリプション Azure サブスクリプションを選択します。
    Resource group [Test-FW-RG] を選択します。
    名前 Test-FW-VN」と入力します。
    リージョン 以前使用したのと同じ場所を選択します。
  5. Next:次へ: IP アドレス を選択します。

  6. [IPv4 アドレス空間] には、既定値の 10.0.0.0/16 をそのまま使用します。

  7. [サブネット] で、 [default](既定) を選択します。

  8. [サブネット名] で、名前を AzureFirewallSubnet に変更します。 ファイアウォールはこのサブネットに配置されます。サブネット名は AzureFirewallSubnet でなければなりません

  9. [アドレス範囲] に「10.0.1.0/26」と入力します。

  10. [保存] を選択します。

    次に、ワークロード サーバーのサブネットを作成します。

  11. [サブネットの追加] を選択します。

  12. [サブネット名] に「Workload-SN」と入力します。

  13. [サブネット アドレス範囲] に「10.0.2.0/24」と入力します。

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

  15. [Review + create](レビュー + 作成) を選択します。

  16. [作成] を選択します

仮想マシンの作成

ワークロード仮想マシンを作成し、Workload-SN サブネットに配置します。

  1. Azure portal メニュー上または [ホーム] ページから [リソースの作成] を選択します。

  2. [Windows Server 2019 Datacenter] を選択します。

  3. 仮想マシンに次の値を入力または選択します。

    設定
    サブスクリプション Azure サブスクリプションを選択します。
    Resource group [Test-FW-RG] を選択します。
    仮想マシン名 Srv-Work」と入力します。
    リージョン 以前使用したのと同じ場所を選択します。
    ユーザー名 ユーザー名を入力します。
    Password パスワードを入力します。
  4. [受信ポートの規則][パブリック受信ポート] で、 [なし] を選択します。

  5. 他の既定値をそのまま使用し、 [次へ:ディスク] を選択します。

  6. ディスクの既定値をそのまま使用し、 [次へ:ネットワーク] を選択します。

  7. 仮想ネットワークとして Test-FW-VN が選択されていること、およびサブネットが Workload-SN であることを確認します。

  8. [パブリック IP] で、 [なし] を選択します。

  9. 他の既定値をそのまま使用し、 [次へ:管理] を選択します。

  10. [無効] を選択して、ブート診断を無効にします。 他の既定値をそのまま使用し、 [確認および作成] を選択します。

  11. 概要ページの設定を確認して、 [作成] を選択します。

  12. デプロイが完了したら、Srv-Work リソースを選択し、後で使用するためにプライベート IP アドレスをメモしておきます。

ファイアウォールとポリシーをデプロイする

VNet にファイアウォールをデプロイします。

  1. Azure portal メニュー上または [ホーム] ページから [リソースの作成] を選択します。

  2. 検索ボックスに「ファイアウォール」と入力し、Enter キーを押します。

  3. [ファイアウォール] を選択し、 [作成] を選択します。

  4. [ファイアウォールの作成] ページで、次の表を使用してファイアウォールを構成します。

    設定
    サブスクリプション Azure サブスクリプションを選択します。
    Resource group [Test-FW-RG] を選択します。
    名前 Test-FW01」と入力します。
    リージョン 以前使用したのと同じ場所を選択します。
    ファイアウォール管理 [ファイアウォール ポリシーを使用してこのファイアウォールを管理する] を選択します。
    ファイアウォール ポリシー [新規追加] を選択し、「fw-test-pol」と入力します。
    前に使用したものじリージョンを選択します。
    仮想ネットワークの選択 [既存のものを使用][Test-FW-VN] の順に選択します。
    パブリック IP アドレス [新規追加] を選択し、[名前] に「fw-pip」と入力します。
  5. 他の既定値をそのまま使用し、 [確認および作成] を選択します。

  6. 概要を確認し、 [作成] を選択してファイアウォールを作成します。

    デプロイが完了するまでに数分かかります。

  7. デプロイが完了したら、Test-FW-RG リソース グループに移動し、Test-FW01 ファイアウォールを選択します。

  8. ファイアウォールのプライベートおよびパブリック IP アドレスをメモします。 これらのアドレスは後ほど使用します。

既定のルートを作成する

Workload-SN サブネットでは、アウトバウンドの既定ルートがファイアウォールを通過するように構成します。

  1. Azure portal メニューで [すべてのサービス] を選択するか、または任意のページから [すべてのサービス] を検索して選択します。

  2. [ネットワーク] で、 [ルート テーブル] を選択します。

  3. [作成] を選択し、次の値を入力または選択します。

    設定
    サブスクリプション Azure サブスクリプションを選択します。
    Resource group [Test-FW-RG] を選択します。
    リージョン 以前使用したのと同じ場所を選択します。
    名前 Firewall-route」と入力します。
  4. [Review + create](レビュー + 作成) を選択します。

  5. [作成] を選択します

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

  1. [Firewall-route] ページで、[サブネット] を選択し、[関連付け] を選択します。
  2. [仮想ネットワーク]>[Test-FW-VN] の順に選択します。
  3. [サブネット] で、 [Workload-SN] を選択します。 必ずこのルートの Workload-SN サブネットのみを選択してください。それ以外の場合、ファイアウォールが正常に動作しません。
  4. [OK] を選択します。
  5. [ルート][追加] の順に選択します。
  6. [ルート名] に「fw-dg」と入力します。
  7. [アドレス プレフィックス] に「0.0.0.0/0」と入力します。
  8. [次ホップの種類] で、 [仮想アプライアンス] を選択します。 Azure Firewall は実際はマネージド サービスですが、この状況では仮想アプライアンスが動作します。
  9. [次ホップ アドレス] に、前にメモしておいたファイアウォールのプライベート IP アドレスを入力します。
  10. [OK] を選択します。

アプリケーション ルールを構成する

これは、www.google.com へのアウトバウンド アクセスを許可するアプリケーション ルールです。

  1. Test-FW-RG リソース グループを開き、[fw-test-pol] ファイアウォール ポリシーを選択します。
  2. [Application rules](アプリケーション ルール) を選択します。
  3. [規則コレクションの追加] を選択します。
  4. [名前] に「App-Coll01」と入力します。
  5. [優先度] に「200」と入力します。
  6. [規則コレクション アクション][許可] を選択します。
  7. [ルール][名前] に「Allow-Google」と入力します。
  8. [Source type](送信元の種類) で、 [IP アドレス] を選択します。
  9. [送信元] に「10.0.2.0/24」と入力します。
  10. [プロトコル:ポート] に「http, https」と入力します。
  11. [送信先の種類] として [FQDN] を選択します。
  12. [送信先] に「www.google.com」と入力します。
  13. [追加] を選択します。

Azure Firewall には、既定で許可されるインフラストラクチャ FQDN 用の組み込みのルール コレクションが含まれています。 これらの FQDN はプラットフォームに固有であり、他の目的には使用できません。 詳細については、インフラストラクチャ FQDN に関する記事を参照してください。

ネットワーク ルールを構成する

これは、ポート 53 (DNS) で 2 つの IP アドレスへのアウトバウンド アクセスを許可するネットワーク ルールです。

  1. [ネットワーク ルール] を選択します。
  2. [規則コレクションの追加] を選択します。
  3. [名前] に「Net-Coll01」と入力します。
  4. [優先度] に「200」と入力します。
  5. [規則コレクション アクション][許可] を選択します。
  6. [規則コレクション グループ] で、DefaultNetworkRuleCollectionGroup を選択します。
  7. [ルール][名前] に「Allow-DNS」と入力します。
  8. [Source type](送信元の種類) で、 [IP アドレス] を選択します。
  9. [送信元] に「10.0.2.0/24」と入力します。
  10. [プロトコル][UDP] を選択します。
  11. [宛先ポート] に「53」と入力します。
  12. [送信先の種類] として [IP アドレス] を選択します。
  13. [送信先] に「209.244.0.3,209.244.0.4」と入力します。
    これらは、CenturyLink によって運用されるパブリック DNS サーバーです。
  14. [追加] を選択します。

DNAT ルールを構成する

このルールを使用すると、ファイアウォールを介して、リモート デスクトップを Srv-Work 仮想マシンに接続できます。

  1. [DNAT rules](DNAT ルール) を選択します。
  2. [規則コレクションの追加] を選択します。
  3. [名前] に「rdp」と入力します。
  4. [優先度] に「200」と入力します。
  5. [規則コレクション グループ] で、DefaultDnatRuleCollectionGroup を選択します。
  6. [ルール][名前] に「rdp-nat」と入力します。
  7. [Source type](送信元の種類) で、 [IP アドレス] を選択します。
  8. [送信元] に「*」と入力します。
  9. [プロトコル][TCP] を選択します。
  10. [宛先ポート] に「3389」と入力します。
  11. [送信先の種類][IP アドレス] を選択します。
  12. [送信先] に、ファイアウォールのパブリック IP アドレスを入力します。
  13. [変換されたアドレス]Srv-work のプライベート IP アドレスを入力します。
  14. [変換されたポート] に「3389」と入力します。
  15. [追加] を選択します。

Srv-Work ネットワーク インターフェイスのプライマリおよびセカンダリ DNS アドレスを変更する

このチュートリアルのテスト目的で、サーバーのプライマリおよびセカンダリ DNS アドレスを構成します。 これは、一般的な Azure Firewall 要件ではありません。

  1. Azure portal メニューで [リソース グループ] を選択するか、または任意のページから [リソース グループ] を検索して選択します。 [Test-FW-RG] リソース グループを選択します。
  2. Srv-Work 仮想マシンのネットワーク インターフェイスを選択します。
  3. [設定] で、 [DNS サーバー] を選択します。
  4. [DNS サーバー] で、 [カスタム] を選択します。
  5. [DNS サーバーの追加] テキスト ボックスに「209.244.0.3」と入力し、次のテキスト ボックスに「209.244.0.4」と入力します。
  6. [保存] を選択します。
  7. Srv-Work 仮想マシンを再起動します。

ファイアウォールをテストする

今度は、ファイアウォールをテストして、想定したように機能することを確認します。

  1. リモート デスクトップをファイアウォールのパブリック IP アドレスに接続し、Srv-Work 仮想マシンにサインインします。

  2. Internet Explorer を開き、 https://www.google.com を参照します。

  3. Internet Explorer のセキュリティ アラートで、 [OK]>[閉じる] の順に選択します。

    Google のホーム ページが表示されます。

  4. https://www.microsoft.com を参照します。

    ファイアウォールによってブロックされます。

これで、ファイアウォール ルールが動作していることを確認できました。

  • 1 つの許可された FQDN は参照できますが、それ以外は参照できません。
  • 構成された外部 DNS サーバーを使用して DNS 名を解決できます。

リソースをクリーンアップする

ファイアウォール リソースは、次のチュートリアルのために残しておいてもかまいませんが、不要であれば、Test-FW-RG リソース グループを削除して、ファイアウォール関連のすべてのリソースを削除してください。

次のステップ