Мне нужно выполнить миграцию Office 365 с Postfix с помощью Sogo. Моя цель — настроить небольшой гибрид Office 365 с Postfix, примерно так же, как вы это делаете с локальным Exchange.
В настоящее время postfix является основным сервером с 1000 пользователями, и он отправляет и получает все электронные письма за определенное время. домен.xyz. Я настроил Office 365 и добавил к нему тот же домен. Я создал на нем 2 почтовых ящика и настроил Exchange Online, домен.xyz установлен как домен InternalRelay.
Exchange online пока имеет 2 аккаунта
- пользовательA@домен.xyz
- пользовательB@домен.xyz
Exchange настроен так, что если кто-то на Exchange отправляет электронное письмо на domain.xyz, а почтовый ящик находится на Exchange, электронное письмо должно оставаться на Exchange, но если Exchange не может найти почтовый ящик для domain.xyz, он должен использовать Исходящий коннектор который я настроил для пересылки электронной почты на постфикс. Это означает, что любое электронное письмо, отправленное пользователем A пользователю B, работает нормально, но в тот момент, когда пользователь A отправляет электронное письмо пользователю C, которое находится на постфиксе, оно блокируется.
Сообщенная ошибка: 554 5.7.1 userC@domain.xyz: адрес получателя отклонен: отказ от политики не вошел в систему
Насколько я понимаю, Postfix считает, что это единственный сервер, которому принадлежит домен domain.xyz, и он обрабатывает любое электронное письмо от domain.xyz как некий пользователь/службу, пытающуюся отправить электронное письмо без авторизации, и это отрицает. Это доказывается, когда мы создаем совершенно случайное электронное письмо в Office 365, у которого нет соответствующей учетной записи в постфиксе, и при попытке отправить электронное письмо с test.user123456@domain.xyz на UserC@domain.xyz мы получаем
Удаленный сервер вернул «550 5.1.0 test.user123456@domain.xyz: адрес отправителя отклонен: пользователь неизвестен в таблице виртуальных почтовых ящиков»
Как заставить postfix (SoGo) начать доверять Office 365 (диапазон IP-адресов) и позволить ему получать электронную почту из домена, который, по его мнению, принадлежит ему, и для учетных записей, которые у него есть.На последнем этапе миграции postfix в Office 365 каждая учетная запись в postfix будет иметь идентичную учетную запись в O365, и мы будем использовать перенаправление электронной почты по одному почтовому ящику за раз на адрес onmicrosoft.com, чтобы пользователи могли использовать O365, не беспокоясь о их постфиксная учетная запись. Но для этого трафик между O365 и postfix должен работать.
Я предполагаю, что это проблема не только сосуществования Office 365, но и любая служба, такая как SendGrid или аналогичная, которую кто-то будет использовать, будет иметь идентичную проблему.
Последнее - у меня нет доступа к postfix/sogo. У меня только "своя" сторона о365. Я пытаюсь внести свой вклад в команду Linux/Postfix, чтобы исправить это.
Потенциально релевантные биты конфигурации, которые я получил от команды, но я сам понятия не имею, правильно ли это.
# ограничение HELO
smtpd_helo_required = да
smtpd_helo_restrictions =
Permit_mynetworks
Permit_sasl_authenticated
reject_non_fqdn_helo_hostname
reject_invalid_helo_hostname
check_helo_access pcre:/etc/postfix/helo_access.pcre
# Ограничения отправителя
smtpd_sender_restrictions =
reject_unknown_sender_domain,
reject_non_fqdn_sender,
reject_unlisted_sender,
разрешение_mynetworks,
разрешение_sasl_аутентифицированный,
check_sender_access pcre:/etc/postfix/sender_access.pcre
#reject_sender_login_mismatch
# Ограничения получателя
smtpd_recipient_restrictions =
reject_unknown_recipient_domain,
reject_non_fqdn_recipient,
reject_unlisted_recipient,
check_policy_service инет: 127.0.0.1: 7777,
разрешение_mynetworks,
разрешение_sasl_аутентифицированный,
#reject_unauth_destination
# Ограничения данных
smtpd_data_restrictions = reject_unauth_pipelining
# Адреса O365
мои сети = 127.0.0.0/8, 40.92.0.0/15, 40.107.0.0/16, 52.100.0.0/14, 104.47.0.0/17
#
# Поиск учетных записей виртуальной почты
#
транспорт_карты =
#regexp:/etc/postfix/transport_regexp
прокси:ldap:/etc/postfix/ldap/transport_maps_user.cf
прокси:ldap:/etc/postfix/ldap/transport_maps_domain.cf
отправитель_зависимый_релейхост_карты =
прокси:ldap:/etc/postfix/ldap/sender_dependent_relayhost_maps_user.cf
прокси:ldap:/etc/postfix/ldap/sender_dependent_relayhost_maps_domain.cf
# Таблица поиска с именами входа SASL, которым принадлежат адреса отправителя (MAIL FROM).
smtpd_sender_login_maps =
прокси:ldap:/etc/postfix/ldap/sender_login_maps.cf
виртуальный_почтовый_домен =
прокси:ldap:/etc/postfix/ldap/virtual_mailbox_domains.cf
реле_домены =
$мой пункт назначения
прокси:ldap:/etc/postfix/ldap/relay_domains.cf
виртуальный_почтовый ящик_карты =
прокси:ldap:/etc/postfix/ldap/virtual_mailbox_maps.cf
виртуальный_алиас_карты =
#regexp:/etc/postfix/transport_regexp
прокси:ldap:/etc/postfix/ldap/virtual_alias_maps.cf
прокси:ldap:/etc/postfix/ldap/virtual_group_maps.cf
прокси:ldap:/etc/postfix/ldap/virtual_group_members_maps.cf
прокси:ldap:/etc/postfix/ldap/catchall_maps.cf
прокси:ldap:/etc/postfix/ldap/sender_login_maps.cf
отправитель_bcc_maps =
прокси:ldap:/etc/postfix/ldap/sender_bcc_maps_user.cf
прокси:ldap:/etc/postfix/ldap/sender_bcc_maps_domain.cf
получатель_bcc_maps =
прокси:ldap:/etc/postfix/ldap/recipient_bcc_maps_user.cf
прокси:ldap:/etc/postfix/ldap/recipient_bcc_maps_domain.cf
В master.cf
smtps inet n - n - - smtpd
-o syslog_name=postfix/smtps
-o smtpd_tls_wrappermode=да
-o smtpd_sasl_auth_enable=да
-o smtpd_reject_unlisted_recipient=нет
-o smtpd_client_restrictions=permit_sasl_authenticated,отклонить
# -o smtpd_client_restrictions=permit_sasl_authenticated,permit_mynetworks
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=permit_sasl_authenticated, отклонить
# -o milter_macro_daemon_name=ИСХОДЯЩИЙ
Любые идеи будут приветствоваться.