Learn
Maintainer
Jooris Emmanuel for Firewall-services
Description
Scripts (based on LearnAsSpam) which allows users to interact with spamassassin rules simply by dropping mail in special folders of their mailbox (working only with imap).
- Learn mail as spam
- Learn mail as ham
- Whitelist the sender so his mails won't be tagged as spam again
Requirements
You need to activate the Dag reposity before installing this contrib.
The following command will configure the Dag repository on SME Server. EDIT NOT COMPLETE!
To create an entry in the database for the epel repository we open put the following commands in a terminal
window or in a shell window:
/sbin/e-smith/db yum_repositories set epel repository \
Name 'SME Server - epel' \ BaseURL 'http://<http://download.fedoraproject.org/pub/epel/7/$basearch' \ EnableGroups yes \ GPGCheck yes \ Visible no \ status disabled
To enable the changes:
signal-event yum-modify
Just to be sure, give yum a fresh start:
yum clean all
After adding it to the database we have to update the changes to the configuration file:
signal-event yum-modify
Installation
First, download the contrib :
wget http://sme.firewall-services.com/downloads/learn/rpms/smeserver-learn-0.0.1-3.noarch.rpm
And then, install it :
yum --enablerepo=dag localinstall smeserver-learn-0.0.1-3.noarch.rpm
Don't forgot to configure db key according to your needs and expand config file.
Documentation
smeserver-learn store all key who need in configuration db : (the > indicate that is a prop and not a key)
LearnAsSpam | Config key for the spam learning part. |
>status={enabled,disabled} | Enable or not spam learning |
>tag=$string | Tag to place before subject to warn user of his message as been learn. |
>dir=$string | Name of folders where searching spam |
>DeleteAfterLearn={enabled,disabled} | delete message after learn instead of move in the user's junkmail folder. |
LearnAsHam | Config key for the ham learning part. |
>status={enabled,disabled} | Enable or not ham learning |
>tag=$string | Tag to place before subject to warn user of his message as been learn. |
>dir=$string | Name of folders where searching ham. |
LearnInWL | Config key for the spam of messages' senders in the whitelist learning part. |
>status={enabled,disabled} | Enable or not learning of messages' senders in the whitelist. |
>tag=$string | Tag to place before subject to warn user of his message as been learn. |
>dir=$string | Name of folders where searching message to learn in whitelist the sender address |
Learn | Config key witch affect script generally |
>cron={none,hourly,daily,weekly,monthly} | do the search never, hourly, daily, weekly or monthly. |
E.g.:
config setprop LearnAsSpam status enabled config setprop LearnInWL status enabled
One config file is modified : /etc/crontab who need to be expand if prop Learn>cron is modified.
Setup Bayesian Autolearning
You'll also have to setup Bayesian Autolearning as described in the Email page.
Automatic creation of folders
A script posted in the forum by Cactus [1] and sent to me by Amir Inbar can be used to create all folders (in skel for futures users and in the existings users too :
# create skellaton for new users : mkdir -p /etc/e-smith/skel/user/Maildir/{.LearnAsHam/{cur,new,tmp},.LearnAsSpam/{cur,new,tmp},.LearnInWL/{cur,new,tmp}} # create folders for existing users : pushd /home/e-smith/files/users/; \ for u in `ls | grep -v admin`; \ do \ mkdir -p $u/Maildir/.LearnAsHam/{cur,new,tmp}; \ chown -R $u:$u $u/Maildir/.LearnAsHam/; \ mkdir -p $u/Maildir/.LearnAsSpam/{cur,new,tmp}; \ chown -R $u:$u $u/Maildir/.LearnAsSpam/; \ mkdir -p $u/Maildir/.LearnInWL/{cur,new,tmp}; \ chown -R $u:$u $u/Maildir/.LearnInWL/; \ done; \ popd
Thanks to them.
Uninstall
Simply do :
yum remove smeserver-learn
Source
The source rpm for this contrib can be found at here.
Bugs
Please raise bugs under the SME-Contribs section in bugzilla and select the smeserver-learn component or use this link .