我是服务器的所有者,我的一个帐户遇到了垃圾邮件问题。
垃圾邮件发送者不断从我的一个域名发送大量来自虚假的不存在的地址的邮件。[电子邮件保护],[电子邮件保护], 完后还有[电子邮件保护]。
其中 troubledomain.com 是我的“麻烦”域名。
- CentOS 6.6 最终版(yum 已更新)
- 更新服务器上安装的所有 Wordpress,包括所有插件
- 更改 ftp 密码
- 删除整个(垃圾邮件)帐户并创建一个新帐户(不同的名字)
- 将最大电子邮件数量设置为 1
我用 Google 搜索了好几天,尝试了各种方法,但服务器的 IP 仍然被 spamhouse 列入黑名单,而且我每天都会收到来自 DirectAdmin 的电子邮件“警告:(用户) 刚刚发送了 1 封电子邮件”。
mail_queue 的一部分:
ID Time Size Sender Frozen Recipient(s) Select
1Ye8vP-0008OH-0t 0m 2.1K <> yes [email protected]
1Ye8vP-0008OM-6H 0m 1.9K <> yes [email protected]
1Ye8va-0008Ob-UA 0m 746 <[email protected]> no [email protected]
Exim_Mainlog 的一部分
2015-04-03 23:51:59 1Ye9VP-0004ur-QI <= <> R=1Ye9VO-0004tD-Jd U=mail P=local S=2120 T="Mail delivery failed: returning message to sender" from <> for [email protected]
2015-04-03 23:51:59 1Ye9VO-0004t2-8N Completed
2015-04-03 23:51:59 1Ye9VP-0004us-QI ** [email protected] F=<> R=virtual_aliases:
2015-04-03 23:51:59 1Ye9VP-0004us-QI Frozen (delivery error message)
2015-04-03 23:51:59 1Ye9VP-0004ur-QI ** [email protected] F=<> R=virtual_aliases:
2015-04-03 23:51:59 1Ye9VP-0004ur-QI Frozen (delivery error message)
这真的让我抓狂。我以为当我删除 DirectAdmin 上的整个帐户并创建一个新帐户,更改所有密码时,它就会被清除,但它又在同一个帐户上启动了。
我安装了 Maldet 并扫描了整个服务器(有时它会发现一些东西并清理它。这是最后的日志:
TOTAL FILES: 436208
TOTAL HITS: 2
TOTAL CLEANED: 1
CLEANED & RESTORED FILES:
/maldetect-1.4.2/files/clean/gzbase64.inject.unclassed
FILE HIT LIST:
{HEX}gzbase64.inject.unclassed.15 : /maldetect-1.4.2/files/clean/gzbase64.inject.unclassed => /usr/local/maldetect/quarantine/gzbase64.inject.unclassed.19892
{CAV}Php.Malware.Mailbot-1 : /home/USER/domains/troubledomain.com/public_html/wp-content/uploads/2016/04/functions.php => /usr/local/maldetect/quarantine/functions.php.5294
我真的不明白为什么它会清除 2 次命中中的 1 次,以及如何处理它们以及如何防止这种情况。如果我明天再进行一次搜索,它会在 Wordpress 文件夹中找到另一个文件,即使它被清除了,垃圾邮件仍会被发送。
再说一次,我不是最好的管理员,但我愿意/乐于学习。
注意:如果您需要任何信息,请告诉我如何获取,这样我会更快地回复
更新:
当又一次垃圾邮件会话正在进行时,我发现了这一点:
[root@SERVERNAME virtual]# lsof -i | grep smtp
exim 1503 mail 3u IPv6 3247 0t0 TCP *:smtp (LISTEN)
exim 1503 mail 4u IPv4 3248 0t0 TCP *:smtp (LISTEN)
exim 13999 mail 7u IPv4 39633 0t0 TCP SERVERNAME:40610->mta-v2.mail.vip.gq1.yahoo.com:smtp (ESTABLISHED)
exim 14140 mail 9u IPv4 40073 0t0 TCP SERVERNAME:56045->mx2.free.fr:smtp (SYN_SENT)
有人可以分享一些如何阻止这种邪恶行为的想法吗?
更新 #2
我做了一些进一步的挖掘,发现它从我的本地机器(来自 eximstats 主日志)发送所有垃圾邮件:
Top 50 rejected ips by message count
------------------------------------
Messages Rejected ip
1222 local
另外,当我检查更多最高电子邮件使用率时:
Highest Value Count Percent
Sender [email protected] 473 3
Authentication 0 0
Sending Host 0 0
Sending Script 0 0
当我检查其中一封垃圾邮件的标题时,看到以下内容:
1YfY3p-0004GS-3R-H
mail 8 12
<>
1428430637 0
-ident mail
-received_protocol local
-body_linecount 29
-max_received_linelength 150
-allow_unqualified_recipient
-allow_unqualified_sender
-frozen 1428430637
-localerror
XX
1
[email protected]
还有以下消息:
邮件发送的最常见路径是 /,有 15564 封电子邮件(7782%)。如果路径是系统路径,则很可能意味着电子邮件是通过 smtp 发送的,而不是使用脚本。
希望这能提供有关该问题的更多信息并提出如何解决这个让我抓狂的问题的建议。
答案1
Directadmin 具有内置功能,可通过以下方式限制出站电子邮件的速率:
如果您希望对一个或多个电子邮件地址设置自定义限制,请在以下路径中创建一个限制,这将覆盖 /etc/virtual/user_limit 文件。
echo 100 > /etc/virtual/domain.com/limit/user
其中“用户”不带@domain.com。 http://www.directadmin.com/features.php?id=1246
如果您只想完全阻止用户发送邮件,可以在 /var/log/exim_mainlog 中查找邮件发送者的 IP 地址,然后使用防火墙进行阻止。但是,如果这是您不想阻止的合法用户,那么教育和限速可能更好。
即使您更改了帐户密码,邮件仍会发送,要回答这个问题,这可能是来自网站文件中的脚本,该脚本无需验证即可发送邮件。尝试查找任何此类有问题的脚本。