我想在我的 VPS 上托管一个电子邮件服务器,以便我可以从我的应用程序发送自动电子邮件。阅读有关托管电子邮件服务器的不同方式(涉及 ISP 阻止端口、开放中继问题、经过身份验证的 SMTP、SSL 等)的信息让我非常困惑。
大多数教程建议使用智能主机作为中继。我不想这样做,因为我不想依赖外部服务。所以我的问题是,将电子邮件发送到互联网时需要考虑哪些事项?
一个简单清晰的教程的链接将不胜感激,因为我找不到一个。
答案1
仅当您希望接收邮件时才需要邮件服务器。即使这种情况也可以通过使用诸如fetchmail
(用于接收)。
一般来说,考虑到维护邮件服务器需要额外的工作,最好不要设置邮件服务器。如果你真的想的话,我已经方便地整理了一个教程,标题为:如何在 CentOS 5 上设置邮件服务器在我的博客上。它涵盖了如何使用所有附加组件(spamassassin、病毒检查等)设置基于 sendmail 的邮件服务器。
通常,发送邮件所需的只是能够对消息进行排队,然后定期传送它们。这意味着您可以使用 sendmail 设置类似的内容。
创建文件/etc/mail/sendmail.mc
:
define(`SMART_HOST', `your-smtp-server')
FEATURE(authinfo)dnl
然后运行这个命令:
$ m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
摘自软呢帽项目
以下文章介绍了用于将邮件转发到 ISP 的 smtp 服务器的 sendmail 的设置。假设您的 sendmail 是最新的并且配置正确。注意:此设置不适用于使用 SASL 的 smtp 服务器(例如 smtp.pobox.com)。大多数命令必须使用相应的权限执行(使用 sudo)。
创建/编辑文件/etc/mail/authinfo
:
AuthInfo:<your-smtp-server> "U:<your-smtp-user>" "P:<your-smtp-password>" "M:DIGEST-MD5"
设置其权限:
$ chmod 600 /etc/mail/authinfo
重建 authinfo 文件:
$ makemap hash /etc/mail/authinfo < /etc/mail/authinfo
-or on Red Hat based systems-
$ make
重新启动服务:
$ /sbin/service sendmail restart