Postfix

Postfix:如何使別名適用於虛擬域?

  • October 21, 2013

我正在嘗試設置本地郵件伺服器。我執行 Mac OS X Server 10.6 Snow Leopard,它使用 Postfix 作為伺服器。我使用 GUI 設置伺服器,並通過終端進行所有虛擬設置。

**情況:**伺服器在一個域上,我們稱之為“domain.com”。我有多個虛擬別名,現在讓我們說“alias.com”。我在伺服器上有一個使用者“postmaster”。

**我的目標:**我想設置一些適用於所有域/別名的別名(postmaster、root、mailer-daemon 等),而不必在每次添加別名域時都進行設置。

**摘要/重點問題:**如何設置自動適用於所有虛擬域的別名?

**目前進度:**使用目前配置,我收到所有發往 root@domain.com、postmaster@domain.com 等…@domain.com 的消息。但是當我向 root@alias.com(或 postmaster@alias.com)發送消息時,會返回消息。

錯誤資訊:

Aug 17 23:53:54 home postfix/smtpd[11903]: connect from SERVER[IP]
Aug 17 23:53:54 home postfix/smtpd[11903]: NOQUEUE: reject: RCPT from SERVER[IP]: 550 5.1.1 <postmaster@alias.com>: Recipient address rejected: User unknown in virtual alias table; from=<FROM> to=<postmaster@alias.com> proto=ESMTP helo=<SERVER>
Aug 17 23:53:55 home postfix/smtpd[11903]: disconnect from SERVER[IP]

我的配置:

bash-3.2# postconf -n
virtual_alias_domains = $virtual_alias_maps hash:/etc/postfix/virtual_domains
virtual_alias_maps = hash:/etc/postfix/virtual_users

/etc/postfix/virtual_domains 的內容:

alias.com             allow

/etc/postfix/virtual_users 的內容:

jonathan@alias.com    jonathan
info@alias.com        jonathan
support@alias.com     jonathan

/etc/aliases 的內容:

root:                 postmaster
MAILER-DAEMON:        postmaster

bin:                  root
daemon:               root
named:                root
nobody:               root
uucp:                 root
www:                  root
ftp-bugs:             root
postfix:              root

manager:              root
dumper:               root
operator:             root
abuse:                postmaster

decode:               root

我用Google搜尋了很多,但我找不到真正的解決方案。我希望你們想出一些天才計劃:-)

謝謝!喬納森

我從一個 tweep 中得到了這個很棒的連結,它工作得很好!如果您正在尋找答案,這是我的解決方案。(您需要將其與我第一篇文章中的 /etc/aliases 結合起來,此片段僅適用於虛擬域別名。)

配置

virtual_alias_maps = regexp:/etc/postfix/virtual_users_global hash:/etc/postfix/virtual_users

/etc/postfix/virtual_users_global

# Short version:

/^(postmaster|root|MAILER-DAEMON|abuse)@/   postmaster
/^(bin|daemon|named|nobody|uucp|www|ftp-bugs|postfix|manager|dumper|operator|decode)@/  root

# Or the long version:

/^postmaster@/         postmaster
/^root@/               postmaster
/^MAILER-DAEMON@/      postmaster

/^bin@/                root
/^daemon@/             root
/^named@/              root
/^nobody@/             root
/^uucp@/               root
/^www@/                root
/^ftp-bugs@/           root
/^postfix@/            root

/^manager@/            root
/^dumper@/             root
/^operator@/           root
/^abuse@/              postmaster

/^decode@/             root

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