今天发现Qmail邮件系统的maillog里面有大量的“user not found”信息,通过下面的日志不难发现,是来自同一IP的很多不同的用户连接Qmail邮件系统认证失败的信息。黑客试图通过这种方式来破解Qmail邮件系统的用户名和密码,从而来发送大量的垃圾邮件和病毒邮件。
大量的并发连接会消耗Qmail系统的性能,甚至在严重的时候会造成正常邮件无法发送和接收,即出现连接SMTP超时情况。通过Linux的Iptables封杀掉这些IP地址即可,下面是我写的Iptables的脚本,如有错误,请多多指正。
脚本的逻辑结构大致是:分析统计系统maillog日志,取出攻击者的IP地址,然后和服务器的Iptables脚本(iptables.sh)作对比,如果该IP地址没有在iptables.sh里面,添加一条DROP的策略到iptables.sh,然后发送一份邮件给系统管理员,并重新加载iptables.sh。
下面测试一下这个脚本的运行效果,手动执行一下这个脚本。
[root@mail sh]# sh add_badip_iptables.sh
查看一下badip.txt文件,里面添加的是被攻的IP地址信息。
查看系统管理员的邮箱里面也成果收到用户的报警邮件。
时间: 2024-08-29 08:24:50