AAtsushi's Blog

Azureでのログ収集

  • 概要
    • Azureでのログの種類とログ収集方法
      • リソースログ
        • 診断設定
      • アクティビティログ
      • Azure Active Directoryログ
      • 仮想マシンのログとデータ収集ルール
    • NSG 診断設定 vs フローログ

概要

Azureでの各リソースのログ収集方法について、体系的に理解できていなかったので、調べた内容をまとめておく。

Azureでのログの種類とログ収集方法

参考:Azure プラットフォーム ログの概要 - Azure Monitor | Microsoft Learn

もっとも重要なログは以下の3種類である。

範囲を広げると仮想マシンNSGのログも含まれる。

参考:Azure のセキュリティのログと監査 | Microsoft Learn

リソースログ

リソースログは各Azureリソースで取得できるログのこと。各リソースの使用状況などがわかる。

例えば、ストレージアカウントのリソースログには次のようなものがある。

参考:Azure Blob Storage の監視 - Azure Storage | Microsoft Learn

リソースログで取得できる項目はリソースによって異なる。例えば、Event Hubsでは以下のようなログを取得できる。

参考:Azure Event Hubs データの監視のリファレンス - Azure Event Hubs | Microsoft Learn

診断設定

PaaSリソースのリソースログは一般に診断設定を設定することで、Log Analytics ワークスペース、Event Hubs、Azure ストレージのいずれかにログを収集できる。

診断設定では、通常のログだけでなく、メトリックログも収集できる。ストレージアカウントの場合は、Transactionというメトリックが収集可能。

参考:Azure Storage Analytics のメトリック (クラシック) | Microsoft Learn

アクティビティログ

アクティビティログは、Azureリソースの作成・更新・削除などの操作を記録する。

いつ誰がリソースを作成(削除)したか、というのをログとして残しておくことができる。

セキュリティ要件としてリソースが作成された場合にアラートを通知したいという場合には、アクティビティログを利用する。

アクティビティログは、個別のリソースに対して収集設定できるが、サブスクリプション配下のリソースに対して一括して設定することもできる。

Azureポータルで一括設定をする場合は、Azure モニターのアクティビティログ⇒アクティビティログのエクスポートから設定する。

Azure Active Directoryログ

実質的にはAzure ADのリソースログに過ぎない。誰がいつアクセスしたか示すサインインログや、どういった管理作業を管理者がおこなったかを示す監査ログを収集できる。

Azure ADで収集しているサインインログ、監査ログをLogAnalytics、ストレージアカウント、Event Hubsに転送できる。

仮想マシンのログとデータ収集ルール

仮想マシンのリソースログは、仮想マシンAzure Monitorエージェントをインストールし、データ収集ルールを設定することで収集することができる。

収集できるログには次の種類がある。

  • Windows イベント ログ
  • Linux Syslog
  • パフォーマンスカウンター
  • カスタム テキスト ログ
  • IIS のログ

Windows イベント ログはWindows VMで出力しているイベントログを収集する。

Linux SyslogはLinux VMがSyslogに出力しているログを収集する。

パフォーマンスカウンターは、CPU、メモリ、ディスク、ネットワークのメトリックログを収集する。例えば、CPUやディスクの使用率のログを収集する。

代表的なカウンターとして、CPU、メモリ、ディスク使用率に関するカウンターをあげておく。

カスタム テキスト ログは、VM上で任意のファイルに出力したログを収集する。

LogAnalyticsにログを収集する場合は、事前にLogAnalyticsワークスペース上にテーブルを作成しておく必要がある。

参考:Azure Monitor エージェントを使用してテキスト ログを収集する - Azure Monitor | Microsoft Learn

NSG 診断設定 vs フローログ

NSGについては、診断設定による収集とNetwork WatcherによるNSGフローログを収集できる。

NSGフローログにはバージョン1/2があり、バージョン2では、フロー状態という概念が導入されており、転送するバイトとパケットに関する情報が保存される。

ネットワーク セキュリティ グループの診断リソース ログ - Azure Virtual Network | Microsoft Learn

NSG フロー ログ - Azure Network Watcher | Microsoft Learn

以上