fatsheep's memo.txt

気になったこと、試したこと、その他もろもろを書いていきます。

OSSのSOAR『Shuffle』 ~導入~

f:id:fatsheep:20200614161755p:plain

つい先日、OSSのSOAR*1でShuffleというのが登場した、というのを知り、さっそく触ってみました。

medium.com

SOARについては以前Splunk Phantomを少し触ったことがありますが、今回はOSSのSOARということで、所謂製品版との違いや、どのような活用方法が考えられるかなど確かめてみたいなと思い触り始めました。

参考: www.splunk.com

何回かに分けて試してみたこと、感じたことを書いていこうと思います。

導入方法

導入についてですが、お試しで利用する場合はとても簡単で、Githubに公開されているdocker-compose.ymlを持ってきて実行するだけです。
ただ今回はSplunkとの連携も行ってみたいと考えており、少しカスタマイズし導入します。

事前準備

今回、Dockerを動かす環境はCentOS7を利用しました。
Minimalでインストールし、IP設定、yum update、SELinux無効化などを事前に行っておきます。

Docker、Docker-Composeの導入

Dockerを導入します。

yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce docker-ce-cli containerd.io
systemctl start docker
systemctl enable docker

参考: qiita.com

Docker-Composeを導入します。

curl -L "https://github.com/docker/compose/releases/download/1.26.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

参考: docs.docker.com

gitの導入

gitコマンドを使えるようにします。

yum install git

Shuffle導入

導入方法

こちらを参考にShuffleを導入します。 https://github.com/frikky/shuffle/blob/master/install-guide.mdgithub.com

git clone https://github.com/frikky/Shuffle
cd Shuffle

公式のページではDocker Composeで起動していますが、Splunkと連携させたかったため、DockerのSplunkを利用するようdocker-compose.ymlを修正します。
具体的にはdocker-compose.ymlファイルのservice定義の中に以下を追記します。

  splunk:
    hostname: shuffle-splunk
    image: splunk/splunk:latest
    environment:
      SPLUNK_START_ARGS: --accept-license
      SPLUNK_ENABLE_LISTEN: 9997
      SPLUNK_PASSWORD: password
    ports:
      - "18000:8000"
      - "9997:9997"
    networks:
      - shuffle

最後にDocker Composeで起動します。

docker-compose up -d

docker psコマンドで状態を確認し、すべてのコンテナが起動したことを確認します。
(Splunkのみ、1分ほど時間がかかります。状態がhealtyになっていることを確認します。)

docker ps
CONTAINER ID    IMAGE                     COMMAND                  CREATED              STATUS
bdc1fbbebaab    frikky/shuffle:frontend   "nginx -g 'daemon of…"   About a minute ago   Up 59 seconds
3e55ef72e353    frikky/shuffle:backend    "./webapp"               About a minute ago   Up About a minute
4c88428bbea7    frikky/shuffle:orborus    "./orborus"              About a minute ago   Up About a minute
bfb8f128f663    splunk/splunk:latest      "/sbin/entrypoint.sh…"   About a minute ago   Up About a minute (healthy)
35515f41623a    frikky/shuffle:database   "gcloud beta emulato…"   About a minute ago   Up About a minute

起動確認

以下にアクセスし、shuffleにアクセスできることを確認します。
(初回アクセス時は管理者アカウント作成を促されますので、適宜作成します。)
http://[docker host]:3001/

f:id:fatsheep:20200614160110p:plain

また、以下にもアクセスし、Splunkにアクセスできることを確認します。
(admin/passwordでログインできます。)
http://[docker host]:18000/

f:id:fatsheep:20200614160125p:plain

以上で導入は完了です。
次回以降の記事では、Workflow作成、Splunkとの連携も行ってみたいと思います。