Auditbeat + BigQuery + tableau で監査ログを視覚化する


概要

Auditbeat 試しのついでに BigQuery に流して tableau で視覚化してみた。

ElasticStack 版はこちら

環境

  • Google Cloud Platform
  • CentOS 7
  • auditbeat-6.0.0-rc1
  • google-fluentd

やること

Auditbeat -> Stackdriver Logging -> bigquery にエクスポート -> tableau で見る

インストール

google-fluentd

# curl -sSO https://dl.google.com/cloudagents/install-logging-agent.sh
# bash install-logging-agent.sh

Auditbeat

# yum -y install https://artifacts.elastic.co/downloads/beats/auditbeat/auditbeat-6.0.0-rc1-x86_64.rpm

設定

google-fluentd

fluent-plugin-beats インストール

# /opt/google-fluentd/embedded/bin/fluent-gem install fluent-plugin-beats --no-document

beats input 設定

# vi /etc/google-fluentd/config.d/beats.conf
<source>
  @type beats
  tag beats.event
</source>

Auditbeat
システムコールの監査記録も取得するようにする。
fluentd に投げるようにする。

# vi /etc/auditbeat/auditbeat.yml

- module: audit
  metricsets: [kernel]
  kernel.audit_rules: |
    -a always,exit -S execve

#output.elasticsearch:
  #hosts: ["localhost:9200"]

output.logstash:
  hosts: ["localhost:5044"]

起動

各種起動する。

# systemctl stop auditd  ※
# /etc/init.d/google-fluentd restart
# /etc/init.d/auditbeat start

※CentOS 7 の場合は、auditbeat と競合するので停止する

BigQuery にエクスポート

以下でフィルタ

resource.type="gce_instance"
logName="projects/<project name>/logs/beats.event"

エクスポート作成より、BigQueryデータセット作成して選択

BigQuery 側で確認

tableau ダッシュボード作成

Kibana のダッシュボードっぽいのを作ってみる

※データソース設定の際は 'レガシーSQLの使用' にチェック入れないとエラーになった