Article ID No. 12645246750 (Delete) | New Date & Time 2008 2009 2010 2011 2012 /1 2 3 4 5 6 7 8 9 10 11 12 /1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 :0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 :0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 Category Title Content 今月(ローテート設定によって変わる)の RADIUS 認証通過者ランキングを、毎日 logwatch してみる。完璧にお遊びです(が、考えようによってはセキュリティ + 利用状況把握と言えなくもない)。freeradius-1.1.3-1.5.el5_4 + logwatch-7.3-6.el5 on CentOS 5.4 にて。なお、いつも通りの copy & paste configuration です :-) <hr><pre>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_</pre><hr> 出力例はこんな感じ。言うまでもないかもしれませんが、ユーザ名の前に書かれた数字は回数を表します。 <hr><pre> --------------------- 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 ------------------------- </pre><hr> ちょろっと探した感じでは、FreeRADIUS 向けの Logwatch スクリプトの決定版はなさそうですね。 Password