Help us understand the problem. What is going on with this article?

VulsのログをElasticSearchに取り込んで可視化する

More than 3 years have passed since last update.

この記事は、Vuls Advent Calendar 2016の4日目の記事です。

はじめに

前回はEXCELを使ってレポートを作成しましたが、システムの規模が大きいとVulsが出力するログの量も膨大になり、EXCELで処理することができません。
またVuls以外で管理している構成情報と組み合わせたり、ドリルダウンしながらインタラクティブに分析したい場合、ログデータの可視化ツールを使うと良いと思います。

今回は、ElasticSearchとKibanaを使ってVulsのログを可視化したいと思います。

Vuls JSON→ElasticSearchへBulkインサート

前回、「VulsのログをCSVにしてExcelで可視化する」にて使用したnode.jsのスクリプトを使います。

GitHub:https://github.com/usiusi360/vuls-log-converter

インストール方法はそちらを見てください。

ElasticSearchの準備

今回は時間短縮のためにAmazon Elasticsearch Serviceを使いました。作成時のパラメータは以下のような感じの最小構成で。

Elasticsearch version:2.3
Instance count:1
Instance type:t2.micro.elasticsearch
Storage type:EBS
EBS volume type:General Purpose(SSD)
EBS volume size:10GB
access policy:「Allow access to the domain from specific IP(s)」

ちなみに今回はIPアドレスによるフィルタだけです。
時間がなかったのでvuls-log-converterではIAM認証はしていません。その辺は今後気が向いたらってことで。

実行

「-i」でVulsが出力したJSONファイルが入っているフォルダを指定し、「-e」でElasticSearchのエンドポイントを指定します。入力元にフォルダを指定すると中に入っているJSONファイルを変換しつつ、ElasticSearchへ直接Bulk insertします。

$ node ./vuls-log-converter.js -t els -i /opt/vuls/results/current/ -e https://search-vuls-hogehoge.ap-northeast-1.es.amazonaws.com/

Kibana

  • ElasticSearchにデータをインポートできたら、kibanaでインデックスを指定します。

    • index name or pattern:vuls_index
    • Time-field name:ScannedAT image
  • 今回はやってませんが、インポート前にマッピング定義しておいた方が良いかも。CveIDがハイフンで分離されてしまうのでnot_analyzedにしておきます。
    image

  • あとはKibanaで好きなようにダッシュボードを作成します。
    image

さいごに

ElasticSearchにVulsのデータをインポートしてダッシュボードを作成することができました。ダッシュボードにすることでシステム全体の状態を一目で俯瞰することができるようになり、毎日のチェックが楽になるのでオススメです。

Vuls Advent Calendar 5日目はjkudoさんです。よろしくお願いします。

future
ITを武器とした課題解決型のコンサルティングサービスを提供します
http://future-architect.github.io/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away