【ITニュース解説】Azure NSG Routes
2025年09月05日に「Dev.to」が公開したITニュース「Azure NSG Routes」について初心者にもわかりやすいように丁寧に解説しています。
ITニュース概要
Azure Network Security Groups (NSGs)は、Azureリソースへのネットワークトラフィックを制御する仮想ファイアウォール。送信元/宛先IPアドレス、ポート番号、プロトコルに基づき、インバウンド/アウトバウンドのトラフィックを許可または拒否する。最小権限の原則に基づき、必要なトラフィックのみ許可するよう設定し、定期的な監査と不要なルールの削除が重要。Application Security GroupsやFlow Logsなどの高度な機能も活用できる。
ITニュース解説
Azure Network Security Groups(NSG)は、Azureクラウド環境のセキュリティを確保するための基本的な構成要素だ。これは、仮想ファイアウォールのようなもので、Azureリソースとの間のネットワークトラフィックを制御する。
NSGは、セキュリティルールを含んでおり、送信元と宛先のIPアドレス、ポート番号、プロトコル(TCP、UDP、ICMP)、そしてトラフィックの方向(受信/送信)に基づいて、ネットワークトラフィックの許可または拒否を行う。
NSGの主な特徴として、まず、きめ細かい制御が挙げられる。サブネットまたはネットワークインターフェースレベルでトラフィックをフィルタリングし、異なるリソースに異なるルールを適用できる。これにより、カスタムセキュリティポリシーの作成が可能になる。
次に、デフォルトルールがある。すべてのNSGには、VNet内からの受信トラフィックの許可、Azure Load Balancerからの受信トラフィックの許可、その他のすべての受信トラフィックの拒否、インターネットへのすべての送信トラフィックの許可、という組み込みルールが設定されている。
さらに、ステートフルフィルタリング機能がある。確立された接続に対する応答トラフィックを自動的に許可するため、応答トラフィックのために個別のルールを作成する必要はない。
NSGを利用する際のベストプラクティスとして、最小権限の原則を適用することが重要になる。最初はすべてのトラフィックを拒否し、必要なもののみを許可するように設定する。定期的に監査を行い、不要なルールを削除する。また、可能な限り、IP範囲の代わりにサービス・タグを使用する。
サービス・タグとは、特定のAzureサービスを表す名前付きのIPアドレスグループのことだ。よく使われるサービス・タグには、Internet、VirtualNetwork、Storage、SQL、AzureLoadBalancerなどがある。
命名規則も重要だ。ルールには、Allow-HTTP-Inbound、Deny-SSH-Internet、Allow-DB-Subnetのように、わかりやすい名前を使用する。
一般的なユースケースとして、Webアプリケーションの保護がある。例えば、優先度100でインターネットからのHTTP(80)を許可、優先度110でインターネットからのHTTPS(443)を許可、優先度120で管理者サブネットからのみSSH(22)を許可、優先度130でその他のすべての受信トラフィックを拒否、といった設定が考えられる。
データベース層の保護では、優先度100でアプリケーションサブネットからのみSQL(1433)を許可、優先度110で管理者からの管理を許可、優先度120ですべてのインターネットアクセスを拒否する。
管理アクセスの制御では、優先度100で企業IP範囲からのRDP(3389)を許可、優先度110でジャンプボックスサブネットからのSSH(22)を許可、優先度120でその他のすべての管理プロトコルをブロックする。
NSGの高度な機能としては、Application Security Groups(ASG)がある。ASGを使用すると、VMをアプリケーションロールでグループ化し、ルール管理を簡素化し、ポリシーをより読みやすくすることができる。
また、フローログも重要な機能だ。フローログを使用すると、ネットワークトラフィックを監視および分析し、接続の問題をトラブルシューティングし、セキュリティの脅威を検出できる。
拡張セキュリティルールを使用すると、単一のルールで複数のIP範囲を使用したり、サービス・タグとIPアドレスを組み合わせたりすることができ、ルール定義の柔軟性が向上する。
NSGの監視とトラブルシューティングでは、ブロック/許可されたパケット数、セキュリティルールのヒット数、フローログ分析などの主要なメトリックを監視する。
一般的な問題としては、ルールの優先順位の競合、許可ルールが広すぎる、ステートレスプロトコルの応答トラフィックルールがない、などが挙げられる。
セキュリティを強化するためのヒントとして、定期的な監査を実施することが重要だ。四半期ごとにルールを確認し、未使用/古いルールを削除し、過度に寛容なアクセスがないか確認する。
また、ルールの目的を文書化し、変更ログを維持し、アーキテクチャ図を作成する。
変更を本番環境に適用する前に、開発環境でルールをテストし、Network Watcherを使用して検証し、変更後に監視する。
NSGはAzureセキュリティアーキテクチャの基本だ。最小権限の原則に基づいて適切に構成することで、運用上の柔軟性を維持しながら、クラウドリソースを強力に保護することができる。セキュリティは一度限りの設定ではなく、継続的なプロセスであることを忘れないようにする。