Portál AbcLinuxu, 12. května 2025 15:42

Dotaz: local_transport vs. relay transport

3.2.2008 03:08 psm | skóre: 10
local_transport vs. relay transport
Přečteno: 570×
Odpovědět | Admin
nevíte někdo, jak nakonfigurovat transporty v POSTFIXu, aby se např. pro usera s adresou a@domena.cz používal local_transport (místní doručení) a pro b@domena.cz se používal relay_transport na mail server poskytovatele, který má MX záznamy a je na něm stejná doména (domena.cz) ?

Problém je v tom, že uvedená doména musí být v proměnné relay_domains a zároveň nesmí být v mydestination - kdyby tam byla, bude ji zachytávat Postfix a nebude ji přeposílat na smtp poskytovatele bez ohledu na nastavení transportní mapy.

Prostě uživatel a@domena.cz, který je ve firmě, potřebuje psát maily uživateli b@domena.cz, který si je bude stahovat přímo z mailboxu u poskytovatele ...
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Petr Kočvara avatar 3.2.2008 08:09 Petr Kočvara | skóre: 16 | Frýdek-Místek
Rozbalit Rozbalit vše Re: local_transport vs. relay transport
Odpovědět | | Sbalit | Link | Blokovat | Admin
Asi bych k tomuto účelu využil transport maps - viz soubor /etc/postfix/transport, podle kterého by se pak emaily na jednotlivé adresy směrovaly dál. Více viz transport.5
3.2.2008 20:53 psm | skóre: 10
Rozbalit Rozbalit vše Re: local_transport vs. relay transport
No to je jasné (vždyť píšu o transportech - myslel jsem transport_maps ...). Ale už nevím, jak to napsat, aby lokální uživatelé v intranetu (jsou i ve virtual, i když by tam být nemuseli, protože jsou UNIXoví) dostávali poštu doručenou postfixem ve spolupráci s dalšími programy (devecot, fetchmail, squirrelmail) do maildirů lokálně, ale pošta pro jednoho z uživatelů + všichni další externí adresáti aby se doručovala přes relayhost ven na SMTP ISP.

Potíž je v tom, že ten dotyčný user je taky cosi@domena.cz stejně jako ti ve firmě v intranetu.

Jemu ale chci nechat schránku venku u ISP nestahovanou fetchmailem do firemního postfixu o kterém je řeč. A protože v tuto chvíli má dotyčný schránku v firemním serveru a JE VE STEJNÉ DOMÉNĚ jako kolegové, postfix mu poštu od kolegů z intranetu ukládá lokálně místo aby to posílal ven přes relayhost.

Takže ho chci zrušit lokálně a nestahovat mu poštu fetchmailem z venkovní schránky (on si to bude číst tam), ale musím umožnit jeho kolegům posílat mu poštu ven na ISP.

jenže až nebude mít účet ve firmě a bude mít stejnou doménu ($mydestination = $mydomain), tak se postfix bude snažit o prioritní doručení LOCAL a bude řvát, že nemá lokální účet !!!

Jak tohle obejít ? Nějak zrušit výchozí transport = smtp a v transportní mapě mít každého uživatele (není jich moc) a u všech mít LOCAL, jen u toho jednoho RELAY:[nexthop] ?

Poraďte někdo - dík.
Petr Kočvara avatar 3.2.2008 22:25 Petr Kočvara | skóre: 16 | Frýdek-Místek
Rozbalit Rozbalit vše Re: local_transport vs. relay transport
To není problém, stačí do tabulky transport dát záznamy:
domena.cz    local
cosi@domena.cz   smtp:[mailserver.providera.cz]
První zaručí doručení mejlů pro domena.cz lokálně a druhý řádek zpracuje výjimku pro danou adresu, která se předá k doručení ISP. Na pořadí záznamů v tabulce nezáleží, postfix upřednostní více konkrétnější záznam.
6.2.2008 22:35 psm | skóre: 10
Rozbalit Rozbalit vše Re: local_transport vs. relay transport
Díky - já v mezidobí našel chybu :-) U toho speciálního uživatele jsem zapomněl vyhodit jeho řádek z virtual :
cosi@domena.cz   cosi
a taky z canonical :
cosi   cosi@domena.cz
a pak už stačilo do transport dát :
cosi@domena.cz	relay:[smtp.poskytovatel.cz]
Skoro mne překvapilo, že nebylo potřeba tam dát to
domena.cz    local
a přesto transporty v intranetu fungují ..... Jinak v main.cf mám mimo jiné
local_recipient_maps =
protože kontrolu nepotřebuji - buď tam jde pošta jen z lokálu = intranet a nebo přes squirrelmail. Ale zatím se zdá, že vše jede ....

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.