fail2banでアタックを検知したらSlackに通知させる
Pocket

前回、CentOS 7上でfail2banのインストール・設定を行ったが、アタックを検知して対象のIPアドレスをBANした際、メールではなくSlackに通知させることもできるようだ。
まず、事前にSlackのWebHookを作成しておく必要がある。

次に、actionとしてslackへのポストが行えるよう、設定ファイルを作成する。

●/etc/fail2ban/action.d/slack.conf

[Definition]
actionban = curl -X POST --data-urlencode 'payload={"channel": "#test", "username": "fail2ban", "text": "不正なアクセスが多発したため、フィルター「<name>」に基づき<ip>からのアクセスを<bantime>秒遮断します。", "icon_emoji": ":ghost:"}' https://hooks.slack.com/services/XXXXXXXX/XXXXXXXX/XXXXXXXX
Sponsored Links

次に、jail側でslack呼び出しをするようにactionの値を書き換えてやる。

●/etc/fail2ban/jail.d/jail.local

[apache-ddos]
enabled = true
port = http,https
filter = apache-ddos
logpath = %(apache_access_log)s
maxretry = 10
findtime = 5
bantime = 86400
action = %(action_mwl)s
         slack[name=%(__name__)s, bantime="%(bantime)s"]
destemail = user@domain.com

 

設定完了後、ログローテートを行ってからサービスの再起動を行う。

/usr/sbin/logrotate -f /etc/logrotate.conf
systemctl restart fail2ban

 

その後、問題のあるアクセスが発生しBANが発生すると、Slackに以下のような通知がされるようになる。

20161211_131356000000_

 

【参考】

 

Pocket

Written by blacknon

インフラ系のSE。一時期はプログラマ。 仮想化とオープンソースに興味あり。一日中寝てたい今日このごろ。 スペインとかで働きたいなぁ…(シエスタがあるので)

Leave a Comment

メールアドレスが公開されることはありません。