Опитвате се да деактивирате локалната доставка на имейл с 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, кажете молитва и опитайте отново. Ако работи, купете ми Corvette. Ако не стане, уведомете ме в секцията за коментари и можем да работим заедно, за да направим това донякъде разбираемо ръководство за отстраняване на този проблем.
Postfix Post Fix
Засега бъдете благодарни, че проблемът е разрешен: деактивирали сте локалната доставка на вашия локален имейл сървър, работещ с postfix или iRedMail, и вместо това използвате правилните MX адреси.
