- Chris Hardie has updated his qmail anti-spam howto
- Dan's rblsmtpd blocks spam using the RBL and other DNS-based lists. Because of the size of the RSS zone, they have removed the necessary TXT records that rblsmtpd relies on.
- Alan Curry has a patch to rblsmtpd to make it work with A records.
- David Jonas has a patch to rblsmtpd to let you ignore certain A record responses from the bl lookup.
- Russell Nelson has a pair of programs to help [http://www.qmail.org/spam-filter keep spam out of your mailbox.
- Jason R. Mastaler has improved TMDA, an anti-spam system.
- Lionel Widdifield wrote wrote an anti-spam patch.
- qregex provides full regexp matching on envelope addresses.</a>With REs (Regular Expresions) it becomes quite easy to filter out email addresses that contain invalid characters or simply aren't a real address.
- Andrew St. Jean has added case insensitive pattern matching and logging when a match is found.
- Chris Johnson has a patch to implement tarpitting in qmail-smtpd. If you don't know what tarpitting is, it's the practice of inserting a small sleep in an SMTP session for each RCPT TO after some set number of RCPT TOs. The idea is to thwart spammers who would hand your SMTP server a single message with a long list of RCPT TOs.
- Nagy Balazs wrote a patch to ensure that the domain name on the envelope sender is a valid DNS name. This is not terribly effective against spammers, but I list it here because some people want it.
- Jon Rust wrote qrblcheck, which reads a message on stdin, grabs the IP address from the Received lines and checks it against five different DNS-based spamlists.
- Jay Soffian has a qmail-queue replacement to [http://www.qmail.org/qqrbl filter against DNS spamlists.
It uses Bruce Guenter's QMAILQUEUE patch. Matching email is not rejected, but instead an X-RBL: header is added, for filtering at the delivery layer.
- O'Shaughnessy Evans has a set of shell scripts that comprise a spam-filtering system called spamrule.
- Ask Bjørn Hansen wrote qpsmtpd, a smtp server with filtering tools. It's written in perl.
- Erwin Hoffman's SPAMCONTROL combines many spam control features. Includes SMTP Auth with CRAM-MD5 support.
- EnderUNIX Team wrote spamGuard, which scans your log files for "too much" email from a particular user, and adds them to badmailfrom.
- Russell Nelson has a patch to reject relay probes generated by so-called anti-spammers. These relay probes have '!', '%' and '@'in the local (username) part of the address.
- Dale Woolridge, James Law, and Moto Kawasaki's spam throttle patch provides a method to rate limit/stutter spam (message throughput) via a highly parameterized control interface. As of release 2.01, tcpserver is no longer a strict requirement.
- James Grinter has instructions on using SpamAssassin. It's a script that runs from a .qmail file.
- Chris Kennedy has written the BlackHole spam/virus filter.
- Noel Mistula wrote checkhab, which checks for HTML, attachments, and binaries in email, and blocks them.
- Gerrit Pape wrote qconfirm, a delivery confirmation process for a mail address.
- Chris Johnson wrote qdated to create and verify timestamped e-mail addresses. These addresses expire after a user-configurable period of time; any mail sent to an
expired address will bounce.
- Roger Merchberger has some techniques to deal with [http://www.30below.com/~zmerch/qmail/ double-bouncing
- q-sorter sorts your email into separate inboxes.
- Net::QMTP - This perl module implements an object oriented interface to a Quick Mail Transfer Protocol (QMTP) client which enables a perl program to
send email by QMTP.
- Georg Lehner tells how to configure [http://www.magma.com.ni/~jorge/spamassassin.html Qmail with Spamassassin.
- Jeffrey Clement wrote a time-limited email-address program called datedmail.
- Luca Morettoni wrote qmail-rblchk, which checks the IP address in the Received: line of an email message on stdin against named DNSBLs.
- Jean-Eudes ONFRAY wrote a [http://www.qmail.org/rhsbl.patch rhsbl patch[ for tcpserver. This lets you block or whitelist email based on the reverse-DNS hostname rather than IP.
- Christophe Saout wrote a SPF checker that runs inside qmail-smtpd and is written using the native dns and string functions that come with qmail.
- Markus Stumpf has a patch for qmail-smtpd that rejects W32/Sober-G at the SMTP level.
- Jay Soffian has modifies qmail-smtpd to fork/exec $RCPTCHECK at the RCPT TO:</a>. $RCPTCHECK is run in the same environment as qmail-smtpd. Additionally $SENDER is set to the envelope from and $RECIPIENT is set to the envelope recipient (for the
current rcpt to:). Based on the return code (exit value) of $RCPTCHECK, the rcpt to: address will either be accepted or rejected.