我正在测试我正在组建的新服务的一些功能。我已设置了由 Postfix 提供支持的邮件服务。我使用的是 Ubuntu Linux Natty (11.04)
我正在尝试找到一种方法来检测何时使用 PHP mail() 函数发送垃圾邮件。我了解到用户可能会上传一些脚本,这些脚本会打开以后可能被利用的漏洞。当用户尝试使用 mail() 函数向多个帐户(数千个)发送邮件时,这种情况也可能发生,从而导致服务器速度变慢。
我可以使用 Ubuntu 上的哪些命令行工具来:
- 检测此滥用行为
- 隔离执行此操作的用户帐户
- 关闭活动
只是寻找一些我可以阅读的指针。
提前致谢。
答案1
我想你已经有某种方法来判断哪些邮件是由哪些用户或哪些脚本发送的。如果没有,这将是你要做的第一件事。看看维普资讯和 smtp-id。
每个用户/脚本的原始数字是判断垃圾邮件的一个很好的指标。我对垃圾邮件发送者的经验是,他们不会试图隐藏,他们只是试图在被发现之前尽可能多地发送电子邮件。
在 Cacti、munin 或 Zabbix 之类的软件中绘制这些数字的图表非常有用。
我还会安装 Spamassassin 并通过它运行出站邮件。高数量和高垃圾邮件分数的组合绝对值得研究。
一旦检测到滥用行为,就立即停止。 chmod 000
该脚本将被用来mailq
终止postsuper -d
邮件队列中所有邮件。