Thunderbird with SpamBayes – its not all that hard.
So if your like me and have finally
dumped Outlook for Thunderbird then you will understand why I needed
to get SpamBayes going. The current spam solution within the Bird is
less than adequate – in fact it quite sucks. SpamBayes has two
configuration options for use on Windows. 1. The Outlook plugin and
2. The proxy server solution. Obviously this post is about the
second solution.
If you are looking for instructions on
how to setup SpamBayes proxy for external access to filter all of
your email with Thunderbird as your client, read on.
Downloading SpamBayes
SpamBayes is a SourceForge project and
the Windows
download page can be found here. Scroll to the bottom for the
“Non Outlook Solutions”, grab the installation program from
there. [Current
Link] Download and install that sucker. Be sure to ONLY check
the option which installs the proxy, and not the outlook plugin.

Installing SpamBayes as a Service
The first thing you might want to do is
get the SpamBayes service running permanenty. Here is their
instructions on how to do this, which worked perfectly well for me:
To install the service, perform the following steps:
Open a command prompt, and change
to the \Program Files\SpamBayes\bin directory.
Execute sb_service.exe -install
Select Control
Panel->Administrative Tools->Services, and locate
SpamBayes Service in the list.
Change the properties of the
service so it logs on with your user account, rather than the
builtin system account. This will ensure that SpamBayes uses the
same configuration and data files when running as a service and when
running as a normal program.
If desired, change the properties
of the service to start at boot time.
Start the service.
Start the SpamBayes Tray Icon program, and confirm the
server is running. Configure and manage SpamBayes normally.
So you now have the proxy running as a
service. Next we need to configure the service.
Configuring SpamBayes
SpamBayes's proxy server is typically
configured via the Web Interface found at http://localhost:8880/.
Hit the link for the “Configuration
Page”. On this page, the only required steps you need to take
is to update the POP3 Proxy Options.
In the “Remote Servers” box, place
a comma delimited list of POP3 servers which you need to connect to
via this proxy. pop.foo.com,mail.bar.com,pop3.example.com:996
This server list should be an exact
copy of what you see in your email client. So in Thunderbird, go to
“Tools”, “Account Settings”, and under the “Server
Settings” node for your account. It should list the POP Server and
Port which are used. If it is using a non-standard port (110) the
convention for the Remote Servers box above is <server>:<port>.
For example: pop3.example.com:996
The key here is that for each server
you need to create a specific port. This is how the proxy server
knows which remote mail server to connect too. So now in the
“SpamBayes Ports” input box you need to give a list of ports
which each server is mapped too. For example: 110,111,112
What this is saying is for all
connections on port 110 proxy them to the server: pop.foo.com
Port 111 -> mail.bar.com
Port 112 -> pop3.example.com
Quite a simple and elegant solution if
you ask me.
Allowing Remote Access
If you plan on allowing remote access
to the Proxy Server, then in you will need to update the Advanced
Configuration page at: http://localhost:8880/advancedconfig.
Be sure that both “Allowed remote POP3 connections” and “Allowed
remote SMTP connections” have valid values. I just set mine to *.
I plan on travelling allot and I need this work when I'm on a bunch
of unknown IP's.
Configuring your Firewall.
If you do plan on
allowing remote connections to your proxy you must open up your ports
which you specified above, and have the pointed to your correct
machine. In my case I have an ASUS router which I simply opened up
the few ports and pointed them to my Proxy Server. I dont have the
Windows Firewall running, and if you do be sure to allow those there
as well.
Configuring Thunderbird
Lastly you need to do is go back into
the Account Settings for Thunderbird and change the Server Name and
Ports to your server (name or IP) and those ports listed above.
Personally I did all of this with just one account. Start out
simple. Once I was able to get that one working, I added the
additonal servers, ports and made the changes to Thunderbird.
You might want to also install the
latest Thunderbird Add-on called ThunderBayes.
Instructions for use are on the download page.
Troubleshooting SpamBayes
The quickest way that I found to
troubleshoot the SpamBayes proxy is to enable verbose logging. To do
this, first shut down the SpamBayes Service (via Services). Next
create a batch file in the SpamBayes install folder (typically:
C:\Program Files\SpamBayes\bin\) with the following:
sb_server.exe -o globals:verbose:True
Execute that batch file, use
Thunderbird and check your specific email account and you should have
a file _pop3proxy.log created in that bin folder. Feel free to shut
down the server (close the dos window) and open up the _pop3proxy.log
file in your favorite text editor.
I found this specific error: “-ERR
Connection not allowed”. This is a super simple one to correct.
Hit the Advanced Configuration page at:
http://localhost:8880/advancedconfig
and be sure that both “Allowed remote POP3 connections” and
“Allowed remote SMTP connections” have valid values. I just set
mine to *. I plan on travelling allot and I need this work when I'm
on a bunch of unknown IP's.
I hope this helps.