我有一个 postfix 安装并且已经设置通过 google apps 中继,但是当我将邮件发送到 postfix 时,它会使用我在 main.cf 中指定的一个帐户将其中继到 google apps。
有没有办法更动态地做到这一点。理想情况下,用户在发送邮件时会使用 postfix 进行身份验证,postfix 将使用该用户名和密码对 gmail 进行身份验证。这可能吗?或者下一个最佳解决方案是什么?
提前致谢
答案1
最后,您基本上必须同步两个密码文件,或者使用其他类型的文件,可能使用一个 mysql 表通过 postfix 验证客户端,然后让 postfix 查询同一张表以通过 gmail 验证。另一个想法可能是找到一个针对 gmail 进行验证的 PAM 模块。
无论如何我使用了这个指南
设置每个用户帐户中继:
#
smtp_use_tls=yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
并用一行创建 /etc/postfix/sasl_passwd (将用户和密码替换为你自己的)
smtp.gmail.com [email protected]:PASSWORD
然后我在 postfix 上设置了 sasldb auth,以便客户端必须向 postfix 进行身份验证。Postfix 查询 sasldb2 文件。
缺点是,如果您更改了 gmail 密码并希望保持所有内容同步,则必须更新 /etc/postfix/sasl_passwd 并更新 /etc/sasl2db。
这是我的 main.cf
# See /usr/share/postfix/main.cf.dist for a commented, more complete version
# Debian specific: Specifying a file name will cause the first
# line of that file to be used as the name. The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h
readme_directory = no
myorigin = /etc/mailname
mydestination =
relayhost = [smtp.gmail.com]:submission
mynetworks = 127.0.0.0/8, 10.0.0.0/8
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
smtp_use_tls=yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtp_sender_dependent_authentication = yes
sender_dependent_relayhost_maps = hash:/etc/postfix/relayhost_map
smtpd_sasl_path = smtpd
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
#smtpd_sasl_security_options = noanonymous, noplaintext
smtpd_recipient_restrictions =
permit_sasl_authenticated,
reject_unauth_destination
--------------------------------------------
以下是一些有用的链接:
> http://www.postfix.org/SASL_README.html
> http://www.postfix.org/postconf.5.html
> http://enc.com.au/myscripts/postfixmysql.html
> http://braiden.org/?p=15
> https://help.ubuntu.com/community/Postfix
> http://www.debianhelp.org/node/2120
> http://www.blogternals.com/2009/04/30/postfix-google-apps-gmail-smtp-relay/