![向一大群用户发送一次性电子邮件:使用邮件服务器还是列表服务器?](https://linux22.com/image/529565/%E5%90%91%E4%B8%80%E5%A4%A7%E7%BE%A4%E7%94%A8%E6%88%B7%E5%8F%91%E9%80%81%E4%B8%80%E6%AC%A1%E6%80%A7%E7%94%B5%E5%AD%90%E9%82%AE%E4%BB%B6%EF%BC%9A%E4%BD%BF%E7%94%A8%E9%82%AE%E4%BB%B6%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%BF%98%E6%98%AF%E5%88%97%E8%A1%A8%E6%9C%8D%E5%8A%A1%E5%99%A8%EF%BC%9F.png)
我想知道是否有人能提供最佳实践建议,告诉您使用哪种基础架构软件向数百人或偶尔数千人发送电子邮件。同一份收件人列表绝不会或几乎不会重复使用。我原本打算将每个人都设为密件抄送,然后让普通的 Postfix 处理投递,这种方法在过去效果很好。但我们的一位系统管理员希望我使用 SOAP 调用连接到 SYMPA 列表服务器,创建临时列表,将所有收件人添加到列表中,向该列表发送电子邮件,然后删除临时列表。他的理由是,列表服务器比 postfix、sendmail、exim 或其他程序更能处理数百或数千个收件人。
从开发人员的角度来看,为那些实际上不是列表的东西(它们只使用一次,不面向用户,您无法订阅或取消订阅它们)创建列表让我感到毛骨悚然,但如果这真的是最好的做法,我很乐意同意他的请求。这就是我来到这里的原因:通过常规邮件服务器直接发送大量电子邮件流量真的是一种不好的做法,应该避免吗?如果这是一种不好的做法,列表服务器解决方案是个好主意吗?如果没有,还有其他建议吗?
背景:我在一所大学工作,目前正在开发一款应用程序,让院长可以向特定人群发送非常有针对性的电子邮件,例如向所有 30 岁以上的化学专业高年级学生发送邮件,提醒他们正在为之前活跃于该行业的学生设立一个令人兴奋的新项目。他们在一个简单的 Web 界面中选择这些标准,并通过同一个 Web 界面发送邮件。
谢谢!
答案1
他的理由是,列表服务器比 postfix、sendmail、exim 或其他服务器更能处理数百或数千个地址。
要么你还没理解他的论点,要么他不知道自己在说什么。
使用 sympa 有一些很好的理由 - 但这不是其中之一。如果您不使用它的功能来管理订阅、处理退回、与 LDAP 等后端系统集成、摘要列表、归档......那么它只是额外的开销。
MTA 只做三件事
- 队列消息
- 路由消息
- 将消息传递到其他系统
你真的相信你的系统管理员认为他维护的系统至少有 30% 的功能失效了吗?
MTA 非常擅长管理队列。当然,将不定数量的收件人塞入电子邮件的密件抄送字段是一种混乱的方法 - 最好一次最多 20 个收件人。
然而,如今的生活远比仅仅发送电子邮件要复杂得多 - 如果您希望向外部地址(甚至在某些情况下向内部地址)发送数百或数千封电子邮件,那么您需要非常聪明地配置您的邮件服务器,以避免看起来像垃圾邮件发送者。但这与您是否使用 Sympa 之类的邮件列表管理器关系不大。您如何做到这一点可以写一本小书 - 所以从这里开始没有多大意义 - 特别是如果您不管理站点上的 MTA。
回去和系统管理员交谈,要求他们解释为什么你需要使用 Sympa 以及它解决了哪些问题。
答案2
我同意 symcbean 的观点:回到你的系统管理员那里讨论这个问题。你的系统管理员可能有使用 SYMPA 的理由 - 如果不是其他原因,那么只是为了保持一致性。
无论如何,将电子邮件推送到 Sendmail/Postfix/Exim 队列非常容易。对于几百或几千封邮件,任何方法都可以,甚至像
#!/bin/bash
cat your_message.txt | mail -s 'Now THIS is what you have been waiting for' [email protected]
cat your_message.txt | mail -s 'Now THIS is what you have been waiting for' [email protected]
cat your_message.txt | mail -s 'Now THIS is what you have been waiting for' [email protected]
...特别是如果您之后真的不需要分析任何东西。
配置您的电子邮件服务器以使其看起来不像垃圾邮件发送者有点棘手,但仍然可以做到。但这是您的系统管理员的工作,也可能是他想要坚持使用 SYMPA 的原因之一。也许它经过精心配置,对其他 SMTP 服务器很友好。
那么,突然从某个随机服务器发送大量电子邮件有什么不好呢?
很多。
例如,由于垃圾邮件,许多电子邮件服务器都安装了各种反垃圾邮件技术。其中之一就是检查远程 SMTP 客户端是否在某个黑名单中。只需从某个服务器盲目地发送 2000 封电子邮件,就可以让您的服务器(甚至您的网络被阻止)进入某些黑名单。
即使您没有被列入黑名单,垃圾邮件过滤器也可能不喜欢您的电子邮件,并将这些邮件隔离为垃圾邮件。或者永久丢弃它们。您可能希望确保至少大多数邮件将被发送到 /dev/null 以外的其他目的地。
由于垃圾邮件的存在,发送电子邮件(尤其是群发电子邮件)正成为一种艺术和黑魔法。当您发送大量合法电子邮件时,您不想看起来像垃圾邮件发送者。这就是为什么要坚持您的系统管理员告诉您的一切,至少如果他/她是一个值得信赖的人。我们有时会制定奇怪的纳粹规则,但这些规则是有原因的。