【问题标题】:Email server; Is this method spam-safe?电子邮件服务器;这种方法是垃圾邮件安全的吗?
【发布时间】:2011-03-05 07:30:54
【问题描述】:

我有一个分类网站,每个分类都有一个提示表单,用户可以在其中提示朋友有关分类的信息。 提示表单的操作设置为一个 php 页面,该页面在清理后发送电子邮件等...

我必须过滤掉垃圾邮件等,这样我的电子邮件服务器就不会被列入黑名单或任何东西......

我有自己的服务器(VPS、Linux)并考虑过解决方案...

你觉得这听起来如何:

  1. 安装邮件服务器
  2. 将防火墙配置为仅允许从我的网站连接到邮件服务器
  3. 配置邮件服务器,以便每 5 分钟左右最多可以发送 'x' 封电子邮件
  4. 在发送邮件之前创建一个 php 过滤器,用于检查“坏”字词。
  5. 如有必要,作为最后的手段,在提交表单之前向用户询问一个问题(例如 5+5)

如果我不必实现上面的第 5 个实现,我宁愿选择......

你怎么看?

另外,我还有一个你可能会回答的问题是:

如果电子邮件服务器被列入黑名单,有没有办法将其取消列入黑名单? 或者如果发生这种情况有什么解决办法?

谢谢

【问题讨论】:

  • 我真的很喜欢算法验证码的想法,让你真正思考。
  • 您也可以按照其他受滥用网站的做法进行操作。实施第 5 步,但前提是您发现可疑行为,例如来自同一 IP 的大量请求或特定时间异常高的流量。
  • 值得指出的是,如果您将邮件服务器配置为仅接受来自您的网络服务器的电子邮件,那么除了通过网站(包括回复您发送的电子邮件)之外,没有人可以向您发送电子邮件。跨度>

标签: php javascript linux security email


【解决方案1】:

就 php 方面而言,您希望限制 ip 每小时可以对脚本进行的尝试次数。此外,您还需要检查标头注入和其他黑客攻击。

您的电子邮件地址字段中有一个标头注入示例,脚本可以插入一个新行,然后是密件抄送/抄送,并使用它直接从您的服务器发送垃圾邮件。

【讨论】:

【解决方案2】:

1 - 安装邮件服务器

使用任何现代 Linux 发行版都很容易做到这一点。 “yum install”或“apt-get”将为您处理详细信息。您所要做的就是决定您想要哪个 SMTP 服务器(postfix、exim、sendmail 等...)

2 - 将防火墙配置为仅允许从我的网站连接到邮件服务器

任何最近的 SMTP 服务器都应该开箱即用地配置为不充当开放中继。这意味着您的“站点 A”服务器将不接受来自“站点 B”的电子邮件并将其转发到“站点 C”。如果您不想充当一般的邮件服务器,您可以通过防火墙关闭监听端口(TCP 端口 25、465 和 587 通常用于此目的)。或者您可以将服务器配置为侦听 localhost:25 而不是 *:25,因此不会接受任何“外部”连接。

3 - 配置邮件服务器,以便每 5 分钟左右最多可以发送 'x' 封电子邮件

这取决于服务器。这是后缀的服务器故障answer

4 - 在发送邮件之前创建一个 php 过滤器,用于检查“坏”字。

很简单。一些 str_replace/preg_replace 可以处理这个问题。问题是您想获得多详细的信息,或者从this place 使用您的系统的人是否会是 S.O.L.

5 - 如有必要,作为最后的手段,在提交表单之前询问用户一个问题(例如 5+5)

再一次,很简单。那里有很多类似验证码的库。

【讨论】:

    猜你喜欢
    • 2011-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-17
    • 1970-01-01
    • 2013-08-02
    • 2012-07-24
    • 1970-01-01
    相关资源
    最近更新 更多