尽管关闭了开放中继,Postfix 仍尝试发送垃圾邮件

尽管关闭了开放中继,Postfix 仍尝试发送垃圾邮件

我家里有一台小型服务器,安装了 postfix。它的唯一用途是返回 cronjobs 的结果,并为其他几个脚本向外部发送电子邮件。我将 ISP 的邮件服务器用作中继主机。最近我注意到邮件服务器充当了开放中继。我通过关闭路由器上的传入端口 25 并重新配置 postfix 以仅接受来自服务器的传出邮件解决了该问题。我已经从 LAN 外部使用 nmap 进行了检查,并尝试了各种开放中继工具,一切似乎都很好。

问题是我仍然收到试图发送的邮件。我已暂时将中继主机设置为 127.0.0.3(不存在)以停止发送邮件,并在服务器上设置了 iptable 防火墙规则以阻止出站端口 25,因此实际上没有邮件发出。

我认为队列可能仍然满了,所以我这样做了:

sudo postsuper -d ALL deferred
sudo postsuper -d ALL

但邮件不断涌来,其中包含以下日志消息:

12 月 1 日 12:04:56 服务器 postfix/pickup[3267]: E18411FA4: uid=33 from=
12 月 1 日 12:04:56 服务器 postfix/cleanup[3274]: E18411FA4: message-id=<20111201120456.E18411FA4@server>
12 月 1 日 12:04:56 服务器 postfix/qmgr[3268]: E18411FA4: from=、size=15619、nrcpt=1(队列处于活动状态)
12 月 1 日 12:04:57 服务器 postfix/error[3304]: E18411FA4: to=、relay=none、delay=0.17、delays=0.1/0/0/0.08、dsn=4.4.1、status=deferred(暂时递送暂停:连接到 127.0.0.3[127.0.0.3]:25:连接超时)

我的问题是:

  1. 如何确定收到的邮件来自哪里?即服务器上的哪个程序或来自哪个其他 IP 地址。
  2. 我还可以用什么其他方法调试这个问题?
  3. 您认为我已经被黑客攻击并且我的服务器已被攻陷吗?

答案1

uid 33 在 Debian 中是默认的www-data,由 Apache 使用。您是否碰巧在其中运行 Web 服务器和一些 PHP 应用程序?也许有一个邮件表单或其他可用于发送垃圾邮件的东西?如果是这种情况,请查看 Apache 访问日志中的客户端 IP,尽管您可能正在受到随机僵尸网络的攻击,因此阻止单个 IP 不会有帮助。

您不一定被黑客入侵或入侵,最有可能的只是一个易受攻击的 PHP 脚本,可用于发送垃圾邮件。当然,最好谨慎行事,仔细检查所有角落,看看是否有其他可疑活动,但这仅是我的猜测。

更新、删除或限制对该 Web 应用程序的访问应该可以解决您的问题。您可能还想看看mod_security,尽管对于简单使用来说它可能太重了。

答案2

Dec  1 12:04:56 server postfix/pickup[3267]: E18411FA4: uid=33 from=<[email protected]>

这是本地提交,即由 postfix 机器上的帐户提交。
其 UID 为 33;查阅 /etc/passwd 以找出这是哪个帐户。

您可以通过配置来控制本地提交授权提交用户在 main.cf 中。

除了显而易见的事情(断开机器与互联网的连接,对日志和 tmp 目录进行快照,然后进行离线调查)之外,您还同时处理了太多变量 - 例如,关闭路由器上的端口 25 和禁用 postfix 中的端口 25 提交是不必要的,而且只会让您以后感到困惑。

尝试限制自己一次只进行一项更改,彻底测试它,然后撤消它并尝试另一个更改。

相关内容