我想为我的 4-5 个客户提供 SMTP 服务。我有一台安装了 Postfix 的专用服务器 (CentOS)。有什么方法可以创建 SMTP 用户帐户并向我的客户提供 SMTP 服务吗?
我还将使用 Policyd(配额)来限制每个 SMTP 用户帐户可以发送的电子邮件数量。
提前致谢。
答案1
重复 Michael 所说的话,您需要启用 smtp 身份验证才能开始工作。如果您不启用 smtp 身份验证,那么垃圾邮件发送者将开始使用您的服务器发送电子邮件。您可以使用 Postfix + Cyrus SASL + Mysql 进行设置,如以下 URL 中所述。
http://flurdy.com/docs/postfix/edition5.html#conf_auth
完成后,您可以制作一个 Web 应用程序,让您的客户重置他们的密码以及所有增值内容。
答案2
我相信 Postfix 会使用任何 SASL 提供商。我在我的 NetBSD 机器上使用这些:
courier-authlib-0.62.2 Courier Authentication Library
cy2-crammd5-2.1.23 Cyrus SASL CRAM-MD5 authentication plugin
cy2-digestmd5-2.1.23 Cyrus SASL DIGEST-MD5 authentication plugin
cy2-login-2.1.23 Cyrus SASL LOGIN authentication plugin
cy2-plain-2.1.23 Cyrus SASL PLAIN authentication plugin
cy2-sql-2.1.23 Cyrus SASL SQL authentication plugin
然后,我使用标准平面文件来存储帐户信息,因为唯一经过身份验证的用户是我和我的妻子。如果我要将其用于更多用途,我会考虑使用 SQL 实现。
然后我的 main.cf 文件中出现了如下几行:
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
broken_sasl_auth_clients = yes
一定要添加 permit_sasl_authenticated
到您允许他们通过您的机器发送邮件的地方:
smtpd_recipient_restrictions = permit_mynetworks,
....
permit_sasl_authenticated,