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

Отключить локальную доставку для виртуального домена в postfix

У меня есть почтовый сервер с Postfix, MySQL и Dovecot. Я размещаю несколько виртуальных доменов. Я перемещаю один конкретный домен в Google Apps. Поскольку в Google Apps есть ограничения на количество писем, которые вы можете отправлять в день, я хотел бы сохранить текущую настройку сервера для отправки писем. Все пользователи будут получать доступ к своей электронной почте с помощью Google Apps. Веб-сайты и другие приложения будут использовать сервер Postfix для отправки электронных писем.

Мне интересно, можно ли отключить локальную доставку (через службу Dovecot) для этого конкретного домена. Я искал в Интернете несколько часов и не нашел ничего подходящего. Если это возможно, я хотел бы знать, как это сделать.

На самом деле это довольно просто. В вашем main.cf, вероятно, есть две такие настройки:

# map might be pgsql/hash
virtual_mailbox_domains = mysql:/etc/postfix/virtual_mailbox_domains.conf
virtual_mailbox_maps    = mysql:/etc/postfix/virtual_mailbox_maps.conf

Каждая входящая почта запускает (как минимум) два запроса: один для определения, является ли рассматриваемый домен доменом виртуального почтового ящика, а второй - для проверки, существует ли получатель в данном домене почтового ящика.

Предположим, домен, который вы переместили в Google Apps, - example.com. Вы же хотите, чтобы почта, адресованная вашему серверу, пересылалась в Google Apps, верно? На самом деле это довольно просто:

transport_maps = hash:/etc/postfix/transport_maps

И в /etc/postfix/transport_maps:

example.com relay:[mailserver.google.com]

Таким образом, письмо получено на example.com НЕ будет доставлен с использованием ваших настроек virtual_transport, но вместо этого будет перенаправлен на mailserver.google.com - Вы, конечно, должны использовать для этого действующий Google MX.

Это будет работать очень хорошо, пока вы ведете список действующих пользователей на вашем сервере Postfix. Если вы не хотите этого делать, вам придется изменить свой virtual_mailbox_domains map / SQL запрос не включать example.com и вместо этого включите его в relay_domains. Поскольку ваш сервер Postfix не знает получателей в Google Apps, и вы не хотите создавать спам с обратным рассеянием, вам нужно будет использовать Проверка адреса получателя. А поскольку вы не хотите делать это для всех доменов, вам нужно будет определить Класс ограничения:

smtpd_restriction_classes = relay_verification
relay_verification = reject_unverified_recipient

smtpd_recipient_restrictions =
  ...
  check_recipient_access hash:/etc/postfix/relay_restrictions
  ...

И /etc/postfix/relay_restrictions будет содержать:

example.com relay_verification

И последнее, но не менее важное: убедитесь, что у вас есть действующая запись SPF, которая включает сервер Postfix в качестве допустимого источника почты для example.com.

Я немного сбит с толку насчет начала вопроса, но в ответ на вопрос, "possible to disable local delivery (via Dovecot service) for this particular domain" это может помочь:

я считать внутри /etc/postfix/main.cf что если вы используете virtual_alias_domains = me.com you.com тогда простое удаление домена из этой строки заставит Postfix удаленно искать доставку, если DNS и /etc/hosts и т.д. не говорит иначе. Выполните поиск DNS в записях MX этого домена на самом сервере, чтобы узнать, где, по его мнению, находится точка MX.

postfix reload чтобы перезагрузить конфигурацию, следует запустить ее, если это так.

-редактировать-

Я вижу, что тебе нужно.

На самом деле со стороны Google это довольно просто: Settings > Accounts > edit info для вашего исходящего адреса электронной почты и настройте параметры для аутентифицированного исходящего SMTP (это займет несколько попыток, чтобы привыкнуть к его расположению).

Затем добавьте saslauthd в Postfix и запустите его через TLS, чтобы зашифровать процесс входа в систему, чтобы клиент веб-почты Google входил в систему, чтобы ему было разрешено отправлять почту через ваш Сервер (и любой, кто имеет логин и пароль, приходил на это). Вот очень понятный HOWTO, настройте его на свою версию: Postfix SASL HOWTO

Это также имеет то преимущество, что ваша почта кажется поступающей напрямую с вашего SMTP-сервера, поэтому, кроме вашего MX, упоминающего Google и добавления пакета SASL, на самом деле ничего не изменилось.