У меня есть почтовый сервер с 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, на самом деле ничего не изменилось.