Настройка Postfix для малого офиса

Возникла задача настроить почтовик (Postfix был выбран так входит в комплект Ubuntu Server) для небольшой организации, буквально с несколькими компьютерами. Как известно, в таких организациях, используют в качестве почты внешние серверы, типа Mail.ru, Gmail.com и т.д. Арендовать свое доменное имя и делать MX запись на DNS сервере провайдера для такого случая имхо - из пушки по воробьям. Стал искать, как настроить Postfix для такого случая и обнаружил жесточайший дефицит инфы. Как сказано в одной статье(ссылка на нее ниже) "...Побродив некоторое время в сети с удивление обнаружил отсутствие того за чем пришел. Не то чтобы документации не было совсем . Скорее ее было даже слишком много. Очень часто мне на глаза попадались продвинутые статьи описывающие настройку магистральных систем способных работать в качестве почтовых серверов крупных интернет провайдеров. Встречались тексты объясняющие способы взаимодействия почтовой системы с SQL, RADIUS, LDAP серверами. Для нашего случая все эти ухищрения были чрезмерны. К сожалению, подробной интрукции по настройке почтовой системы для малого и среднего офиса так и не было найдено..."
Однако, ищущий да обрящет. Записываю к себе в книжку :)
источник iboxjo
http://iboxjo.livejournal.com/11017.html

УРА. Я закончил настройку почтового сервера в связке Postfix 2.5.5+CyrusSASL2+ MySQL 5.1+ Courier-IMAP+Apache 1.3+ postfixadmin.
Настройка в общем по мануалу http://sys-adm.org.ua/mail/mail-howto-p1.php , с некоторыми замечаниями, о чем собственно и пишу.
И так:
  •  очень внимательно редактируем файл /usr/local/etc/authlib/authmysqlrc - лишние пробелы перед параметрами могут давать не предсказуемый эффект.
  • возникли сложности с подменой адресов, поскольку сервак локальный, а почту забирать и отправлять надо в/из мира, соответственно и в заголовке ОТ КОГО должен стоять реальный адрес почтового ящика. Ну например надо преобразовывать адрес локального пользователя test@test.ru в test@yandex.ru  при передаче и обратно при приёме. Вот с этим пришлось посидеть. Оказалось всё довольно просто (после подсказки конечно):
  • - в main.cf  параметры 
    canonical_maps - входящая почты (через smtpd) 
    smtp_generic_maps - локальная исходящая почта (через smtp) - прописываем пути к картам соответственно canonical и generic.
    Соответственно создаем файлы:

    touch canonical
    touch generic

    содержание файлов примитивное:

    ee generic
    test@test.ru test@yandex.ru
    ....

    ee canonical
    test@yandex.ru test@test.ru
    ....

    Выполняем
    postmap /usr/local/etc/postfix/canonical
    postmap /usr/local/etc/postfix/generic

            Ну собственно и радуемся.
            Пока всё. Ребята ходите на http://www.postfix.ru - отличный форум.

 
 

Сама дискусия на форуме postfix.ru о которой упоминает iboxjo - http://www.postfix.ru/viewtopic.php?t=13919&highlight=
Описанный iboxjo неявно предполагает использование smtp-сервера провайдера. Если же предполагается использовать smtp серверы провайдеров типа mail.ru, то задача усложняется. На практике не проверял, но на http://sysadmins.ru подсказали такой путь(http://sysadmins.ru/topic220973.html):
надо создать карту sasl_passwd
затем
--- sasl_passwd ---
smtp_sender_dependent_authentication = yes

smtp_sasl_auth_enable = yes

smtp_sasl_password_maps = hash:/usr/local/etc/postfix/maps/sasl_passwd

smtp_sasl_security_options = # тут выставить нужные схемы авторизации

smtp_sasl_type = cyrus
[host1.domain.ru] user:password
карта transport
--- transport ---
domain.com :[host1.domain.ru]

в файл конфигурации Postfix добавляем строку
sender_dependent_relayhost_maps = hash:/usr/local/etc/postfix/maps/sender_relayhost
и соответственно создаем записи в файле sender_relayhost
user1@ya.com [smtp.ya.com]
user2@ya.com [smtp.ya.com]
user3@ya.com [smtp.ya.com]
и еще в sasl_passwd
user1@ya.com user1@ya.com:pass
user2@ya.com user2@ya.com:pass
user3@ya.com user3@ya.com:pass

В общем, если кто уже делал, отпишитесь об успехах :)
Также рекомендую к прочтению статьи
http://onix.opennet.ru/content/view/22/26/
http://sys-adm.org.ua/mail/mail-howto-p1.php