Назад | Перейти на главную страницу

Postfix: Как настроить Postfix с виртуальными почтовыми ящиками Dovecot?

Я настроил почтовый сервер Postfix для двух доменов: domain1.com и domain2.com.

В моей конфигурации domain1 имеет как виртуальных пользователей с Maildirs и псевдонимами для пересылки почты локальным пользователям (например, root, webmaster), так и несколько небольших списков рассылки. Он также имеет некоторые виртуальные сопоставления с нелокальными доменами.

С другой стороны, домен 2 имеет только сопоставления виртуальных псевдонимов, в основном соответствующих «пользователей» в домене 1 (например, почта на root@domain2.com должна пересылаться на root@domain1.com).

Моя проблема в том, что в настоящее время 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

/ и т.д. / постфикс / виртуальный:

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

/ и т.д. / постфикс / vmailbox:

user1@domain1.com user1/Maildir
user2@domain1.com user2/Maildir

/ etc / aliases:

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

Правильный ли этот подход или есть другой способ настроить Postfix с помощью Dovecot (виртуальных) Maildirs и псевдонимов Postfix?

Да, у вас не может быть домена в обоих mydestination и virtual_mailbox_maps. Чтобы преодолеть это, вам нужно установить mydestination в main.cf

mydestination = localhost.$mydomain, localhost

И в /etc/postfix/virtual

root@domain1.com   root@localhost
webmaster@domain1.com  webmaster@localhost

при такой настройке электронная почта на root@domain1.com будет перенаправлена ​​на root @ localhost. Поскольку localhost указан в mydestination тогда postfix применит псевдоним в /etc/aliases