abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 02:20 | Zajímavý článek

David Revoy, autor open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu, upozorňuje na svém blogu, že nový Inkscape 0.92 rozbíjí dokumenty vytvořené v předchozích verzích Inkscape. Problém by měl být vyřešen v Inkscape 0.92.2 [reddit].

Ladislav Hagara | Komentářů: 0
dnes 02:02 | Komunita

Øyvind Kolås, hlavní vývojář grafických knihoven GEGL a babl, které využívá grafický program GIMP, žádá o podporu na Patreonu. Díky ní bude moci pracovat na vývoji na plný úvazek. Milník 1000 $, který by stačil na holé přežití, se již téměř podařilo vybrat, dalším cílem je dosažení 2500 $, které mu umožní běžně fungovat ve společnosti.

xkomczax | Komentářů: 12
včera 23:54 | Pozvánky

DevConf.cz 2017, již devátý ročník jedné z největších akcí zaměřených na Linux a open source ve střední Evropě, proběhne od pátku 27. ledna do neděle 29. ledna v prostorách Fakulty informačních technologií Vysokého učení technického v Brně. Na programu je celá řada zajímavých přednášek a workshopů. Letos je povinná registrace.

Ladislav Hagara | Komentářů: 0
včera 22:11 | Nová verze

Byla vydána verze 1.0.0 emulátoru terminálu Terminology postaveného nad EFL (Enlightenment Foundation Libraries). Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
20.1. 17:00 | Nová verze

Byl vydán Docker 1.13. Přehled novinek na YouTube a v poznámkách k vydání na GitHubu. Docker umožňuje běh aplikací v softwarových kontejnerech (Wikipedia).

Ladislav Hagara | Komentářů: 4
20.1. 15:51 | Komunita

Mozilla.cz informuje, že nástroje pro webové vývojáře se možná oddělí od Firefoxu a stanou doplňkem. Nástroje pro webové vývojáře prošly velkým přepisem a tým, který se stará o jejich vývoj, by uvítal možnost jejich častějších aktualizacích nezávisle na vydávání nových verzí Firefoxu.

Ladislav Hagara | Komentářů: 9
20.1. 07:00 | Humor

Čtenářům AbcLinuxu vše nejlepší k dnešnímu Dni zvýšení povědomí o tučňácích (Penguin Awareness Day).

Ladislav Hagara | Komentářů: 0
20.1. 06:00 | Komunita

Bylo spuštěno hlasování o přednáškách a workshopech pro letošní InstallFest, jenž proběhne o víkendu 4. a 5. března v Praze. Současně byla oznámena změna místa. InstallFest se letos vrací zpět na Karlovo náměstí do budovy E.

Ladislav Hagara | Komentářů: 0
20.1. 02:48 | Komunita

Greg Kroah-Hartman potvrdil, že Linux 4.9 je jádrem s prodlouženou upstream podporou (LTS, Long Term Support). Podpora je plánována do ledna 2019. Aktuální jádra s prodlouženou podporou jsou tedy 3.2, 3.4, 3.10, 3.12, 3.16, 3.18, 4.1, 4.4 a 4.9.

Ladislav Hagara | Komentářů: 0
20.1. 00:11 | Zajímavý článek

Výrobce síťových prvků, společnost Netgear, spustila nový program, který slibuje vývojářům, expertům, ale i běžným uživatelům vyplacení finanční odměny za nalezení bezpečnostních chyby v jejich produktech. Za nalezení zranitelnosti v hardware, API nebo mobilní aplikaci nabízí odměnu od 150 do 15 tisíc dolarů (dle závažnosti).

Michal Makovec | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (10%)
 (2%)
 (74%)
 (3%)
 (10%)
Celkem 360 hlasů
 Komentářů: 25, poslední včera 13:34
Rozcestník
Reklama

Dotaz: Postfix a duplicitní emaily

Zdeněk Zámečník avatar 20.5.2013 22:04 Zdeněk Zámečník | skóre: 26
Postfix a duplicitní emaily
Přečteno: 352×
Ahoj, řeším na Debianu Squeeze zapeklitý problém. Dlouhou dobu jsem provozoval Postfix ve spojení s Dovecotem a Spamassassinem jako content filtrem. Teď bych však rád Spamassassin nahradil Mailscannerem a v tom je kámen úrazu.

Spamassassin totiž jako content filtr uměl zahazovat duplicitní emaily. Tím mám na mysli emaily s identickým message-id. Takže pokud jsem poslal email na adresu nějakého uživatele a zároveň na alias, který obsahoval opět tutéž adresu, email se doručil každému příjemci jen jednou. Dost lidí si na to zvyklo, že se jim schránka neplní duplicitními emaily a rád bych tuto funkcionalitu zachoval.

Mailscanner ale funguje na trošku jiném principu. Emaily určené ke skenování se pouze přesunou do fronty HOLD, kde je Mailscanner oskenuje a poté vrátí do fronty ke zpracování Postfixu.

Dlouho jsem hledal řešení, podobný problém řeší mnoho jiných lidí, ale ničeho kloudného jsem se nedopátral. Našel jsem pouze toto:
  1. Do /etc/postfix/main.cf přidat enable_original_recipient = no, což v mém případě funguje, ale pouze u lokálně poslaných emailů. U emailů přicházejících z jiného SMTP se duplicita neodstraní (ačkoliv message-id je u zdvojených zpráv stejné).
  2. Přidat do /etc/postfix/master.cf k smtp listeneru direktivu -o receive_override_options=no_address_mappings. Toto funguje částečně. Pokud email přijde z cizího SMTP, příjemce obdrží chybovou zprávu, že jeden z příjemců (anebo více) neexistují, email se však doručí. Někde jsem našel zmínky o tom, že je dobré toto zkombinovat s dummy content filtrem. To jsem zkoušel, ale email se pro změnu zase doručoval dvakrát.
  3. Přidat do /etc/postfix/master.cf k pickup direktivu -o receive_override_options=no_address_mappings. Toto v mém případě nefunguje.
/etc/postfix/main.cf:
#################### GENERAL SETTINGS #################
smtpd_banner = $myhostname - Restricted SMTP server is waiting for your HELO/EHLO
myhostname = mx1.example.com
mydestination = $mynetworks
mynetworks = 127.0.0.1
inet_interfaces = all
disable_vrfy_command = yes
virtual_mailbox_base = /var/vmail/
message_size_limit = 40720000
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_auth_enable = yes
inet_protocols = ipv4
maximal_queue_lifetime = 2d
bounce_queue_lifetime = 6h
smtp_mx_address_limit = 0
smtpd_sasl_authenticated_header = yes
smtp_connect_timeout = 60s
smtp_host_lookup = native,dns

#enable_original_recipient = no
#smtpd_disable_ehlo_keywords = silent-discard, dsn

########## SECURITY SETTINGS AND RESTRICTIONS ##########
smtpd_tls_ca_file       = /etc/ssl/certs/StartCom_Certification_Authority.pem
smtpd_tls_cert_file     = /etc/ssl/private/postfix.2012.crt
smtpd_tls_key_file      = /etc/ssl/private/wildcard.key
smtpd_use_tls           = yes

smtpd_restriction_classes = greylist
greylist = check_policy_service inet:127.0.0.1:10023
#spf-policyd_time_limit = 3600s
smtpd_recipient_limit = 2000

header_checks           = regexp:/etc/postfix/header_checks
mime_header_checks      = regexp:/etc/postfix/mime_header_checks
local_recipient_maps =
smtpd_soft_error_limit                  = 2
smtpd_hard_error_limit                  = 15
smtpd_error_sleep_time                  = 3s
smtpd_sasl_security_options     = noanonymous
smtpd_sasl_auth_enable          = yes
smtpd_sasl_type                 = dovecot
smtpd_sasl_path                 = private/auth
smtpd_helo_required             = yes
smtpd_client_connection_rate_limit      = 0

relay_domains = test.example.com
smtpd_recipient_restrictions = permit_mynetworks
                               check_relay_domains


smtpd_recipient_restrictions =
        reject_unauth_pipelining
        check_sender_access hash:/etc/postfix/sender_access
        check_recipient_access hash:/etc/postfix/roleaccount_exceptions
        permit_sasl_authenticated
        permit_mynetworks
        reject_unknown_sender_domain
        reject_non_fqdn_recipient
        reject_non_fqdn_sender
        check_helo_access pcre:/etc/postfix/helo_check
        reject_unknown_recipient_domain
#       reject_unknown_sender_domain
        reject_unknown_recipient_domain
        reject_non_fqdn_hostname
        reject_invalid_hostname
        reject_unauth_destination
#       check_policy_service unix:private/policy-spf
        check_sender_access hash:/etc/postfix/greylist_sender_exceptions
        check_client_access regexp:/etc/postfix/check_client_fqdn

smtpd_sender_restrictions =
        reject_unknown_sender_domain
        permit_sasl_authenticated
        permit_mynetworks
        check_sender_access hash:/etc/postfix/greylist_sender_exceptions

smtpd_data_restrictions =
        reject_multi_recipient_bounce


################ ALIASES AND MAILBOXES #################
transport_maps  = hash:/etc/postfix/transport.cf

virtual_mailbox_maps    = ldap:/etc/postfix/ldap_mailbox_maps.cf
virtual_mailbox_domains = ldap:/etc/postfix/ldap_domains_maps.cf
virtual_alias_maps      = ldap:/etc/postfix/ldap_alias_maps.cf,ldap:/etc/postfix/ldap_mailinglist_maps.cf
virtual_uid_maps        = static:2000
virtual_gid_maps        = static:2000
virtual_minimum_uid     = 2000
/etcpostfix/master.cf:
smtp      inet  n       -       -       -       -       smtpd
pickup    fifo  n       -       -       60      1       pickup
cleanup   unix  n       -       -       -       0       cleanup
qmgr      fifo  n       -       n       300     1       qmgr
tlsmgr    unix  -       -       -       1000?   1       tlsmgr
rewrite   unix  -       -       -       -       -       trivial-rewrite
bounce    unix  -       -       -       -       0       bounce
defer     unix  -       -       -       -       0       bounce
trace     unix  -       -       -       -       0       bounce
verify    unix  -       -       -       -       1       verify
flush     unix  n       -       -       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
proxywrite unix -       -       n       -       1       proxymap
smtp      unix  -       -       -       -       -       smtp
relay     unix  -       -       -       -       -       smtp
	-o smtp_fallback_relay=
showq     unix  n       -       -       -       -       showq
error     unix  -       -       -       -       -       error
retry     unix  -       -       -       -       -       error
discard   unix  -       -       -       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       -       -       1       anvil
scache    unix  -       -       -       -       1       scache
maildrop  unix  -       n       n       -       -       pipe
  flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}
uucp      unix  -       n       n       -       -       pipe
  flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail    unix  -       n       n       -       -       pipe
  flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp     unix  -       n       n       -       -       pipe
  flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient
scalemail-backend unix	-	n	n	-	2	pipe
  flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension}
mailman   unix  -       n       n       -       -       pipe
  flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
  ${nexthop} ${user}
dovecot unix    -       n       n       -       -      pipe
  flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${user}@${nexthop} -a ${recipient}
Názory na fórech se dost různí. Vývojáři Dovecotu jsou přesvědčeni, že toto by měl řešit MTA, tedy Postfix. Někdo jiný je zase názoru, že by to měl z výkonostních důvodů (paralelní zpracování) řešit MDA/LDA, což je v tomto případě Dovecot. Každopádně Dovecot toto řešit v mojí verzi neumí. Verze 2.x to umí řešit pouze pomocí ošklivého hacku v Sieve.

Nějaký nápad, co s tím? Díky za postřehy.

Řešení dotazu:


Odpovědi

21.5.2013 19:54 petr
Rozbalit Rozbalit vše Re: Postfix a duplicitní emaily
Cyrus umí Duplicate delivery supression.
Řešení 1× (Zdeněk Zámečník (tazatel))
Zdeněk Zámečník avatar 21.5.2013 20:03 Zdeněk Zámečník | skóre: 26
Rozbalit Rozbalit vše Re: Postfix a duplicitní emaily
Díky za tip. Cyrus jsem používal kdysi dávno a trochu jej znám. Ale jak tak koukám, tak Dovecot je celkově o kus napřed.

Nakonec jsem zjistil, že ani ten Spamassassin duplicitní zprávy neodchytí na 100% a že direktiva enable_original_recipient = no pro Postfix skutečně funguje úplně stejně jako když tam Spamassassin ponechám jako content filter.

Založit nové vláknoNahoru

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

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.