web-dev-qa-db-ja.com

Postfix:仮想DovecotメールボックスでPostfixを設定する方法は?

Domain1.comとdomain2.comの2つのドメイン用にPostfixメールサーバーを設定しました。

私の構成では、domain1には、メールをローカルユーザー(ルート、ウェブマスターなど)に転送するためのMaildirとエイリアスを持つ仮想ユーザーといくつかの小さなメーリングリストの両方があります。また、非ローカルドメインへの仮想マッピングもいくつかあります。

一方、Domain2には、主にdomain1の対応する「ユーザー」への仮想エイリアスマッピングのみがあります(たとえば、root @ domain2.comへのメールは[email protected]に転送する必要があります)。

私の問題は、現在、Postfixがシステムに存在しない存在するユーザーに対してもメールを受け入れることです。既存のユーザーと/ etc/aliasesへのメールは正常に機能します。 Postfixのドキュメントには、mydestinationとvirtual_mailbox_mapsの両方で同じドメインを指定してはならないと記載されていますが、mydestinationを空白として指定すると、postfixはvirtual_mailbox_mapsに対して受信者を検証しますが、domain1.comのローカルエイリアスのメールを拒否します。

/etc/postfix/main.cf:

myhostname = domain1.com
mydomain = domain1.com
mydestinations = $myhostname, localhost.$mydomain, localhost

virtual_mailbox_domains = domain1.com
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_mailbox_base = /home/vmail/domains

virtual_alias_domains = domain2.com
virtual_alias_maps = hash:/etc/postfix/virtual

alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases

virtual_transport = dovecot

/ etc/postfix/virtual:

domain1.com right-hand-content-does-not-matter
firstname.lastname user1
[more aliases..]

domain2.com right-hand-content-does-not-matter
@domain2.com @domain1.com

/ etc/postfix/vmailbox:

[email protected] user1/Maildir
[email protected] user2/Maildir

/ etc/aliases:

root: :include:/etc/postfix/aliases/root
webmaster: :include:/etc/postfix/aliases/webmaster
[etc..]

このアプローチは正しいですか、それともDovecot(仮想)MaildirとPostfixエイリアスでPostfixを設定する他の方法がありますか?

2
user75247

はい、mydestinationvirtual_mailbox_mapsの両方にドメインを含めることはできません。これを克服するには、main.cfmydestinationを設定する必要があります

mydestination = localhost.$mydomain, localhost

/etc/postfix/virtual

[email protected]   root@localhost
[email protected]  webmaster@localhost

この設定では、root @ domain1.comへの電子メールはroot @ localhostにリダイレクトされます。 localhostがmydestinationにリストされているため、postfixは/etc/aliasesにエイリアスを適用します

1
masegaloeh