Ubuntu 14.04 Postfix 访问被拒绝

Ubuntu 14.04 Postfix 访问被拒绝

抱歉,我在这里写这篇文章,我真的把它当作最后的手段。我最近弄到了一台专用服务器。我不擅长使用 Linux(一点也不),但我想设置一个完整的服务器(Web、邮件、ftp)。

我确实按照有关如何进行思考的教程进行操作,并且一切正常,只是我无法从外部发送电子邮件。

我有一个 Postfix / Courier 邮件设置(按照说明这里

现在我可以使用我的 SMTP 服务器从我的本地计算机发送电子邮件,如果我在本地服务器上使用 sendmail,电子邮件可以正常送达,但如果我尝试从外部发送电子邮件,则会收到以下信息:

554 5.7.1 <>: Sender address rejected: Access denied

[地址已被拒绝]

我花了几个小时阅读并尝试解决这个问题,大部分帖子建议将我的 main.cf 行从:

smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject

更改为:

smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination

这确实有道理。我在 master.cf 中也发现了类似的设置,我也在那里进行了更改,但没有任何效果。

这是我从 postconf -n 得到的输出

alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
broken_sasl_auth_clients = yes
config_directory = /etc/postfix
content_filter = amavis:[127.0.0.1]:10024
disable_vrfy_command = yes
inet_interfaces = all
mailbox_size_limit = 0
message_size_limit = 0
mydestination =
myhostname = e-systems.co.uk
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mynetworks_style = host
myorigin = /etc/mailname
readme_directory = no
receive_override_options = no_address_mappings
recipient_delimiter = +
relayhost =
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtp_use_tls = yes
smtpd_banner = $myhostname ESMTP $mail_name
smtpd_delay_reject = yes
smtpd_helo_required = yes
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain =
smtpd_sasl_security_options = noanonymous
smtpd_sender_restrictions = permit_sasl_authenticated, permit_mynetworks, reject
smtpd_tls_cert_file = /etc/ssl/private/mail.e-systems.co.uk.crt
smtpd_tls_key_file = /etc/ssl/private/mail.e-systems.co.uk.key
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes
virtual_alias_maps = mysql:/etc/postfix/maps/alias.cf
virtual_gid_maps = static:5000
virtual_mailbox_base = /var/spool/mail/virtual
virtual_mailbox_domains = mysql:/etc/postfix/maps/domain.cf
virtual_mailbox_limit = 0
virtual_mailbox_maps = mysql:/etc/postfix/maps/user.cf
virtual_uid_maps = static:5000

MX 指向正确的位置,所以没问题。

任何想法或帮助都将不胜感激。

谢谢。

答案1

有时候我真的很蠢(或者只是累了)。

错误始终很明显:发件人拒绝:访问被拒绝

但我正在改变以下设置:

smtpd_recipient_restrictions

现在我已经看到了问题,我改变了这一行:

smtpd_sender_restrictions = permit_sasl_authenticated, permit_mynetworks, reject

到:

smtpd_sender_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination

而且它正在发挥作用。

相关内容