Spamassassin

From Cheatsheet
Jump to navigation Jump to search

Bayesian Filter

Notice: Please read the first section

This is how to enable and configure spamassassin on a cpanel server.

At the start of this process please login to their WHM and make sure that spamd is enabled in their Service Manager, if it isn't enable it since this wont work without it.

First set the Variables to make this quick and easy (replace cpanel_username_here with the cpanel account name you are working on...etc..):

CpUser=cpanel_username_here
DomainDotCom=Email_account_domain
EmailUser=Email_account_name

Then copy and paste the rest of this:

echo -e "\n\nThe cpanel accounts username is $CpUser\nand the email account for the bayesian filter is $EmailUser@$DomainDotCom\n\n"
cd /home/$CpUser/.spamassassin/
echo -e "use_bayes 1\nbayes_auto_learn 1\nbayes_min_ham_num 50\nbayes_min_spam_num 50" >> user_prefs

Make the script:

echo '#!/bin/bash' >> /home/$CpUser/.spamassassin/spamassassin.sh
echo -e "\n#learning spam\n sa-learn --spam /home/$CpUser/mail/$DomainDotCom/$EmailUser/.spam/cur\n\n#clean out the spam\n# find /home/$CpUser/mail/$DomainDotCom/$EmailUser/.spam/cur/* -maxdepth 1 -type f -delete \n\n#learning safe mail\n sa-learn --ham /home/$CpUser/mail/$DomainDotCom/$EmailUser/.ham/cur" >> /home/$CpUser/.spamassassin/spamassassin.sh

Change perms and add cron:

chown $CpUser. /home/$CpUser/.spamassassin/spamassassin.sh
chmod +x /home/$CpUser/.spamassassin/spamassassin.sh
echo "00 1 * * * /home/$CpUser/.spamassassin/spamassassin.sh" >> /var/spool/cron/$CpUser
/etc/init.d/crond reload

spam assassin upgrades

spam assassin 3.3

spam assassin 3.4