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 05:55 | Nová verze

    Po více než 7 měsících vývoje od vydání verze 6.8 byla vydána nová verze 6.9 svobodného open source redakčního systému WordPress. Kódové jméno Gene bylo vybráno na počest amerického jazzového klavíristy Gene Harrise (Ray Brown Trio - Summertime).

    Ladislav Hagara | Komentářů: 1
    dnes 05:11 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za listopad (YouTube).

    Ladislav Hagara | Komentářů: 0
    dnes 01:55 | Nová verze

    Google Chrome 143 byl prohlášen za stabilní. Nejnovější stabilní verze 143.0.7499.40 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 13 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 1
    včera 19:33 | Nová verze

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl 3,2 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 26,42 %. Procesor AMD používá 66,72 % hráčů na Linuxu.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | IT novinky

    Canonical oznámil (YouTube), že nově nabízí svou podporu Ubuntu Pro také pro instance Ubuntu na WSL (Windows Subsystem for Linux).

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | IT novinky

    Samsung představil svůj nejnovější chytrý telefon Galaxy Z TriFold (YouTube). Skládačka se nerozkládá jednou, ale hned dvakrát, a nabízí displej s úhlopříčkou 10 palců. V České republice nebude tento model dostupný.

    Ladislav Hagara | Komentářů: 2
    včera 12:33 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 25.11.1. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 1
    včera 04:00 | Nová verze

    Byla vydána nová verze 15.0 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 6
    včera 03:00 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04 1.1 a 20.04 OTA-11. Vedle oprav chyb a drobných vylepšení je řešen také středně závažný bezpečnostní problém.

    Ladislav Hagara | Komentářů: 0
    včera 00:33 | IT novinky Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (15%)
     (25%)
     (16%)
     (18%)
    Celkem 426 hlasů
     Komentářů: 18, poslední včera 18:34
    Rozcestník

    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: 525×
    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.