Portál AbcLinuxu, 20. dubna 2024 04:00


Dotaz: Postfix přijímá poštu i pro účty neudené v lokální ani virtuální mapě

23.2.2012 21:24 portix
Postfix přijímá poštu i pro účty neudené v lokální ani virtuální mapě
Přečteno: 242×
Odpovědět | Admin
Ahoj. Prosím o pomoc s nastavením postfixe. Chtěl bych, aby postfix přijímal lokální poštu jen pro určité uživatele, ale to nefunguje. Poštu vždy přijme a potom se v logu objeví chyba, že třeba nemá přístup do daného domovského adresáře. Rovněž pro virtuální schránky postfix vždy poštu přijme, projde amavisem, předá ji dovecotu a až ten jí odmítně kvůli neexistující schránce. Chci, aby poštu odmítal okamžitě. Myslel jsemm, že k tomu slouží toto nastavení:
# zde uvadim virtualni mapy z toho duvodu, ze v tech se nevyskytuji zadni lokalni uzivatele a na nich chci vyzkouset odmitani posty
local_recipient_maps = $virtual_mailbox_maps

virtual_mailbox_maps = proxy:mysql:/etc/postfix/sql/mysql_virtual_mailbox_maps.cf

virtual_transport = lmtp:unix:private/dovecot-lmtp



#restrikce

smtpd_sender_restrictions = check_sender_access regexp:/etc/postfix/tag_as_originating.re,
                            permit_mynetworks,
                            permit_sasl_authenticated,
                            check_sender_access regexp:/etc/postfix/tag_as_foreign.re

smtpd_recipient_restrictions = permit_mynetworks,
                               permit_sasl_authenticated,
                               reject_unknown_recipient_domain,
                               reject_unlisted_recipient,
                               reject_unauth_destination

smtpd_helo_restrictions = permit_mynetworks,
                          reject_invalid_helo_hostname
V sql dotazech chyba nebude, zkoušel jsem i lokální mapu "local_recipient_maps = hash:/etc/postfix/local_recipient_map", kde byl uveden jeden nesmyslný uživatel "nesmysl nesmysl", tu jsem přes postmap zkompiloval a stejně se to snaží doručit poštu třeba i pro uživatele "vmail". V čem mám chybu?
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

24.2.2012 00:55 portix
Rozbalit Rozbalit vše Re: Postfix přijímá poštu i pro účty neudené v lokální ani virtuální mapě
Odpovědět | | Sbalit | Link | Blokovat | Admin
Tak zvenku to funguje, ale pokud mail posílám přímo z mail serveru pomocí "echo "ahoj" | mutt -s "aaa" -- root", pak to naprosto ignoruje recipient maps. Zjistil jsem, že toto chování je nezávislé na mynetworks (pokud přidám "venkovního" klienta do mynetworks, stejně to správně recipienty kontroluje). Proč se to chová z localhostu tak strašně špatně a jak tomu zabránit? Které konfigurační parametry to ovlivňují?
24.2.2012 01:36 xfdz
Rozbalit Rozbalit vše Re: Postfix přijímá poštu i pro účty neudené v lokální ani virtuální mapě
Z localhostu se to předává přímo do fronty zpráv k doručení (tzn. nenavazuje smtp relaci a tak se zpráva nemá s čím porovnat). Více viz
man
       sendmail(1), Sendmail-compatible interface
       pickup(8), mail pickup daemon
       qmgr(8), queue manager
       smtpd(8), SMTP server
       flush(8), fast flush service
       postsuper(1), queue maintenance
       postalias(1), create/update/query alias database
       postdrop(1), mail posting utility
       postfix(1), mail system control
       postqueue(1), mail queue control
       syslogd(8), system logging

a nebo manuálová stránka k mutt pro informaci jak jej přinutit k navazování SMTP relace místo vkládání do sendmailu.
24.2.2012 02:14 portix
Rozbalit Rozbalit vše Re: Postfix přijímá poštu i pro účty neudené v lokální ani virtuální mapě
Už to v tom logu vidím, jako první se volá pickup místo smtpd. Není ale způsob, jak donutit postfix, aby i přes lokální předání zkontroloval ten seznam příjemců? Přeci jen mutt není jediný, kdo může přes toto rozhraní posílat a blokovat přístup k rozhraní není také nejšťastnější.
24.2.2012 02:59 xfdz
Rozbalit Rozbalit vše Re: Postfix přijímá poštu i pro účty neudené v lokální ani virtuální mapě
Viz man pickup. Hint: content_filter
24.2.2012 03:03 xfdz
Rozbalit Rozbalit vše Re: Postfix přijímá poštu i pro účty neudené v lokální ani virtuální mapě
Potažmo man cleanup.
24.2.2012 03:54 portix
Rozbalit Rozbalit vše Re: Postfix přijímá poštu i pro účty neudené v lokální ani virtuální mapě
Ty mám načtený, ale stejně jsem se řešení nedopátral. Asi mohu zneužít ten content_filter na cestě k amavisu a vynutit si kontrolu příjemců, ale v případě standardního smtpd příjmu by pak kontrola probíhala 2x. Další možnost by bylo naprogramovat si vlastní milter neboť cleanup by měl umět volat milter podle původu zprávy (non_smtpd_milters), ale neumím programovat natolik dobře, aniž bych si do toho nezanesl nějaké chyby.

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.