Pyzor is a completely free database and software HashSharingSystem, written by Frank Tobin. http://pyzor.sourceforge.net/ .
pyzor_options --homedir /etc/mail/spamassassin
pyzor --homedir /etc/mail/spamassassin discover
/etc/init.d/spamd restart
You can run SpamAssassin from the command line to figure out if it is using Pyzor. The process is described at RazorHowToTell, but the summary is to run the following from the command line:
echo "test" | spamassassin -D pyzor 2>&1 | less |
This test should return output similar to:
... Oct 6 11:11:46.956 [10904] dbg: pyzor: network tests on, attempting Pyzor Oct 6 11:11:52.055 [10904] dbg: pyzor: pyzor is available: /bin/pyzor Oct 6 11:11:52.056 [10904] dbg: pyzor: opening pipe: /bin/pyzor --homedir /some/dir/.pyzor check < /tmp/.spamassassin10904BmyCb9tmp Oct 6 11:11:52.344 [10904] dbg: pyzor: [10906] finished: exit 1 Oct 6 11:11:52.345 [10904] dbg: pyzor: check failed: no response ... |
The "check failed: no response" does not indicate a problem, as this test does not pass in an actual properly-formatted email message. If you have an actual message handy, use that for your test; you should see output similar to:
... Oct 6 19:34:05.896 [14864] dbg: pyzor: network tests on, attempting Pyzor Oct 6 19:34:10.940 [14864] dbg: pyzor: pyzor is available: /bin/pyzor Oct 6 19:34:10.942 [14864] dbg: pyzor: opening pipe: /bin/pyzor --homedir /some/dir/.pyzor check < /tmp/.spamassassin14864qX2Rmwtmp Oct 6 19:34:11.248 [14864] dbg: pyzor: [14866] finished: exit 1 Oct 6 19:34:11.248 [14864] dbg: pyzor: got response: public.pyzor.org:24441 (200, 'OK') 0 0 ... |
If you are using Debian, a pyzor package is available in the stable distribution.
Very detailed instructions on configuring pyzor for a personal Unix account are in SingleUserUnixInstall.
Using SpamAssassin to submit spam is described in ReportingSpam.
It is possible to make Pyzor work on Windows with a little extra effort.
python setup.py build python setup.py install |
@c:\python24\python c:/python24/scripts/pyzor --homedir c:/python24/etc/pyzor %1 %2 %3 %4 %5 %6 %7 %8 %9 |
def time_call(self, call, varargs=(), kwargs=None): if kwargs is None: kwargs = {} return apply(call, varargs, kwargs) |
pyzor discover |
if ($stdinfile) { $cmd .= " <'$stdinfile'"; }" |
if ($stdinfile) { $cmd .= " <\"$stdinfile\""; }" |
use_pyzor 1 pyzor_path c:\python24\pyzor.bat pyzor_timeout 10 |