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í
×
    včera 13:44 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 03:44 | Komunita

    Všem na AbcLinuxu vše nejlepší k Valentýnu aneb Dni lásky ke svobodnému softwaru (I love Free Software Day, Mastodon, 𝕏).

    Ladislav Hagara | Komentářů: 23
    13.2. 19:22 | Komunita

    Vývojáři openSUSE Tumbleweed oznámili, že u nových instalací se ve výchozím stavu přechází z AppArmor na SELinux. Uživatelé, kteří chtějí zůstat na AppArmor si mohou AppArmor vybrat v instalátoru.

    Ladislav Hagara | Komentářů: 0
    13.2. 16:44 | Komunita

    Hector "marcan" Martin skončil jako vedoucí projektu Asahi Linux aneb Linux na Apple Siliconu. Projekt ale pokračuje dál.

    Ladislav Hagara | Komentářů: 38
    13.2. 16:33 | Nová verze

    PostgreSQL byl vydán ve verzích 17.3, 16.7, 15.11, 14.16 a 13.19. Řešena je zranitelnost CVE-2025-1094 s CVSS 8.1 a více než 70 chyb.

    Ladislav Hagara | Komentářů: 0
    13.2. 14:22 | Humor

    Dnes je Světový den rádia. Použili jste někdy GNU Radio?

    Ladislav Hagara | Komentářů: 11
    13.2. 12:33 | IT novinky

    Před 33 lety, ve čtvrtek 13. února 1992, se tehdejší Česká a Slovenská Federativní Republika oficiálně (a slavnostně) připojila k Internetu.

    Ladislav Hagara | Komentářů: 2
    12.2. 19:44 | Nová verze

    Byla vydána nová verze 9.10 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    12.2. 16:55 | Nová verze

    Český LibreOffice tým vydává překlad příručky LibreOffice Math 24.8. Math je modul editoru vzorců v kancelářském balíku LibreOffice a poskytuje možnosti rozvržení pro zobrazení matematických, chemických, elektrických nebo vědeckých vzorců ve standardní písemné notaci. Příručka je ke stažení na stránce dokumentace.

    ZCR | Komentářů: 0
    12.2. 05:11 | Zajímavý článek

    Společnost Backblaze zveřejnila statistiky spolehlivosti pevných disků používaných ve svých datových centrech za rok 2024. Ke konci roku 2024 vlastnila 305 180 pevných disků. Průměrná AFR (Annualized Failure Rate), tj. pravděpodobnost, že disk během roku selže, byla 1,57 %. V roce 2023 to bylo 1,70 %. V roce 2022 to bylo 1,37 %.

    Ladislav Hagara | Komentářů: 24
    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: 481×
    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.