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í
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
včera 21:21 | Nová verze Ladislav Hagara | Komentářů: 0
včera 11:44 | Zajímavý projekt

Na Indiegogo byla spuštěna kampaň na podporu herní mini konzole a multimediálního centra RetroEngine Sigma od Doyodo. Předobjednat ji lze již od 49 dolarů. Požadovaná částka 20 000 dolarů byla překonána již 6 krát. Majitelé mini konzole si budou moci zahrát hry pro Atari VCS 2600, Sega Genesis nebo NES. Předinstalováno bude multimediální centrum Kodi.

Ladislav Hagara | Komentářů: 0
včera 00:10 | Nová verze

Byla vydána verze 4.7 redakčního systému WordPress. Kódové označením Vaughan bylo vybráno na počest americké jazzové zpěvačky Sarah "Sassy" Vaughan. Z novinek lze zmínit například novou výchozí šablonu Twenty Seventeen, náhledy pdf souborů nebo WordPress REST API.

Ladislav Hagara | Komentářů: 1
6.12. 12:00 | Zajímavý projekt

Projekt Termbox umožňuje vyzkoušet si linuxové distribuce Ubuntu, Debian, Fedora, CentOS a Arch Linux ve webovém prohlížeči. Řešení je postaveno na projektu HyperContainer. Podrobnosti v často kladených dotazech (FAQ). Zdrojové kódy jsou k dispozici na GitHubu [reddit].

Ladislav Hagara | Komentářů: 24
6.12. 11:00 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě CVE-2016-8655 v Linuxu zneužitelné k lokální eskalaci práv. Chyba se dostala do linuxového jádra v srpnu 2011. V upstreamu byla opravena minulý týden [Hacker News].

Ladislav Hagara | Komentářů: 2
5.12. 22:00 | Komunita

Přibližně před měsícem bylo oznámeno, že linuxová distribuce SUSE Linux Enterprise Server (SLES) běží nově také Raspberry Pi 3 (dokumentace). Obraz verze 12 SP2 pro Raspberry Pi 3 je ke stažení zdarma. Pro registrované jsou po dobu jednoho roku zdarma také aktualizace. Dnes bylo oznámeno, že pro Raspberry Pi 3 je k dispozici také nové openSUSE Leap 42.2 (zprávička). K dispozici je hned několik obrazů.

Ladislav Hagara | Komentářů: 6
5.12. 06:00 | Zajímavý software

OMG! Ubuntu! představuje emulátor terminálu Hyper (GitHub) postavený na webových technologiích (HTML, CSS a JavaScript). V diskusi k článku je zmíněn podobný emulátor terminálu Black Screen. Hyper i Black Screen používají framework Electron, stejně jako editor Atom nebo vývojové prostředí Visual Studio Code.

Ladislav Hagara | Komentářů: 50
5.12. 06:00 | Zajímavý článek

I letos vychází řada ajťáckých adventních kalendářů. QEMU Advent Calendar 2016 přináší každý den nový obraz disku pro QEMU. Programátoři se mohou potrápit při řešení úloh z kalendáře Advent of Code 2016. Kalendáře Perl Advent Calendar 2016 a Perl 6 Advent Calendar přinášejí každý den zajímavé informace o programovacím jazyce Perl. Stranou nezůstává ani programovací jazyk Go.

Ladislav Hagara | Komentářů: 10
3.12. 16:24 | Nová verze

Byla vydána Mageia 5.1. Jedná se o první opravné vydání verze 5, jež vyšla v červnu loňského roku (zprávička). Uživatelům verze 5 nepřináší opravné vydání nic nového, samozřejmě pokud pravidelně aktualizují. Vydání obsahuje všechny aktualizace za posledního téměř půldruhého roku. Mageia 5.1 obsahuje LibreOffice 4.4.7, Linux 4.4.32, KDE4 4.14.5 nebo GNOME 3.14.3.

Ladislav Hagara | Komentářů: 17
3.12. 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (8%)
 (5%)
 (3%)
Celkem 785 hlasů
 Komentářů: 50, poslední 29.11. 15:50
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: 345×
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.