qpsmtpd

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
qpsmtpd
DeveloperAsk Bjørn Hansen
Stable release
1.00 / February 17, 2023; 3 years ago (2023-02-17)[1]
Repository
  • {{URL|example.com|optional display text}}Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
Written inPerl
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    Operating systemUnix
    Typeopen-source, Mail transfer agent
    LicenseMIT license
    Websitehttps://smtpd.github.io/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

    [edit | edit source]

    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.

    Name Description
    GeoIP[2] Use GeoIP databases to report geographic information about incoming connections, including distance in km. Assign negative karma from senders that are "too far" away.
    p0f[3] p0f uses TCP fingerprint info to identify the senders Operating System, network distance, and more.
    karma[4] sender history. Treat senders differently based on message heuristics and sending history.
    dnsbl[5] DNS blacklists
    earlytalker[6] Assure the client doesn't talk before we send the SMTP banner
    helo[7] validate the HELO or EHLO message presented by the sender
    auth:*[8] plugins for user authentication include vpopmail, checkpassword, flat_file, and ldap
    SPF[9] Sender Policy Framework
    greylisting[10] temporary deferrals for unknown senders
    headers[11] message header validation
    URIBL[12] scan message content for blacklisted URLs
    Domainkeys[13] validate domainkeys signatures on incoming mail
    DKIM[14] validate DKIM signatures and DKIM sign outgoing messages
    DMARC[15] implements the draft DMARC specification for email authentication
    SpamAssassin[16] the venerable spam detector
    dspam[17] DSPAM is a bayesian anti-spam filter optimized for speed.[18]
    AntiVirus[19] A collection of plugins for AVE, Bitdefender, ClamAV, hbevd, Sophie, and uvscan
    FCrDNS[20] validate sender has FCrDNS configured
    1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    7. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    8. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    9. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    10. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    11. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    12. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    13. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    14. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    15. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    16. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    17. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    18. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    19. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    20. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).

    See also

    [edit | edit source]

    Lua error in mw.title.lua at line 392: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').

    Further reading

    [edit | edit source]
    [edit | edit source]