[Pymilter] My own version of the bms.py milter

Tony Nelson tonynelson at georgeanelson.com
Wed Dec 21 00:18:31 EST 2016


I've been using (and modifying) the bms.py milter for almost 10 years
now, and it seems time to give back.  I have tarballs on my server,
that build properly with rpmbuild -ta:

     http://www.georgeanelson.com/milter-0.9.tar.gz
     http://www.georgeanelson.com/pymilter-1.0.tar.gz

They were made from the tarballs on Sourceforge (Revision 1.207
2016/04/22 16:05:14  customdesigned).  I can put my changes into git
(with some effort and study), if desired.  Probably the best way to
see what I've done is with Meld on the directories (well, I use diff
and vimdiff).

My use of the milter emphasizes detecting dynamic hosts and forbidding
them to relay (dynip() has seen much work) or lie, with my own simple
greylisting for non-relaying dynamic hosts that have real HELO names,
followed by the Spamhaus Zen and DBL rbls to filter what is left.
I've made many other changes, as well.

What I did works pretty well and much of the spam that gets through
comes from real mailservers at spam companies, so I have not used
SPF/SRS/SES or Dspam or DKIM or any of the rest.  I don't think I've
broken any of them, and I may use them someday.

BTW: according to the Milter docs, each callback during a connection
can be on a different thread, so threading().local is probably wrong.
I've fixed that.

-- 
____________________________________________________________________
TonyN.:'                       <mailto:tonynelson at georgeanelson.com>
       '                              <http://www.georgeanelson.com/>



More information about the Pymilter mailing list