首页 > 解决方案 > 后缀虚拟域地址不起作用

问题描述

我有一个运行 Ubuntu 20.04 LTS 并安装了 postfix 的 VPS。使用真实主机名和后缀发送电子邮件非常有效,但从外部(如 gmail)接收邮件到虚拟地址将无法正常工作。

真实主机名邮箱(user1@domain.name.net)从外部接收电子邮件正常。

将服务器内的邮件发送到虚拟地址也可以。

echo "test message" | mailx -s 'test subject' user1@mailserver.com

从 gmail 发送电子邮件会出现“中继访问”错误。

Mail Delivery Subsystem: <mailer-daemon@googlemail.com>
Subject: Delivery Status notification (Failure)
554 5.7.1 <user1@mailserver.com>: Relay access denied

服务器主机名

domain.name.net

MX记录

dig mailserver.com mx

; <<>> DiG 9.16.1-Ubuntu <<>> mailserver.com mx
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35230
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;mailserver.com.                      IN      MX

;; ANSWER SECTION:
mailserver.com.               3600    IN      MX      10 mail.vpshost.com.

;; Query time: 43 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: su syys 20 16:45:47 CEST 2020
;; MSG SIZE  rcvd: 68

/etc/postfix/main.cf

smtpd_tls_cert_file = /etc/ssl/certs/smtpd.crt
smtpd_tls_key_file = /etc/ssl/private/smtpd.key
smtpd_tls_security_level = may

smtp_tls_CApath=/etc/ssl/certs
smtp_tls_security_level = may
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache


smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destinati>
myhostname = domain.name.net
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = domain.name.net, localhost.name.net, localhost
relayhost =
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 = all
home_mailbox = Maildir/
mailbox_command =
smtpd_sasl_local_domain =
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_dest>
smtpd_tls_auth_only = no
smtp_tls_note_starttls_offer = yes
smtpd_tls_CAfile = /etc/ssl/certs/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom
virtual_alias_domains = mailserver.com
virtual_alias_maps = hash:/etc/postfix/virtual

/etc/postfix/虚拟

### mailserver.com aliases ###

virtual-alias.domain    anything
info@mailserver.com     user1
user1@mailserver.com    user1

/etc/别名

# See man 5 aliases for format
postmaster:    user1
user.name:     user1

标签: postfix-mta

解决方案


现在解决了。我们在 VPS 提供商方面没有任何 MX 记录。添加正确的 ip+域记录后,一切正常。


推荐阅读