はじめに
Azure Firewallでアプリケーションの通信の制御を行う場合には2種類の方法があります。この2種類の方法を紹介していきます。
Azure Firewallではネットワーク(レイヤー4)、アプリケーション(レイヤー7)での設定が可能です。
2種類の制御
- 規則コレクションの種類:ネットワーク(レイヤー4)での制御
- 規則コレクションの種類:アプリケーション(レイヤー7)での制御
事前準備
Azureの基礎的な利用方法は分かっていること。
以前の記事の構成が作成されている。
-
Azure Firewallの基本、仮想ネットワーク内の通信を制御する。 - 技術的な何か。
はじめに Azure Firewallの基本について学んでいきたいと思います。Azure Firewallの紹介やサンプルではインターネット向けの紹介がされていますが、本来の利用法としてはあっていま
level69.net
VM2(10.0.0.5)にnginxが導入されていること。
ネットワーク(レイヤー4)での制御
レイヤー4での制御の方が慣れている方も多いのではないでしょうか。NSGもこの部類に入ります。
簡単に言ってしまうと、TCP、UDP、ICMPなどのプロトコルの通信を制御+ポートで制御することになります。
下記はHTPPへの通信を制御する例です。
- HTTPはTCPなのでこれを選択
- ポート80番でサービスが動いているのでこれを入力
Firewallの設定
問題なく疎通が行えるか確認します。
curlでアクセスして、アクセスログも確認できるか確認します。
試しに、ポリシーを拒否にしてみます。
そもそもパケット自体が飛ばず、コンベクションが確立できないことが分かります。
アプリケーション(レイヤー7)
レイヤー7で制御します。
Azure Firewallで制御できるものは限られています。
StandardとPremiumでも異なります。
- FQDN
- FQDNタグ
- URL(Premiumのみ)
- Webカテゴリ
また、TLSの精査(Premiumのみ)も行えます。
ここで面白いのはWebカテゴリだと思います。様々なコンテンツをフィルターすることが出来ます。
-
Azure Firewall の Web カテゴリ | Microsoft Learn
Azure Firewall の Web カテゴリとその説明を示します。
docs.microsoft.com
例としてFQDNの利用した規則を試してみます。
確認してみると問題なく疎通が行えることが分かります。
次に、拒否ルールの変更します。
この場合、通信が拒否られるというよりは、フィルタリングされるようなイメージです。
そのため、どのFirewallポリシーで、どのルールで拒否されているか表示されます。
このように、一度Firewallによって処理されます。
あまりにも大量の処理が入ると通信に影響がでるかもしれません。
まとめ
Azure Firewallのポリシー2種類の使い方を紹介しました。これらを使い分けて、様々な利用方法があり試してみると良いと思います。