次の方法で共有


チュートリアル: Azure Monitor エージェントを使用して、Microsoft Sentinel を含む Log Analytics ワークスペースに Syslog データを転送する

このチュートリアルでは、Azure Monitor エージェントを使用して Syslog データをワークスペースに転送するように Linux 仮想マシン (VM) を構成します。 これらの手順では、ファイアウォール ネットワーク デバイスなどのエージェントをインストールできない Linux ベースのデバイスからデータを収集および監視できます。

Note

Container Insights では、AKS クラスター内の Linux ノードからの Syslog イベントの自動収集をサポートするようになりました。 詳細については、「Container Insights を使用した Syslog 収集」を参照してください。

Linux VM にデータを送信するように Linux ベースのデバイスを構成します。 VM 上の Azure Monitor エージェントは、Syslog データを Log Analytics ワークスペースに転送します。 次に、Microsoft Sentinel または Azure Monitor を使用して、Log Analytics ワークスペースへの格納データからデバイスを監視します。

このチュートリアルでは、以下の内容を学習します。

  • データ収集ルールを作成する。
  • Azure Monitor エージェントが実行されていることを確認します。
  • ポート 514 でのログ受信を有効にします。
  • Syslog データが Log Analytics ワークスペースに転送されていることを確認します。

前提条件

このチュートリアルの手順を完了するには、次のリソースとロールが必要です。

Syslog データを収集するように Azure Monitor エージェントを構成する

Azure Monitor エージェントを使用して Syslog イベントを収集する」の詳細な手順を参照してください。

Azure Monitor エージェントが実行されていることを確認する

Microsoft Sentinel または Azure Monitor で、Azure Monitor エージェントが VM 上で実行されていることを確認します。

  1. Azure portal で、Microsoft Sentinel または Azure Monitor を検索して開きます。

  2. Microsoft Sentinel を使用している場合は、適切なワークスペースを選択します。

  3. [全般] で、[ログ] を選択します。

  4. [新しいクエリ] タブを表示させるために [クエリ] ページを閉じます。

  5. computer 値を Linux 仮想マシンの名前で置き換えて次のクエリを実行します。

    Heartbeat
    | where Computer == "vm-linux"
    | take 10
    

ポート 514 でログ受信を有効にする

ログ データを収集している VM で、Syslog ソースに応じてポート 514 TCP または UDP での受信が許可されていることを確認します。 次に、デバイスからの Syslog メッセージをリッスンするように、VM 上の組み込みの Linux Syslog デーモンを構成します。 これらの手順を完了したら、ログを VM に送信するように Linux ベースのデバイスを構成します。

Note

ファイアウォールが実行されている場合は、リモート システムがデーモンの syslog リスナーに到達できるように規則を作成する必要があります: systemctl status firewalld.service

  1. tcp 514 用に追加する (お使いのゾーン/ポート/プロトコルは、シナリオによって異なる場合があります) firewall-cmd --zone=public --add-port=514/tcp --permanent
  2. udp 514 用に追加する (ゾーン/ポート/プロトコルは、シナリオによって異なる場合があります) firewall-cmd --zone=public --add-port=514/udp --permanent
  3. ファイアウォール サービスを再起動して、新しい規則を確実に有効にする systemctl restart firewalld.service

次の 2 つのセクションでは、Azure VM の受信ポート規則を追加し、組み込みの Linux Syslog デーモンを構成する方法をカバーします。

VM で Syslog の受信トラフィックを許可する

Syslog データを Azure VM に転送する場合は、次の手順に従ってポート 514 での受信を許可します。

  1. Azure portal で、仮想マシンを検索して選択します。

  2. VM を選択します。

  3. [設定] で、 [ネットワーク] を選択します。

  4. [受信ポートの規則を追加する] を選択します。

  5. 次の値を入力します。

    フィールド
    宛先ポート範囲 514
    プロトコル Syslog ソースに応じた TCP または UDP
    アクション Allow
    名前 AllowSyslogInbound

    残りのフィールドについては既定値をそのまま使用します。

  6. [追加] を選択します。

Linux Syslog デーモンを構成する

Linux VM に接続し、Linux Syslog デーモンを構成します。 たとえば、ネットワーク環境の必要に合わせて次のコマンドを調整し、実行します。

sudo wget -O Forwarder_AMA_installer.py https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/DataConnectors/Syslog/Forwarder_AMA_installer.py&&sudo python3 Forwarder_AMA_installer.py

このスクリプトは、rsyslog.d と syslog-ng の両方に変更を加えることができます。

Note

エージェントが機能できないディスクがいっぱいになるシナリオを回避するため、不要なログを格納しないように syslog-ng または rsyslog の構成を設定することをお勧めします。 ディスクがいっぱいになるシナリオでは、インストールされている Azure Monitor エージェントの機能が妨害されます。 rsyslog または syslog-ng の詳細をご確認ください。

Syslog データが Log Analytics ワークスペースに転送されていることを確認する

ログを VM に送信するように Linux ベースのデバイスを構成したら、Azure Monitor エージェントが Syslog データをワークスペースに転送していることを確認します。

  1. Azure portal で、Microsoft Sentinel または Azure Monitor を検索して開きます。

  2. Microsoft Sentinel を使用している場合は、適切なワークスペースを選択します。

  3. [全般] で、[ログ] を選択します。

  4. [新しいクエリ] タブを表示させるために [クエリ] ページを閉じます。

  5. computer 値を Linux 仮想マシンの名前で置き換えて次のクエリを実行します。

    Syslog
    | where Computer == "vm-linux"
    | summarize by HostName
    

リソースをクリーンアップする

作成した VM などのリソースが必要かどうかを評価します。 リソースを実行したままにすると、コストが発生する可能性があります。 必要のないリソースを個別に削除します。 または、リソース グループを削除して、作成したすべてのリソースを削除することもできます。