Anonim

Pokúšate sa zakázať miestne doručovanie e-mailov pomocou iRedMail a postfixu na svojom domácom e-mailovom serveri a bijete si hlavu o stenu. Na doručovanie e-mailov používate domáci server, ale doručená pošta žije na druhom serveri. V tomto článku sa podelím o to, čo som sa naučil o ako zakázať miestne doručovanie e-mailov pomocou Postfixu a vynútiť, aby sa všetky e-maily pre určité domény posielali cez ich správne adresy MX.

Tieto informácie som hľadal a hľadal a hľadal na internete a ak mám byť úprimný, ani si nie som istý, či to bude fungovať pre vaše nastavenie.Ale na základe množstva času, ktorý som strávil skúmaním tohto problému, dokonca aj ako expert na servery mimo Linuxu, som si myslel, že svoje zistenia postúpim ďalej a budem sa modliť, aby to pomohlo zmierniť vašu frustráciu.

Chyba

Ak sa vám zobrazuje chyba „Neznámy používateľ v tabuľke virtuálnych poštových schránok“, ste na správnom mieste. V podstate chcete, aby sa postfix prestal pokúšať doručovať e-maily na e-mailové účty na vašom serveri, ktoré neexistujú. Naozaj je toho priveľa?

Oprava Postfixu na zakázanie miestneho doručovania e-mailov pre doménu

V podstate všetky hlavné konfiguračné nastavenia postfixu sú v main.cf, takže súbor môžete otvoriť zadaním vim /etc/postfix/main.cf .

Vyhľadajte riadok virtual_mailbox_domains – okomentujte ho znakom . To úplne zakáže miestne doručovanie e-mailov. Tu je môj:

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

Ďalej nájdite riadok relay_domains a pred čokoľvek, čo tam je, pridajte názvy domén e-mailových adries, ktorých schránky do sú na vašom domáci e-mailový server. Moja vyzerá takto:

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

Nakoniec nájdite riadok transport_maps a pridajte hash:/etc/postfix/transport pred čokoľvek, čo tam je. V ďalšom kroku vytvoríme skutočný súbor. Moja vyzerá takto:

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

Teraz už zostáva len vytvoriť transportný súbor s textom „Zobrať všetky prichádzajúce e-maily na túto doménu a poslať ich namiesto toho cez tento MX server!“

Vytvorte súbor zadaním vim /etc/postfix/transport . Pridajte riadok pre každú doménu, pre ktorú chcete zakázať lokálne doručovanie, ako v príklade nižšie, pričom server MX umiestnite do zátvoriek. Tu je môj:

payetteforward.com smtp:

Potom urobte čokoľvek, čo postmap robí so súborom, zadaním postmap /etc/postfix/transport . To je dôležité – vysvetlil by som prečo, ale som si istý, že vám to prerastá cez hlavu. (Absolútne netuším, čo to robí.)

Trik: Ak si nie ste istý, aký je správny MX server pre danú doménu, môžete použiť tento groovy príkaz, aby ste zistili, čo to je - myslím, že to naozaj prekopete, človeče .

dig -tmx payetteforward.com

Potom reštartujte postfix zadaním service postfix restart , povedzte modlitbu a skúste to znova. Ak to funguje, kúp mi Corvette. Ak nie, dajte mi vedieť v sekcii komentárov a môžeme spolupracovať, aby sme z toho urobili trochu zrozumiteľného sprievodcu riešením tohto problému.

Oprava príspevku Postfix

Zatiaľ buďte vďační, že je problém vyriešený: Zakázali ste miestne doručovanie na lokálnom e-mailovom serveri so systémom postfix alebo iRedMail a namiesto toho používate správne adresy MX.

Zakázať doručovanie miestnych e-mailov pomocou Postfixu a iRedMail