Email

Postfix 虛擬設置未在本地發送根郵件

  • October 7, 2015

我有一個帶有 MySQL 和 dovecot 的後綴虛擬設置。一切正常,目前唯一的問題是發給 root 的郵件沒有按應有的方式在本地發送。相反,postfix 將發送到“root”的郵件擴展為“root@example.com”。由於 root@example.com 沒有虛擬郵箱,因此無法投遞:

Nov 17 03:20:26 xxx postfix/qmgr[16914]: E49903AB4045: from=<root@example.com>, size=783, nrcpt=1 (queue active)
Nov 17 03:20:26 xxx postfix/pipe[17901]: E49903AB4045: to=<root@example.com>, orig_to=<root>, relay=dovecot, delay=626, delays=625/0.01/0/0.17, dsn=4.1.1, status=SOFTBOUNCE (user unknown)

為了解決這個問題,我嘗試了描述的內容

http://www.postfix.org/STANDARD_CONFIGURATION_README.html#some_local

並向我的 sql 虛擬別名映射添加了根別名:

| address       | goto             | domain        | created             | modified            | active |
+---------------+------------------+---------------+---------------------+---------------------+--------+
| root          | root@localhost   | localhost     | 2013-11-18 11:20:00 | 2013-11-18 11:20:00 |      1 |

至少它現在發生了一些變化,但它仍然無法正常工作,因為現在域名似乎已擴展為 root@localhost.example.com

Nov 18 11:36:39 xxx postfix/qmgr[16914]: 0741763B6001: from=<root@example.com>, size=316, nrcpt=1 (queue active)
Nov 18 11:36:39 xxx postfix/smtp[30046]: 0741763B6001: to=<root@localhost.example.com>, orig_to=<root>, relay=none, delay=11, delays=11/0/0.52/0, dsn=4.4.6, status=SOFTBOUNCE (mail for localhost.example.com loops back to myself)

從我的 main.cf 中:

mydestination = localhost.localdomain, localhost
mydomain = example.com
myhostname = mail.example.com
myorigin = $mydomain
smtpd_recipient_restrictions = permit_mynetworks,reject_non_fqdn_recipient,permit_sasl_authenticated,reject_unauth_destination,reject_rbl_client zen.spamhaus.org,pcre:/etc/postfix/dspam_filter_access
virtual_alias_maps = mysql:/etc/postfix/sql_virtual_alias_maps.cf
virtual_mailbox_domains = mysql:/etc/postfix/sql_virtual_domain_maps.cf
virtual_mailbox_maps = mysql:/etc/postfix/sql_virtual_mailbox_maps.cf

據我了解,Postfix 應該檢查 sql_virtual_alias_maps,將郵件轉發rootroot@localhost,並嘗試在本地傳遞。

我做錯了什麼,如何獲得後綴以在本地傳遞這些根郵件?

好的,我修好了。問題是參數

append_dot_mydomain

yes預設設置為。設置後

append_dot_mydomain = no

, in main.cf, 它正在正常工作。

看起來它試圖自我轉發,你有沒有機會定義你的數據庫中的“goto”欄位是轉發地址?如果是這樣,請嘗試刪除該轉發,看看是否有幫助

引用自:https://serverfault.com/questions/555690