![防止发送垃圾邮件](https://linux22.com/image/604573/%E9%98%B2%E6%AD%A2%E5%8F%91%E9%80%81%E5%9E%83%E5%9C%BE%E9%82%AE%E4%BB%B6.png)
如果托管账户受到损害,有哪些方法可以防止垃圾邮件离开您的服务器?
在带有 cpanel 的服务器上有一堆客户端,但想知道是否有办法可以防止帐户被盗用。
我所说的“泄露”是指客户注册或客户账户被黑客入侵,然后他的账户被用于发送垃圾邮件。
您是否无法在 exim 或 spamassassin 中设置某种类型的过滤器/黑名单条款,以便在匹配该条款时阻止/停止邮件发出?
答案1
不要妥协,说真的。
监控您的流量。您将了解什么是正常的,并能够识别异常流量。
关闭不必要的守护进程。如果服务器不需要发送邮件,就不要运行 sendmail 或 postfix。
限制 SSH 访问和/或为 SSH 分配非标准端口(例如,不要使用默认端口 22)。如果您需要使用端口 22,则可以使用以下服务进行扩展:拒绝主机跟踪并阻止入站 SSH 机器人身份验证尝试。
为您自己和您的客户使用或强制使用强密码。
答案2
最简单的做法是阻止对端口 25 的传出连接,直到客户端“请求”解除对其 IP 的阻止。实际上,首先不应该有人从 CPanel 托管站点运行邮件服务器(如果他们生成由另一台服务器“发送”的电子邮件,那么应该在根据 RFC 规定,端口 587自 1998 年以来一直如此)。
我真的希望更多的提供商能像您一样考虑周到,即使您不阻止目标端口 25 流量。我们很感激您的想法,并且更希望有防火墙。
答案3
您正在运行一家网络托管服务提供商,这本质上意味着您的客户将运行不受信任且通常不安全的代码。
除了您应该已经采取的措施来确保服务器安全之外,还请考虑:
使用以下工具对客户端数据运行恶意软件扫描马尔代特. 保持你的定义是最新的。
仅允许将 SMTP 流量发送到您的本地邮件服务器,您可以在其中记录并控制外发邮件。添加出站防火墙规则,阻止除您的邮件服务器之外的任何设备连接到远程主机上的端口 25。示例规则可以是:
iptables -I OUTPUT -m owner ! --uid-owner EXIM_USER -p tcp --dport 25 -j DROP
(到客户第三方邮件服务器(例如 Gmail)的经过验证的 SMTP 流量将在端口 587 上运行,并且不会受此影响。)
答案4
我将赞同 ewwhite 的建议,以及 Micheal Hampton 提出的在防火墙处删除除您的邮件主机之外的所有 SMTP 流量的建议。
另一个建议是,在客户的应用程序上设置出站 SMTP 流量监听。他们的网络服务器不应该生成邮件,所以如果他们生成邮件,您需要查看邮件内容 - 也许您可以深入了解原始来源。其他可以尝试的方法:
如果您知道客户端的 IP 地址块,则可以捕获到 Web 主机的 telnet、远程桌面 (3389) 和 SSH 流量,并从结果中过滤掉他们的 IP 地址块。这应该可以让您知道除了他们之外是否有人在控制主机。
另一种需要监视的流量类型是 IRC,因为该协议被广泛用作僵尸计算机的命令和控制网络。或者,只需在防火墙上删除 IRC 端口,就像删除 SMTP 一样。
恶意软件的另一个可能载体是通过 torrent。如果您的客户端的 Web 服务器正在打开 torrent 连接,则它可能被用作 torrent 分发节点以及垃圾邮件源。如果您的客户端未将此请求作为受支持的服务,那么您可以将其丢弃在防火墙处,或终止主机上的服务。
最终的解决方案是,备份了查找接管向量所需的信息(或者如果没有真正努力找出发生了什么),您可以简单地关闭虚拟机或重新镜像服务器,然后从之前的备份中恢复客户端的应用程序和数据。他们可能会遇到问题……但这是运行不安全代码的代价之一。