Azure Firewall の拡張された新しい DNS 機能が一般提供に

2020年11月9日 に投稿済み

Program Manager, Azure Networking

この記事は、Azure ネットワークのテクニカル スペシャリストである Adam Stuart と共同で執筆したものです

カスタム DNS、DNS プロキシ、ネットワーク規則での FQDN フィルタリング (HTTP/S と非 MSSQL プロトコル用) が Azure Firewall で一般提供になりました。このブログでは、DNS プロキシと Private Link を使用したユース ケースの例もご紹介します。 

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

カスタム DNS のサポートが一般提供に

Azure Firewall は、2018 年 9 月に開始されて以来、Azure DNS を使用するようにハードコード化されているため、サービスによってアウトバウンド依存関係が確実に解決されます。カスタム DNS を利用すると、独自の DNS サーバーを使用するように Azure Firewall を構成する一方で、ファイアウォールのアウトバウンド依存関係は確実に Azure DNS で解決されるようにすることができます。Azure Firewall とファイアウォール ポリシーの DNS 設定で、単一の DNS サーバーまたは複数のサーバーを構成することができます。

Azure Firewall で Azure プライベート DNS を使用して名前を解決することもできます。Azure Firewall が存在する仮想ネットワークは、Azure プライベート ゾーンにリンクされている必要があります。

DNS プロキシが一般提供に

DNS プロキシが有効な場合、Azure Firewall による仮想ネットワークからの DNS クエリの処理と目的の DNS サーバーへの転送が可能になります。この機能は、ネットワーク規則で信頼性のある FQDN フィルタリングを適用するうえで重要かつ必須です。Azure Firewall とファイアウォール ポリシーの設定で DNS プロキシを有効にすることができます。DNS プロキシのログの詳細については、Azure Firewall のログとメトリックに関するドキュメントをご覧ください。

DNS プロキシの構成には 3 つの手順が必要です。

  1. Azure Firewall の DNS 設定で DNS プロキシを有効にします。
  2. 必要に応じてカスタム DNS サーバーを構成するか、指定された既定値を使用します。
  3. 最後に、仮想ネットワークの DNS サーバー設定で、Azure Firewall のプライベート IP アドレスをカスタム DNS サーバーとして構成する必要があります。これにより、DNS トラフィックが確実に Azure Firewall に送信されます。

DNS プロキシによって、TCP ポート 53 で要求がリッスンされて、Azure DNS または指定されたカスタム DNS に転送されます。

Azure Firewall でのカスタム DNS および DNS プロキシの設定。

図 1.Azure Firewall でのカスタム DNS および DNS プロキシの設定。

ネットワーク規則での FQDN フィルタリングが一般提供に

Azure Firewall とファイアウォール ポリシーにおいて、DNS 解決に基づいて、ネットワーク規則で完全修飾ドメイン名 (FQDN) を使用できるようになりました。規則コレクションで指定された FQDN は、ファイアウォールの DNS 設定に基づいて IP アドレスに変換されます。この機能により、どの TCP/UDP プロトコル (NTP、SSH、RDP などを含む) でも FQDN を使用してアウトバウンド トラフィックをフィルタリングできます。この機能は DNS 解決に基づいているため、保護対象の仮想マシンとファイアウォールの名前解決が確実に整合するよう、DNS プロキシを有効にすることが強く推奨されます。

アプリケーション規則ネットワーク規則での FQDN フィルタリングの違い

HTTP/S および MSSQL 用のアプリケーション規則での FQDN フィルタリングは、アプリケーション レベルの透過プロキシに基づいています。そのため、同じ IP アドレスに解決される 2 つの FQDN を区別できます。これはネットワーク規則での FQDN フィルタリングには当てはまらないため、可能な場合は常にアプリケーション規則を使用することが推奨されます。

ネットワーク規則での FQDN フィルタリング。

図 2. ネットワーク規則での FQDN フィルタリング。

Azure Firewall を DNS プロキシとして使用することによるオンプレミスからのプライベート エンドポイント アクセスの実現

Azure Private Link によって、プライベート エンドポイントを使用し、プライベート接続を介して、ストレージ アカウントやアプリ サービスなどの Microsoft PaaS サービスに接続できる機能が提供されます。プライベート エンドポイントとは、Azure Private Link を使用する PaaS サービスにプライベートかつ安全に接続するネットワーク インターフェイスです。プライベート エンドポイントによって仮想ネットワーク (VNet) のプライベート IP アドレスが使用されて、サービスが実質的にクラウドのプライベート ネットワーク内に取り込まれます。この手法により、PaaS サービスのパブリック IP アドレスが公開されたりアクセスされたりすることがなくなるため、セキュリティ上のメリットが追加されます。

Azure Private Link の大きなメリットの 1 つは、プライベート アドレスが指定されたハイブリッド接続 (Azure ExpressRoute のプライベート ピアリングサイト間 VPN など) を介して Microsoft PaaS サービスを使用できることです。しかし、このメリットには、プライベート エンドポイントにマップされる DNS レコードの自動ライフサイクル管理の恩恵を受けるために、オンプレミスからの DNS 要求を Azure プライベート DNS に転送するという課題も伴います。

Private Link を利用する各 Azure PaaS サービスに対しては、Azure プライベート DNS ゾーンにマップおよび格納される FQDN が指定されます。Azure DNS Private Zones に送信された要求は、Azure 内からのみ到達可能なプラットフォーム アドレスである 168.63.129.16 に送られます。そのため、DNS 要求がオンプレミス (Azure の外部) から送信される場合は、仮想ネットワーク内のサービスによって DNS 要求をプロキシ経由にする必要があります。

今回の一般提供が発表されたことで、Azure Firewall の DNS プロキシが、ハブアンドスポーク モデルで適用できる、この DNS の転送要件を満たすためのオプションとなりました。これを行うには、必須のゾーン名を対象とした要求を条件付きで Azure Firewall に転送するようにオンプレミスの DNS サーバーを構成します。プライベート DNS ゾーンが、Azure Firewall が存在する仮想ネットワークに確実にリンクされるようにしてください。検索に既定の Azure DNS を使用するように Azure Firewall を構成し、Azure Firewall の DNS 設定で DNS プロキシを有効にしてください。 DNS プロキシの詳細については、DNS 設定に関するドキュメントをご覧ください。

次のステップ

このブログ記事で説明したすべての内容の詳細については、以下をご確認ください。

Azure Firewall の詳細と、ネットワークをセキュリティで保護してサイバー セキュリティ攻撃を防ぐためにゼロトラストの手法を採用する方法を確認するには、Azure のネットワーク セキュリティのデジタル イベントに今すぐご登録ください