Здравствуйте!
Тема такая: собираю почтовую систему для перехода с Kerio Mail Server на Linux.
Как выглядит автоматизируемая схема:
Есть домены, которые хостятся у хостера.
И в разных офисах есть пользователи, у которых на этих доменах ящики.
Мой почтовый сервер должен забирать почту с хостинга и отдавать её пользователям в данном офисе, и должен обеспечивать отправку почты во внешний мир. (Это внутренний почтовый сервер, за шлюзом, извне доступа нет). Соответственно, при отправке почты, сервер должен или класть письмо в папку пользователя, определенного на данном сервере, или отсылать во внешний мир, если пользователя на данном сервере не существует. Вот насчет отсылки почты несуществующего в карте виртуального пользователя наружу и получился затык...
В качестве MTA выбран Postfix, остальные части системы тут не суть.
В гуях Керио всё решалось просто: если пользователь неопределен, ставим галку «релеить письмо..» и пишем куда релеить (в данном случае используется релей провайдера).
Что у меня в Postfix:
Сделал два виртуальных домена.
в main.cf из того что существенно:
mydestination = localhost
mynetworks = 127.0.0.0/8, 192.168.100.0/24, 10.0.0.0/8
relay_domains = $mydestination, $virtual_mailbox_domains, $mynetworks
relayhost = mail.my-provider.ru
virtual_mailbox_domains = domain1.ru domain2.com
virtual_mailbox_base = /var/spool/mail/vhosts
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_minimum_uid = 100
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
virtual_alias_maps = hash:/etc/postfix/virtual
local_recipient_maps =
transport_maps = hash:/etc/postfix/transport
В картах:
cat /etc/postfix/vmailbox
123@domain1.ru domain1.ru/123
345@domain1.ru domain1.ru/345
678@domain2.com domain2.com/678
cat /etc/postfix/virtual
mailer-daemon postmaster@localhost
postmaster root@localhost
root myuser@localhost
myuser@localhost myuser@myexternalmail.ru
cat /etc/postfix/transport
123@domain1.ru :
456@domain1.ru :
678@domain2.com :
* smtp:mail.my-provider.ru:25
Так вот, если отправлять почту для пользователей, которых нет в карте
vmailbox, непосредственно с моего сервера из консоли, почта замечательно релеится во внешний мир через провайдера.
А если с другого компа из локалки телнетом, то не проходит.
Пишет 550 5.1.1 <external@domain1.ru>: Recipient address rejected: User unknown in virtual mailbox table
Неужели в каждом офисе так и придется прописывать в карту всех возможных пользователей? И если да, что писать то, если хранилище почты на моем сервере мне писать не надо, мне надо чтоб ушло наружу?
У кого-нибудь были похожие ситуации? Странно, но ничего не нашел в интернете похожего. И в толстенном руководстве по Postfix-тоже.
Просьба пнуть в нужном направлении, заранее спасибо.