在Postfix & Dovecot邮件服务器无法接收邮件时对master.cf的重要理解
大家好,我是无能。
从8月20日我自己搭建邮件服务器以来,在TLS/SSL认证后可以发送邮件,但无法接收邮件了。
由于没有任何错误日志,我曾束手无策,但现在已经解决了。
关于master.cf,我认为基本设置如下:
环境
・FreeBSD
・Postfix
・Dovecot
・已配置SSL DKIM DMARC等
#smtpd pass - - n - - smtpd
#dnsblog unix - - n - 0 dnsblog
#tlsproxy unix - - n - 0 tlsproxy
# Choose one: enable submission for loopback clients only, or for any client.
#127.0.0.1:submission inet n - n - - smtpd
submission inet n - n - - smtpd
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_sasl_type=dovecot
-o smtpd_reject_unlisted_recipient=no
-o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
# -o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING
smtps inet n - n - - smtpd
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_sasl_type=dovecot
-o smtpd_reject_unlisted_recipient=no
-o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
# -o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING
# -o syslog_name=postfix/submission
# -o smtpd_tls_security_level=encrypt
# -o smtpd_sasl_auth_enable=yes
〜
问题出在哪里呢,我之前是这样设置的:
smtpd inet n - n - - smtpd
#smtp inet n - n - 1 postscreen
#smtpd pass - - n - - smtpd
#dnsblog unix - - n - 0 dnsblog
#tlsproxy unix - - n - 0 tlsproxy
# Choose one: enable submission for loopback clients only, or for any client.
#127.0.0.1:submission inet n - n - - smtpd
submission inet n - n - - smtpd
smtps inet n - n - - smtpd
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_sasl_type=dovecot
-o smtpd_reject_unlisted_recipient=no
-o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
# -o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING
# -o syslog_name=postfix/submission
# -o smtpd_tls_security_level=encrypt
# -o smtpd_sasl_auth_enable=yes
# -o smtpd_tls_auth_only=yes
我原以为只要在下方记载了-o的设置,就会适用于所有情况。
话说,我甚至没有写smtps inet~...
因此,如果通过TLS/SSL认证,为了在接收邮件时通过995,993的提交端口进行通信,必须在smtps inet ~下方也添加-o参数。
由于需要在各自的环境中进行操作,因此也应该仔细检查各自的参数。
还有Aliases...
在默认设置的位置,/etc/aliases是一个符号链接,原始文件位于/etc/mail/aliases。
为了能够识别邮件,我添加了:
root : xxxxxx@eyes4you.org
更新后务必执行newaliases。
现在已经可以完全正常运行了。
拥有自己的域名邮箱真是太棒了。
那么,下次再见。