Category:
Linux
今月(ローテート設定によって変わる)の RADIUS 認証通過者ランキングを、毎日 logwatch してみる。完璧にお遊びです(が、考えようによってはセキュリティ + 利用状況把握と言えなくもない)。freeradius-1.1.3-1.5.el5_4 + logwatch-7.3-6.el5 on CentOS 5.4 にて。なお、いつも通りの copy & paste configuration です :-)
出力例はこんな感じ。言うまでもないかもしれませんが、ユーザ名の前に書かれた数字は回数を表します。
ちょろっと探した感じでは、FreeRADIUS 向けの Logwatch スクリプトの決定版はなさそうですね。
cat << '_EOF_' > /etc/logwatch/conf/services/radiusd.conf
Title = "FreeRADIUS Auth Ranking"
LogFile = radius
_EOF_
cat << '_EOF_' > /etc/logwatch/conf/logfiles/radius.conf
LogFile = radius/radius.log
Archive = radius/radius.log.*.gz
_EOF_
cd /etc/logwatch/scripts
mkdir logfiles services shared
touch /etc/logwatch/scripts/services/radiusd
chmod +x /etc/logwatch/scripts/services/radiusd
cat << '_EOF_' > /etc/logwatch/scripts/services/radiusd
#! /bin/sh
grep "Auth: Login OK:" | awk '{print $10}' | sort | uniq -c | sort -nr | head -n 10
_EOF_
出力例はこんな感じ。言うまでもないかもしれませんが、ユーザ名の前に書かれた数字は回数を表します。
--------------------- FreeRADIUS Auth Ranking Begin ------------------------
14 [user01]
12 [user02]
7 [user03]
6 [user04]
6 [user05]
5 [user06]
4 [user07]
4 [user08]
3 [user09]
2 [user10]
---------------------- FreeRADIUS Auth Ranking End -------------------------
ちょろっと探した感じでは、FreeRADIUS 向けの Logwatch スクリプトの決定版はなさそうですね。