meillo@173: meillo@173: %(eisentraut05: page 25) ``Ganz ohne Analyse während der SMTP-Phase kommt sowieso kein MTA aus, und es ist eine Frage der Einschätzung, wie weit man diese Phase belasten möchte.'' meillo@173: meillo@173: meillo@173: checks while smtp dialog (pre-queue): in MTA implemented (need to be fast) meillo@173: checks when mail is accepted and queued: external (amavis, spamassassin) meillo@173: meillo@173: where to filter what meillo@173: meillo@173: meillo@173: postfix: meillo@173: content-filter: arbitrary programs that talk smtp, can filter, rewrite or delete mail meillo@173: - before-queue-c-f: need to be fast, can prevent system load meillo@173: - after-queue-c-f: need more resources in global, more load meillo@173: meillo@173: exim: meillo@173: acls: to filter, what to accept (hook into smtp dialog) (complex) meillo@173: routers: take recipient address and choose a matching transport meillo@173: transports: ways to deliver mail (smtp, local) meillo@173: meillo@173: meillo@173: postfix: after-queue-content-filter (smtp communication) meillo@173: exim: content-scan-feature (analyses the content: MIME stuff, blacklisted words, virus scanning) (all within smtp dialog) meillo@173: sendmail: milter (tcp or unix sockets) meillo@173: meillo@173: meillo@173: meillo@173: meillo@173: meillo@173: meillo@173: meillo@173: %what do do with recognized mail? meillo@173: %- reject (only possible if recognized during SMTP dialog) meillo@173: %- forward with added header line or changed subject meillo@173: %(eisentraut05: page 18--20) meillo@173: meillo@173: check incoming and outgoing mail meillo@173: (eisentraut05: page 21) meillo@173: meillo@173: meillo@173: milter: meillo@173: communication with external daemons via a special protocol meillo@173: at various times in the smtp dialog possible meillo@173: can reject, delete or alter messages meillo@173: http://milter.org meillo@173: (eisentraut05: page 69) meillo@173: meillo@173: meillo@173: use SA with exim: meillo@173: - with transport: piped into sa meillo@173: - content-scanning-feature: with ACL during smtp dialog meillo@173: - plugin: sa-exim meillo@173: - within amavis meillo@173: meillo@173: use SA with sendmail: meillo@173: - with milter meillo@173: - within mimedefang or amavis meillo@173: meillo@173: use SA with postfix: meillo@173: - within amavis or mailfilter meillo@173: meillo@173: meillo@173: meillo@173: meillo@173: DNSBL can contain: meillo@173: - open relays meillo@173: - dynamic IP addresses meillo@173: - verified spam sources meillo@173: - open multistage relays meillo@173: - vulnerable CGI scripts meillo@173: - open proxy servers meillo@173: example: NJABL (http://njabl.org) meillo@173: meillo@173: DNSBL in smpt dialog is aggressive and can lead to problems (eisentraut05: page 126) meillo@173: meillo@173: meillo@173: greylisting: meillo@173: if first contact from that address: temp failure and add to list meillo@173: sender will retry, then accept meillo@173: meillo@173: ``Das Greylisting zählt derzeit zu den effektivsten Methoden, um gegen unerwünschte E-Mails vorzugehen. Allein durch Greylisting können derzeit rund 70\% des potenziellen Spam-Aufkommens auf einem Mailserver vollständig geblockt werden. Allerdings ist es auch nur eine Frage der Zeit, bis sich die Gemeinde der Spammer und Virenautoren auf diese Methode der Spam-Bekämpfung eingerichtet und entsprechende Queues in ihre Software eingebaut hat.''(eisentraut05: page 138) meillo@173: Probleme: load balancing using multiple servers with different IPs. meillo@173: postfix: with policy server meillo@173: exim: direct in config meillo@173: sendmail: with greylist milter meillo@173: meillo@173: meillo@173: meillo@173: hashcash