Перевод: Доморадов Алексей. Все права защищены. Copyright © 2007.
Примечание: При размещении данного материала у себя на сайте, просьба указывать ссылку на оригинальный сайт - www.sys-adm.org.ua.
Все замечания и предложения по переводу документации на русский язык, а также найденные ошибки и опечатки присылайте на мой электронный адрес.
Благодарности: Спасибо всем, кто помогал мне переводить эту документацию.
Особенное спасибо: Галинурову Кириллу и Грозаку Михаилу aka RedStalker_Mike.
Special thanks to: Igor Luzanov aka ISKATEL.
Этот документ обсуждает различные опции подключения агента доставки maildrop к Postfix:
Postfix может быть настроен для доставки почты непосредственно maildrop, без использования локального агента доставки в качестве посредника. Это означает, что вы не сможете использовать локальные псевдонимы или обработку файлов $HOME/.forward. Обычно, такой способ доставки реализуют для т.н. hosted domains получатели которых не имеют системных домашних директорий.
Следующий пример показывает как использовать maildrop для двух доменов: domain.org.ru и domain.com.ua.
1 /etc/postfix/main.cf: 2 maildrop_destination_recipient_limit = 1 3 virtual_mailbox_domains = domain.org.ru domain.com.ua 4 virtual_transport = maildrop 5 virtual_mailbox_maps = hash:/etc/postfix/virtual_mailbox 6 virtual_alias_maps = hash:/etc/postfix/virtual_alias 7 8 /etc/postfix/virtual_mailbox: 9 user1@domain.org.ru ...текст здесь не имеет значения... 10 user2@domain.org.ru ...текст здесь не имеет значения... 11 user3@domain.com.ua ...текст здесь не имеет значения... 12 13 /etc/postfix/virtual_alias: 14 postmaster@domain.org.ru postmaster 15 postmaster@domain.com.ua postmaster
Строка 2 необходима, чтобы Postfix обеспечивал одновременно одного получателя агенту доставки maildrop.
Строка 3 сообщает Postfix, что domain.org.ru и domain.com.ua являются так называемыми virtual mailbox domains. Вместо перечисления имен непосредственно в main.cf вы также можете перечислить их в файле; для деталей смотрите документацию virtual_mailbox_domains.
Строка 4 указывает, что почта для domain.org.ru и domain.com.ua должна быть доставлена агентом доставки maildrop.
Строки 5 и 8-11 указывают для каких получателей SMTP сервер Postfix должен принимать почту. Это предотвращает почтовую очередь от наполнения недоставленными сообщениями. Укажите пустое значение ("virtual_mailbox_maps =") для отключения этой возможности.
Строки 6 и 13-15 перенаправляют почту для postmaster'a локальному postmaster'у. RFC 821 требует, чтобы у каждого домена был адрес постмастера.
Используемый далее идентификатор пользователя vmail - это пользователь, от имени которого должен запуcкаться maildrop. Он должен быть владельцем виртуальных почтовых ящиков, если у них у всех один и тот же владелец. Если maildrop использует бит suid (смотри документацию maildrop), то во время исполнения владелец процесса maildrop изменится на соответствующего владельца для доставки почты.
Примечание: Не используйте пользователя postfix в качестве пользователя maildrop.
/etc/postfix/master.cf:
maildrop unix - n n - - pipe
flags=ODRhu user=vmail argv=/path/to/maildrop -d ${recipient}
Руководство пользователя pipe(8) дает детальное описание вышеупомянутых аргументов командной строки.
Если вам нужна поддержка адрессов в стиле user+extension@domain, используйте следующее:
/etc/postfix/master.cf:
maildrop unix - n n - - pipe
flags=ODRhu user=vmail argv=/path/to/maildrop
-d ${user}@${nexthop} ${extension} ${recipient} ${user} ${nexthop}
Почта доставляется ${user}@${nexthop} (соотвествующий ключ для просмотра maildrop userdb). ${extension} и другие компоненты адреса доступны через правила maildrop как $1, $2, $3, ... и могут быть опущены из master.cf или игнорированы maildrop в случае ненадобности.
Postfix может быть настроен для доставки почты maildrop через локального агента доставки. Это немного менее эффективно, чем "прямая" доставка обсуждаемая выше, но дает вам преимущества использования локальных псевдонимов и обработку файла $HOME/.forward. Обычно этот способ используется для доменов, перечисленных в mydestination и пользователей, у которых есть системные учетные записи UNIX.
Для настройки доставки maildrop для всех системных учетных записей UNIX:
/etc/postfix/main.cf:
mailbox_command = /path/to/maildrop -d ${USER}
Примечание: ${USER} указывается в верхнем регистре.
Для включения агента доставки maildrop только для определенных пользователей, вы можете использовать свойство mailbox_command_maps локального агента доставки Postfix:
/etc/postfix/main.cf:
mailbox_command_maps = hash:/etc/postfix/mailbox_commands
/etc/postfix/mailbox_commands:
you /path/to/maildrop -d ${USER}
Доставка maildrop для определенных пользователей также возможна благодоря использованию файла $HOME/.forward из домашнего каталога пользователя:
/home/you/.forward:
"|/path/to/maildrop -d ${USER}"
| Дата последнего обновления: 30.10.2008. | Postfix version: 2.3.4. |