我在桌面上使用snort,我希望在触发规则时看到一个弹出窗口。我在local.rules写了自己的规则。我不使用任何电子邮件系统,所以请忽略邮件选项。日志位于/ var / log / snort / alerts文件中。有没有办法成功。当一个警报被写入这个文件我想看到一个图形warn.i试图编写一个bash脚本来检查警报文件,当哈希值发生变化时,弹出最后10行与notify-send但我不能&#39那个......请你能帮帮我吗? 此致
答案 0 :(得分:0)
我认为您可以执行以下操作:
#!/bin/sh
#Get current line count
LINES=`wc -l /var/log/snort/alerts | tr -d -c 0-9`
while [ true ]
do
NEWCOUNT=`wc -l /var/log/snort/alerts | tr -d -c 0-9` #Get new line count
if [ $LINES != $NEWCOUNT ]
then
DIFF=`expr $NEWCOUNT - $LINES` #Get the difference
LINES=$NEWCOUNT #Set the line count to the new count
COMMAND="$(tail -n "$DIFF" alert)" #Get the output of the new lines in the file
echo "$(notify-send "$DIFF new alerts: $COMMAND")"
sleep 5 #sleep 5 seconds
fi
done
这将每5秒检查一次新警报,如果你想让它经常检查你可以移除睡眠,但你可能想要使用秒或其他东西。我不是bash的专家,所以你可以做一些清理工作。 一个问题是,如果有多个新警报,那么notify-send会将警报放在一行,我无法找到解决方法,但您可以进行一些修改,或者您可以删除第二部分只是让警报告诉你有新的警报,甚至不显示它们。