我正在编写一个脚本来监视我的服务器上的攻击和探测。 但是,我主要只是grep / var / log /消息有趣的信息。 我在哪里看?
除了Fail2Ban看看DenyHosts 。 他们的工作方式稍有不同,所以你的环境比其他人更适合。 我使用的两个最轻的日志监视工具是LogWatch和logsentry 。
现在LogWatch是一个相当标准的工具。 它通常每晚都运行,通过一堆日志parsing,并发送一个日常活动的好报告。 像用户login,sudo命令,磁盘利用率,以及一般奇怪的日志消息。 根据我的经验,这个工具几乎从来没有调整过,默认configuration提供了足够好的结果。
Logsentry (以前的logcheck)运行更频繁,通常是每小时一次,严格来说是一个日志消息parsing器。 它包含一个正常消息的白名单,并假设其他任何东西都不好。 那些不好的信息就会被编译在一起并通过电子邮件发送出去 这个工具可能需要相当多的调整。 您必须确保它既监控您想要的所有日志文件,也确保它知道您环境中的正常情况。
两者都是很好的工具,而且两者运行不一定是多余的。 在过去,我曾经使用LogWatch来给我一个关于系统状态的好的总结,logsentry让我知道什么时候发生了什么事情。
Snort是一个轻量级的networking入侵检测系统。 它监视networkingstream量,并根据用户定义的规则集对其进行分析。
Fail2ban扫描日志文件。 它支持SSH,HTTP,VOIP,MTA和用户定义规则。
我使用日志丢弃策略将Shorewall作为防火墙运行。 我使用dshield日志parsing器将端口探测报告给dshield.org,并将其复制到日志文件中。 日志logging工具还会每小时扫描一次我的日志,并报告任何有趣的数据。
我发现端口扫描现在不是经常这样做的。 这可能是使用像fail2ban这样的工具使得端口扫描不再有吸引力了。