Qpsmtpd


qpsmtpd is an SMTP daemon written in Perl. It was originally designed to be a drop-in replacement for qmail-smtpd, the SMTP component of qmail, and it is now also compatible with Postfix, Exim, sendmail and virtually any software that "speaks SMTP". It has a flexible plugin system, making it easy to interoperate with other pieces in a mail system.
Its main purpose is to allow mail administrators to perform more advanced spam filtering than is possible with other SMTP daemons. As one example of dozens, the earlytalker plugin blocks many viruses and mass mailers based on their characteristic violation of basic protocol, even before they start sending mail data.
The program's main author is Ask Bjørn Hansen. It is licensed under the MIT License.

Qpsmtpd Plugins

A defining virtue of qpsmtpd is its plugin system and collection of plugins. In addition to basic plugins qpsmtpd has a suite of additional plugins that provide integration with external mail filters and processors as well as implementations of many email technologies. The following list is just a few of the many qpsmtpd plugins.
NameDescription
GeoIPUse GeoIP databases to report geographic information about incoming connections, including distance in km. Assign negative karma from senders that are "too far" away.
p0fp0f uses TCP fingerprint info to identify the senders Operating System, network distance, and more.
karmasender history. Treat senders differently based on message heuristics and sending history.
dnsblDNS blacklists
earlytalkerAssure the client doesn't talk before we send the SMTP banner
helovalidate the HELO or EHLO message presented by the sender
auth:*plugins for user authentication include vpopmail, checkpassword, flat_file, and ldap
SPFSender Policy Framework
greylistingtemporary deferrals for unknown senders
headersmessage header validation
URIBLscan message content for blacklisted URLs
Domainkeysvalidate domainkeys signatures on incoming mail
DKIMvalidate DKIM signatures and DKIM sign outgoing messages
DMARCimplements the draft DMARC specification for email authentication
SpamAssassinthe venerable spam detector
dspamDSPAM is a bayesian anti-spam filter that learns really fast.
AntiVirusA collection of plugins for AVE, Bitdefender, ClamAV, hbevd, Sophie, and uvscan
FCrDNSvalidate sender has FCrDNS configured