#!/bin/bash
LOG1=/var/log/auth.log
LOG2=$HOME/.authlog
LOG3=$HOME/.smslog
FROMMAIL=ваша@почта.ru
TOMAIL=номер телефона@sms.megafondv.ru
SMTPSERVER=smtp.почта.ru
LOGIN=ваш логин
PASSWORD=ваш пароль
if [ -s $LOG1 ] ; then
if [ -s $LOG2 ] ; then
diff $LOG1 $LOG2|grep from |grep -v invalid|grep -v "Did not receive"|grep -v "Bad protocol"|grep ssh|sed -e 's/< //g'|sed -e 's/for //g;s/invalid //g;s/from //g;s/port //g;s/password //g;s/user //g'|awk '{print $3" "$6" "$7" "$8}' > $LOG3 && cp -f $LOG1 $LOG2
VAR1=`cat $LOG3`
if [ -n "$VAR1" ] ; then
sendEmail -f $FROMMAIL -t $TOMAIL -u "ssh login" -m `cat $LOG3` -s $SMTPSERVER -xu $LOGIN -xp $PASSWORD -v
rm -f $LOG3
fi
else
touch $LOG2
fi
fi
копируем файл лога auth.log в домашнюю директорию под именем .authlog
добавляем скрипт в cron и радуемся)
скрипт сравнивает разницу между логами, вырезая всё, что интересует, а именно - коннект по ссх. И если находится такая информация - шлётся смс, далее лог автоматически копируется с заменой. и ждем следующей проверки^^
Вот, кста, только что пришла смс =) выглядит вот так:
sanori-yuki@ya.ru
TEMA:ssh login
TEKCT:11:46:05 Failed root 121.188.34.7