4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Splunk Advent Calendar 2019Advent Calendar 2019

Day 10

slackからphantomのplaybookを実行して、できるだけ忘年会を楽しむ

Last updated at Posted at 2019-12-09

この記事はSplunk Advent Calendar 2019、10日目の記事です。

はじめに

saeoshiです。今回はちょっとネタに走る記事で恐縮ですが、どうぞよろしくお願いします。

12月に入り、みなさん忘年会のシーズンですね。毎日忘年をし続けている方もいらっしゃるのでは
ないでしょうか。
さてさて年を忘れて、うまい酒と飯を食ってる時に限って、奴はやってくるのです。

Ω「そうです。私がアラートです」
Ω「呼んだ?」

Aさん「PC開くのメンドクセ〜」
Bさん「電車の中でPCひらけない・・・」

Phantom「そんなあなたに朗報です。slackからplaybookを呼び出して実行しちゃいましょう」
A・B「な・・・なんだって・・・・」

gazou_0471.jpg

#そもそもPhamtomって?
https://www.splunk.com/en_us/software/phantom.html

セキュリティ運用でのタスクの自動化と他製品と連携することによって運用の自動化を実現する製品です。
Security Orchestration and Automated Responseと呼ばれる新しいカテゴリの製品ですね。

セキュリティだけじゃなくて、IT運用でも全然使えるんだよね

例えばメールに含まれるIOCからIPアドレスをチェックして、Firewallルールの更新とか、ipのreputationの処理を行うみたいなことが簡単に実現できます。GUIを使って、処理をつなげていく感じでできるんだなぁ。

playbookのイメージはこんな感じ。

Screen Shot 2019-12-09 at 5.50.43 AM.jpg

あと、この個別の処理はAppと呼ばれる単位でいろんな製品で使えるコマンドがまとまってるんだよね。
AWSだとinstanceの起動・停止、autoscalingグループへのattachとかが簡単にできるようになってる。

Screen Shot 2019-12-09 at 5.52.43 AM.jpg

CiscoのASAだとipのblockとかvpnのsessiobn terminateとかできるんだよね。

Screen Shot 2019-12-09 at 5.53.03 AM.jpg

こんなのがいっぱいある。

Build Phantom Instance

さてさて、前置きは一旦おわりで、まずは、Market PlaceからAMIを使ってサクッと立ち上げましょう。

Screen Shot 2019-12-09 at 5.43.25 AM.jpg

起動すると、playbookやら、appやらいろいろインストールされるので、少々待ちましょう。
ログインは下記でOK(IDPASSはデフォルトはadmin/INSTANCEIDです)

Screen Shot 2019-12-09 at 5.59.35 AM.jpg

##SlackのAppとslack botの設定をする
ログイン後、DropdownメニューからAppを選択して、Slackを検索すると、Unconfigure appの箇所に出てくるので
New Configure Assetsを選択して、設定をするんだけど、公式ドキュメントに沿ってやるのが良き。

流れとしては

  1. SlackのApps作成
  2. Bot Userの追加
  3. Phantomでslack appのインストール
  4. Phantomでユーザ2つ作成
  5. Slack側にphatomのPost URLを設定

って感じです。

Slack側からPhantomを呼びだす

設定がうまくいくと、こんな感じでbotを呼び出せます。

@phantom_apps get_container
Screen Shot 2019-12-09 at 6.11.08 AM.jpg

ちなみに、phantomはsplunkのsavedsearchとか、どこぞからのrestをeventとしてこんな感じに記録できるようになっています。

Screen Shot 2019-12-09 at 6.19.34 AM.jpg

イベントにドリルダウンすると、こんな感じで誰がいつどんなplaybookを実行したかの確認ができます。

Screen Shot 2019-12-09 at 6.17.16 AM.jpg

イベントのリストを取ってみる

tagがslacktestで設定されてるイベントをとります。

@phantom_apps get_container --tag slacktest
Screen Shot 2019-12-09 at 6.21.51 AM.jpg

###対象のイベントに対してPlaybookを実行する!
Event(ContainterID) 2095に対して、サンプルのplyabookを実行してみる!

@phantom_apps run_playbook --repo local advent_sample_playbook 2095 
Screen Shot 2019-12-09 at 6.32.12 AM.jpg Screen Shot 2019-12-09 at 6.32.24 AM.jpg

##おわりに
ざざっと書いちゃいましたが、playbookは自社のapiとも連携できるとの、自分で書いたpythonコードも埋め込めるので、障害対応用に毎回おこなう処理をplaybook化してあげると、飲みの席にいつつ、一旦slackから呼び出したphantomで一時切り分けとか、障害対応もできると思います!

今年もお疲れ様でした!

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?