Edited at

td-agentを使ってauth.logのInvalidログをslackに投げる

More than 1 year has passed since last update.


はじめに

やりたいことは、td-agentを使ってauth.logのInvalidログをslackに投げる、です。

ようするにsshできた、怪しいやつを監視したい!


実行環境

Ubuntu 16.04.2 LTS


必要なものをinstallする

curl -L https://toolbelt.treasuredata.com/sh/install-ubuntu-xenial-td-agent2.sh | sh 

sudo /usr/sbin/td-agent-gem install fluent-plugin-slack
sudo /usr/sbin/td-agent-gem install fluent-plugin-rewrite-tag-filter


td-agent.contを書く


/etc/td-agent/td-agent.conf

<source>

@type tail
path /var/log/auth.log
tag auth.raw
format /^(?<message>.*)$/
</source>

<match auth.raw>
@type rewrite_tag_filter
rewriterule1 message ^.*Invalid.*$ auth.access
</match>

<match auth.access>
@type slack
webhook_url https://hooks.slack.com/services/xxxx/xxxx
channel hope
username hoge
icon_emoji :ghost:
flush_interval 10s
message_keys message
message "%s"
</match>



権限をよしなにする


/etc/init.d/td-agent

TD_AGENT_USER=root

TD_AGENT_GROUP=root

/etc/init.d/td-agentの実行ユーザーを変えなければならないのがわからず、/var/log/auth.logを666で試して行けたんだけど、権限ダメだよなーどうやって変えるんだろう、って思ってちょっとハマった.


restart

sudo systemctl daemon-reload

sudo systemctl restart td-agent


終わり

これは ネットワークシステム特別講義2の授業で+αの項目で扱いました。

今の現場もそうでしたが、実際のプロジェクトだとこういうのはすでに使われていて、自分で一からやる機会はほぼないので、権限周りでハマったりなどはわりと学びがありました:ok_woman: