|
3 | 3 | Originally released in May of 2002, _SpamPD_ is a program used within an e-mail delivery system to scan messages for possible Unsolicited Commercial E-mail (UCE, aka spam) content.
|
4 | 4 | It uses an excellent program called <a href="https://spamassassin.apache.org/" target="_new">SpamAssassin</a> (SA) to do the actual message scanning. SpamPD acts as a transparent SMTP/LMTP proxy between
|
5 | 5 | two mail servers, and during the transaction it passes the mail through SA. If SA decides the mail could be spam, then SpamPD will ask SA to
|
6 |
| -add some headers and a report to the message indicating it's spam and why. SpamPD is written in Perl and should theoretically run on any |
7 |
| -platform supported by Perl and SpamAssassin. |
| 6 | +add some headers and a report to the message indicating it's spam and why. |
8 | 7 |
|
9 |
| -Check the [Releases](https://github.com/mpaperno/spampd/releases) area for latest versions, and see the old |
10 |
| -[Downloads](https://github.com/mpaperno/spampd/downloads) section for older releases (and the "previous-versions" folder for some even more ancient ones). |
11 |
| -Recently the Debian package version was added to this repo as a branch, and those tags will also show up in the Releases page. |
| 8 | +SpamPD is written in Perl and should theoretically run on any platform supported by Perl and SpamAssassin. |
| 9 | + |
| 10 | +Here's an un-solicited comment someone sent regarding *SpamPD* performance: |
| 11 | + |
| 12 | +> Just to let you know: We have the SA/spampd combo up an running in a high volume environment. With 3 KAT-B Server (4x 2,5 GHz Xeon MP |
| 13 | +with Hyperthreading, 3 GB RAM) we handle 15.000 to 20.000 Mails/h (Hour!) with room to spare. We had some performance issues with the |
| 14 | +Bayes databases but now everything runs smoothly. |
| 15 | + |
| 16 | +Check the [Releases](https://github.com/mpaperno/spampd/releases) area for latest versions, |
| 17 | +and see the "previous-versions" folder for some more ancient ones. <br/> |
| 18 | +(Note that the Debian package version was added to this repo as a branch, and those tags will also show up in the Releases page.) |
12 | 19 |
|
13 | 20 | Please read the [POD file](https://github.com/mpaperno/spampd/blob/master/spampd.pod) for full documentation of the many available options.
|
14 |
| -See the [changelog](https://github.com/mpaperno/spampd/blob/master/changelog.txt) for version history. |
| 21 | +See the [changelog](https://github.com/mpaperno/spampd/blob/master/changelog.txt) for full version history. |
15 | 22 |
|
16 |
| -More historic background information is available <a href="http://www.worlddesign.com/index.cfm/page/rd/mta/spampd.htm" target="_new">here</a>. |
| 23 | +## Package status |
| 24 | + |
| 25 | +**HELP!** Debian package maintainer needed. Please see [GitHub Issue 46](https://github.com/mpaperno/spampd/issues/46). |
17 | 26 |
|
18 | 27 | Linux packages data courtesy of Repology:
|
19 | 28 |
|
20 | 29 | <a href="https://repology.org/metapackage/spampd/versions" target="_new">
|
21 |
| - <img src="https://repology.org/badge/vertical-allrepos/spampd.svg?minversion=2.61&header=Latest+release+v2.61" alt="Packaging status"> |
| 30 | + <img src="https://repology.org/badge/vertical-allrepos/spampd.svg?minversion=2.61&header=Latest+release+v2.62" alt="Packaging status"> |
22 | 31 | </a>
|
| 32 | + |
| 33 | +<h2>Usage</h2> |
| 34 | +<p><i>SpamPD</i> was initially designed as a content filter mechanism for use with the <a href="http://www.postfix.org/"><i>Postfix</i></a> MTA. |
| 35 | +However, it has no inherent dependencies on <i>Postfix</i> or any other MTA. |
| 36 | +Some more specific setup information is provided <a href="https://github.com/mpaperno/spampd/blob/master/spampd.pod#installation-and-configuration">in the included documentation</a>.</p> |
| 37 | + |
| 38 | +<h2>Version 2 Architecture</h2> |
| 39 | +<p>Version 2 of <i>SpamPD</i> is a major rewrite of the underlying methods. <i>SpamPD</i> |
| 40 | + no longer acts as a relay server but more as a "transparent" proxy |
| 41 | +server. That is, it never actually takes responsibility for the mail at |
| 42 | +any point. Instead, the origination and destination mail servers speak |
| 43 | +directly to each other. If a failure occurs within <i>SpamPD</i> |
| 44 | + (or SpamAssassin) during a transaction, then the mail servers will |
| 45 | +disconnect and the sending server is still responsible for retrying the |
| 46 | +message for as long as it is configured to do so. Responsibility for |
| 47 | +mail delivery always lies with the 2 mail servers, which would be "real" |
| 48 | + MTAs and not a 500 line Perl script :-) This removes a major problem |
| 49 | +with version 1 of <i>SpamPD</i>, and makes this a <u>recommended upgrade</u>.</p> |
| 50 | +<p>While this is a much safer technique than previously employed, it does remove a possible feature which some users of <i>SpamPD</i> |
| 51 | + have implemented (sorry guys). That is redirecting spam to a spamtrap |
| 52 | +address instead of letting the message through to the original |
| 53 | +recipient. This is due to the fact that the recipient information is |
| 54 | +passed on to the destination server before the message data is scanned |
| 55 | +for spam. On the other hand it presents the possibility of rejecting |
| 56 | +spam at the S/LMTP level without having to generate bounce notices and |
| 57 | +such.</p> |
| 58 | + |
| 59 | +<p><i>SpamPD</i> now fully supports the LMTP |
| 60 | + protocol (due to the nature of it's new transparency). Logging has been |
| 61 | + improved and is now more compatible with <code>spamd</code>. |
| 62 | + New parameters added: --children, --local-only, --childtimeout, |
| 63 | +--satimeout, --dose, --log-rules-hit, --add-sc-header, and --hostname. |
| 64 | +Three parameters are now deprecated: --dead-letters, --heloname, and |
| 65 | +--stop-at-threshold.</p> |
| 66 | +<p>More details and further changes are documented in the <a href="https://github.com/mpaperno/spampd/blob/master/changelog.txt">change log</a>.</p> |
| 67 | + |
| 68 | +<h2>More Information</h2> |
| 69 | + |
| 70 | +<p>If you aren't familiar with <a href="http://www.SpamAssassin.org/">SpamAssassin</a>, |
| 71 | + then you should definitely start there (or end up there) first. There |
| 72 | +is a very helpful users discussion list for SA (see their site). For <a href="http://www.postfix.org/">Postfix</a> setup, be sure to read the FILTER_README document that is included with the distribution. <i>SpamPD</i> is meant to be used as an "advanced content filtering" method (some examples are included with the <i>SpamPD</i> |
| 73 | + documentation). Postfix also has a helpful users discussion list. Make |
| 74 | +sure you do your homework before you ask other people to help you!</p> |
| 75 | + |
| 76 | +<p>Be sure to check out the <a href="https://github.com/mpaperno/spampd/blob/master/spampd.pod"><i>SpamPD</i> documentation</a>, the <a href="https://github.com/mpaperno/spampd/blob/master/changelog.txt">change log</a>, as well as comments in the <a href="https://github.com/mpaperno/spampd/blob/master/spampd.pl">ac</a></p> |
| 77 | + |
| 78 | +<h2>Credits</h2> |
| 79 | +<p><i>SpamPD</i> is written and maintained by Maxim Paperno (<a href="https://github.com/mpaperno">https://github.com/mpaperno</a>).</p> |
| 80 | +<p><i>SpamPD</i> contains code written by |
| 81 | +Bennecode Todd (Copyright (C) 2001 Morgan Stanley Dean Witter) and is used |
| 82 | + in accordance with the GNU General Public License. The code is in the |
| 83 | +form of two Perl modules which have been included in the program. Also |
| 84 | +his <code>smtpproxy</code> example program served as inspiration for this version of <i>SpamPD</i>.</p> |
| 85 | +<p><i>SpamPD</i> version 1 was based on code by Dave Carrigan named <a href="http://www.rudedog.org/assassind/"><code>assassind</code></a>. Trace amounts of his code or documentation may still remain. Thanks to him for the original inspiration and code.</p> |
| 86 | +<p>Various people have contributed patches, bug reports, and ideas, all |
| 87 | +of whom I would like to thank. I have tried to include credits in code |
| 88 | +comments, documentation, and in the change log, as appropriate.</p> |
| 89 | + |
| 90 | +<h2>Copyright, License, & Disclaimer</h2> |
| 91 | +<p>Copyright Maxim Paperno; All rights reserved.</p> |
| 92 | +<p>Portions are Copyright © 2001 Morgan Stanley Dean Witter as mentioned above in the CREDITS section.</p> |
| 93 | +<p>This program is free software; you can redistribute it and/or modify |
| 94 | +it under the terms of the GNU General Public License as published by the |
| 95 | + Free Software Foundation; either version 2 of the License, or (at your |
| 96 | +option) any later version.</p> |
| 97 | +<p>This program is distributed in the hope that it will be useful, but |
| 98 | +WITHOUT ANY WARRANTY; without even the implied warranty of |
| 99 | +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| 100 | + Public License for more details.</p> |
| 101 | +<p>The GNU GPL can be found at <a href="https://www.gnu.org/licenses/" target="_blank">https://www.gnu.org/licenses/</a></p> |
0 commit comments