ナビゲーションをスキップする

Azure Firewall の強制トンネリングと SQL FQDN フィルタリングの一般提供を開始

2020年6月10日 に投稿済み

Principal Program Manager, Azure Networking

Azure Firewall で、強制トンネリングと SQL FQDN フィルタリングという 2 つの新しい主要な機能の一般提供が開始されました。さらに、宛先ネットワーク アドレス変換 (DNAT) と送信元ネットワーク アドレス変換 (SNAT) の両方において、複数のパブリック IP アドレスの上限が 100 から 250 へ増えました。

Azure Firewall は、クラウド ネイティブのサービスとしてのファイアウォール (FWaaS) オファリングで、DevOps アプローチを使用してお客様のすべてのトラフィック フローを一元的に管理し、ログに記録することができます。このサービスでは、アプリケーションおよびネットワークのレベルの両方のフィルタリング規則がサポートされています。また Microsoft 脅威インテリジェンス フィードと統合されており、既知の悪意のある IP アドレスおよびドメインをフィルター処理することができます。Azure Firewall は、組み込みの自動スケーリングによって高可用性を実現します。

強制トンネリングのサポートが一般提供に

強制トンネリングを使用すると、Azure Firewall からインターネットに向かうすべてのトラフィックを、オンプレミスのファイアウォールにリダイレクトするか、近くのネットワーク仮想アプライアンス (NVA) にチェーンさせて、追加の検査を行うことができます。新しいファイアウォールを作成するときに、ファイアウォールで強制トンネリングを有効にします。現時点では、既存のファイアウォールのデプロイを強制トンネリング モードへ移行させることはできません。

強制トンネリングをサポートするため、サービス管理トラフィックは顧客のトラフィックから分離されています。AzureFirewallManagementSubnet という名前の追加の専用サブネットと、それ自体に関連付けられているパブリック IP アドレスが必要です。このサブネットで許可される唯一のルートは、インターネットへの既定のルートであり、Border Gateway Protocol (BGP) ルート伝達は無効にする必要があります。

この構成では、AzureFirewallSubnet にオンプレミスのファイアウォールまたは NVA へのルートを含めることができるようになり、インターネットに渡される前にトラフィックを処理することができます。BGP ルート伝達がこのサブネットで有効になっている場合は、BGP 経由でこれらのルートを AzureFirewallSubnet に発行することもできます。

強制トンネリング モードの VNnetFirewall。

図 1.強制トンネリング モードの Azure Firewall。

強制トンネリングを使用した SNAT の防止

Azure Firewall では、パブリック IP アドレス向けのすべてのアウトバウンド トラフィックに対して、自動 SNAT が提供されます。宛先 IP アドレスが IANA RFC 1918 に準拠しているプライベート IP アドレス範囲である場合、Azure Firewall は SNAT を行いません。このロジックは、インターネットへ直接エグレスが行われる場合に適切に機能します。しかし、強制トンネリングが有効になっている場合、インターネットに向かうトラフィックが SNAT によって AzureFirewallSubnet のいずれかのファイアウォール プライベート IP アドレスに変換されるので、オンプレミスのファイアウォールで送信元が確認できなくなります。プライベート IP アドレスの範囲として "0.0.0.0/0" を追加することで、宛先 IP アドレスが何であっても SNAT を行わないよう Azure Firewall を構成できます。この構成では、Azure Firewall でインターネットへ直接エグレスを行うことはできないことに留意してください。詳細については、Azure Firewall SNAT プライベート IP アドレス範囲をご覧ください。

プライベート IP アドレスの範囲として 0.0.0.0/0 を追加することで、宛先 IP アドレスが何であっても SNAT を行わないように構成された Azure Firewall。

図 2. プライベート IP プレフィックスの SNAT を行わない構成の Azure Firewall。

パブリック PaaS と Office 365 へのルーティング

Azure Firewall の強制トンネリングではインターネットに向かうすべてのトラフィックをオンプレミスのファイアウォールまたは近くの NVA に転送できますが、これが常に好ましいとは限りません。たとえば、パブリック サービスとしてのプラットフォーム (PaaS) または Office 365 へ直接エグレスを行う方が望ましい場合があります。次ホップの種類を "インターネット" にした特定の宛先に対するユーザー定義ルート (UDR) を AzureFirewallSubnet に追加することによって、これを実現することができます。この定義は既定のルートよりも具体的なので、優先されます。詳細については、「Azure の IP の範囲とサービス タグ」と Office 365 の IP アドレスに関するページをご覧ください。

パブリック PaaS へ直接エグレスを行う別の方法として、AzureFirewallSubnet で仮想ネットワーク (VNet) サービス エンドポイントを有効にすることができます。これらのエンドポイントによって、仮想ネットワークのプライベート アドレス空間と ID が直接接続で Azure PaaS サービスまで拡張されます。有効にすると、対応する PaaS サービスへの特定のルートが自動的に作成されます。サービス エンドポイントを使用することで、重要な Azure サービス リソースを VNet のみに限定することができます。VNet から Azure サービスへのトラフィックは常に、Microsoft Azure のバックボーン ネットワーク上にとどまります。

この構成では、上記のようにプライベート IP プレフィックスとして "0.0.0.0/0" を追加することはできないのでご注意ください。ただし、SNAT を行わないカスタム範囲を追加することはできます。

最後に、Azure プライベート エンドポイントを使用して、Azure Private Link を利用するパブリック PaaS サービスにプライベートかつ安全に接続することもできます。しかし、このドキュメントに記載されているように、これらの接続では Azure Firewall への既定のルートがバイパスされます。すべてのトラフィックをファイアウォール経由で伝送する必要がある場合は、プライベート エンドポイントの IP アドレスと /32 サフィックスを宛先にし、Azure Firewall を次ホップにして、UDR をすべてのクライアント サブネットに追加することで対応できます。この構成が機能して、プライベート エンドポイントから戻ってくるトラフィックもファイアウォール経由で伝送されるようにするには、プライベート IP アドレスの範囲として 255.255.255.255/32 を使用して、常に SNAT を行う必要があることに留意してください。

ストレージ プライベート エンドポイントへの UDR の追加。すべてのトラフィックがファイアウォール経由で伝送されるようにするために、次ホップとしてファイアウォールを指定。

図 3.次ホップとしてファイアウォールが指定された、ストレージ プライベート エンドポイントへの UDR。

SQL FQDN フィルタリングが一般提供に

Azure Firewall アプリケーション規則で SQL FQDN を構成できるようになりました。これにより、VNet からのアクセスを、指定された SQL Server インスタンスのみに制限することができます。VNet から Azure SQL Database、Azure SQL Data Warehouse、Azure SQL Managed Instance、または VNet にデプロイされた SQL IaaS インスタンスへのトラフィックをフィルター処理できます。

SQL FQDN フィルタリングは、現在プロキシ モードでのみサポートされています (ポート 1433)。SQL サービスとしてのインフラストラクチャ (IaaS) のトラフィックに既定以外のポートを使用する場合は、ファイアウォール アプリケーション規則でそれらのポートを構成できます。

既定のリダイレクト モードで SQL を使用する場合でも、ネットワーク規則の一部として SQL サービス タグを使用してアクセスをフィルター処理することができます。アプリケーション規則でのリダイレクト モードのサポートは追加される予定です。

SQL FQDN フィルタリングのための Azure Firewall アプリケーション規則。

図 4. Azure Firewall アプリケーション規則での SQL FQDN フィルタリング。

複数のパブリック IP アドレスの上限が増加

DNAT と SNAT の両方において、Azure Firewall で最大 250 のパブリック IP アドレスを使用できるようになりました。

  • DNAT - 複数の標準ポート インスタンスをバックエンド サーバーに変換できます。たとえば、2 個のパブリック IP アドレスがある場合、両方の IP アドレス用に TCP ポート 3389 (RDP) を変換できます。
  • SNAT - アウトバウンド SNAT 接続に追加のポートを使用できるので、SNAT ポートが不足する可能性が低減されます。現時点では、接続に使用する送信元パブリック IP アドレスが Azure Firewall でランダムに選択されます。ネットワークにダウンストリーム フィルターがある場合は、ファイアウォールに関連付けられているすべてのパブリック IP アドレスを許可する必要があります。この構成を簡略化するには、パブリック IP アドレス プレフィックスを使用することを検討してください。

詳細については、複数のパブリック IP アドレスを使用する Azure Firewall のデプロイに関するページをご覧ください。

次のステップ

ここで説明したすべての内容の詳細については、以下をご覧ください。