Anonim

Вы пытаетесь отключить локальную доставку электронной почты с помощью iRedMail и postfix на своем домашнем почтовом сервере, и вы бьетесь головой о стену. Вы используете самодельный сервер для доставки электронной почты, но почтовый ящик находится на втором сервере. В этой статье я поделюсь своими знаниями о том, как отключить локальную доставку электронной почты с помощью Postfix и заставить всю электронную почту для определенных доменов пересылаться через их домены. правильные адреса MX.

Я искал, искал и искал в Интернете эту информацию, и, честно говоря, я даже не уверен, сработает ли она для вашей установки.Но, учитывая то количество времени, которое я потратил на изучение этой проблемы, даже будучи экспертом по серверам, отличным от Linux, я решил поделиться своими выводами и помолиться, чтобы это помогло облегчить ваше разочарование.

Ошибка

Если вы видите ошибку «неизвестный пользователь в таблице виртуального почтового ящика», вы попали по адресу. По сути, вы хотите, чтобы postfix прекратил попытки доставки электронной почты на учетные записи электронной почты на вашем сервере, которые не существуют. Это действительно слишком много, чтобы просить?

Исправление Postfix для отключения локальной доставки электронной почты для домена

В основном все основные параметры конфигурации postfix находятся в main.cf, поэтому вы можете открыть файл, набрав vim /etc/postfix/main.cf .

Ищите строку virtual_mailbox_domains — закомментируйте ее, поставив перед ней . Это полностью отключит локальную доставку электронной почты. Вот мой:

virtual_mailbox_domains=proxy:ldap:/etc/postfix/ldap/virtual_mailbox_domains.cf

Далее найдите строку relay_domains и добавьте к ней доменные имена адресов электронной почты, почтовые ящики которых do живут на вашем самодельный почтовый сервер. Мой выглядит так:

relay_domains=payette.email, $mydestination, proxy:ldap:/etc/postfix/ldap/relay_domains.cf

Наконец, найдите строку transport_maps и добавьте hash:/etc/postfix/transport ко всему, что там есть. Мы создадим настоящий файл на следующем шаге. Мой выглядит так:

transport_maps=hash:/etc/postfix/transport, proxy:ldap:/etc/postfix/ldap/transport_maps_user.cf, proxy:ldap:/etc/postfix/ldap/transport_maps_domain.cf

Теперь все, что осталось сделать, это создать транспортный файл, в котором говорится: «Отправлять всю входящую почту на этот домен и вместо этого отправлять ее через этот MX-сервер!»

Итак, создайте файл, набрав vim /etc/postfix/transport . Добавьте строку для каждого домена, для которого вы хотите отключить локальную доставку, как в примере ниже, поместив MX-сервер в скобки. Вот мой:

payetteforward.com smtp:

Затем сделайте то, что postmap делает с файлом, набрав postmap /etc/postfix/transport . Это важно — я бы объяснил почему, но я уверен, что это выше вашего понимания. (Я совершенно не понимаю, что он делает.)

Трюк: если вы не уверены, какой MX-сервер правильный для данного домена, вы можете использовать эту классную команду, чтобы узнать, что это такое — я думаю, вы действительно в этом разберетесь, чувак .

dig -tmx payetteforward.com

Далее перезапустите postfix, набрав service postfix restart , произнесите молитву и повторите попытку. Если получится, купи мне Корвет. Если это не так, дайте мне знать в разделе комментариев, и мы сможем работать вместе, чтобы сделать это несколько понятным руководством по устранению этой проблемы.

Postfix Post Fix

На данный момент будьте благодарны, что проблема решена: вы отключили локальную доставку на локальном сервере электронной почты, на котором работает postfix или iRedMail, и вместо этого используете правильные адреса MX.

Отключить локальную доставку электронной почты с помощью Postfix и iRedMail