use*_*631 8 email ubuntu postfix route local
我最近注册了 SMTP2GO (smtpcorp)。我已经在其中一台 EC2 服务器上设置了 postfix 并将其指向我的 smtp2go 帐户:
relayhost = [smtpcorp.com]:2525
Run Code Online (Sandbox Code Playgroud)
现在我所有的邮件都通过 SMTP2GO 路由,但问题是,由 cron 作业等生成的 1000 多封电子邮件正在使用电子邮件地址发送到 SMTP2GO:
root@ec2-46-51-151-256.eu-west-1.compute.amazonaws.com
Run Code Online (Sandbox Code Playgroud)
我的问题是,阻止所有这些“本地”电子邮件被路由到 SMTP2GO 的最佳方法是什么?
谢谢
马丁
我的主要.cf:
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
readme_directory = no
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
myhostname = ec2-46-51-151-256.eu-west-1.compute.amazonaws.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = ec2-46-51-151-256.eu-west-1.compute.amazonaws.com, localhost.eu-west-1.compute.internal, localhost
relayhost = [smtpcorp.com]:2525
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = static:account:password
smtp_sasl_security_options = noanonymous
smtp_tls_security_level = may
header_size_limit = 4096000
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = ipv4
Run Code Online (Sandbox Code Playgroud)
Postfix 中继主机不会正常向中继主机发送本地邮件:
来自postfix.org:
中继主机(默认:空)
非本地邮件的下一跳目的地;覆盖收件人地址中的非本地域。此信息被relay_transport、sender_dependent_default_transport_maps、default_transport、sender_dependent_relayhost_maps 和transport(5) 表否决。
因此,如果发生这种情况,那是因为您的本地邮件未标识为本地邮件。您需要在mydestination =
配置行中包含您的本地域。我看到你在那里有 ec2-....amazonaws.com 但可能你已经为你的 LAN 定义了一个不同于这个的本地域。如果你没有定义本地域,我认为(需要测试)如果你只127.0.0.1 localhost.localdomain localhost
在你的etc/hosts
文件中添加并添加localhost.localdomain
到mydestination=
它就足够了。
归档时间: |
|
查看次数: |
16387 次 |
最近记录: |