text_combined: gwardpythonnet greg ward followups spambayespythonorg please unless youre specifically concerned particular bit email policy pythonorg ok much fiddling tweaking etceximexim4conf etceximlocal_scanpy mailpythonorg fairly confident start harvesting incoming email moments notice record heres works exim4conf works almost exactly file etceximharvest exist junk mail condition detected exim acls access control lists handled entirely exim4conf message rejected ever gets local_scanpy covers diverse cases message known spammer reject every rcpt command messageid header 8bit chars subject rejected message headersbody read main things changed absence etceximharvest dont check 8bit chars header vast majority hits test bounces asian isp remaining hits handled spamassassin header sender verification ie ensure theres verifiable email address least one replyto sender late possible requires dns lookups slow also make messages rejected merely deferred dns lookups timeout etceximharvest exists behaviour acls exim4conf suddenly changes instead rejecting recipients messages add xreject header message header purely internal use records name folder rejected message saved also gives smtp error message ultimately used reject message thus messages seen local_scanpy looks xreject header found uses folder name specified save message rejects smtp error message also given xreject currently xreject retained saved messages message tagged xreject local_scanpy runs usual virus spam checks namely homebrew scan attachments filenames look like windows executables run spamassassin logic basically virus folder virus else run spamassassin score 100 folder rejectedspam elif score 50 folder caughtspam finally local_scanpy writes message designated folder far biggest folder accepted server handles 20005000 incoming messages per day maybe 100500 junk mail oops realized havent written code actually saves message dohh also havent written anything discriminate personal email must sigh finally big catch waiting youve read message headers body actually reject message problematic certain broken mtas including used spammers dont consider 5xx data permanent error keep retrying dohh minor annoyance currently fair amount stuff rejected rcpt time harvest mode everything exception people probing open relays rejected data time cooked something called asbl automated sender blacklist berkeley db file maps sender_ip sender_address expiry time local_scan rejects message sender_ip sender_address whatever reason including finding xreject header added acl exim4conf adds record asbl expiry time 3 hours future meanwhile theres acl exim4conf checks records asbl theres record current sender_ip sender_address hasnt expired yet reject recipients without ever looking message headers body downside pointofview corpus collection jerk busily spamming pythonorg one smtp connection per address likely get one copy win youre thinking reducing server load bandwidth im sure helpful training spam detectors tim happy harvesting greg greg ward httpwwwgergca budgets red lets tax religion dead kennedys mon 9 sep 2002 170110 0400 spambayes pythonorg email harvesting ready roll