So wie die Bayes Werte in einer DB gespeichert werden können, lohnt es sich auh evtl. das automatische whitelisting in eine MySQL DB zu verlegen.
- Vorraussetzungen
perl -MCPAN -e shell install DBD::mysql apt-get install libtie-cache-perl libdbd-mysql-perl
- Nun wird die notwendige DB angelegt
mysqladmin -p create spamassassin_db -u root
- Vergabe der Rechte für einen speziellen User
grant all privileges on spamassassin_db.* to spamassassin_usr@localhost identified by 'password';
- anlegen der notwendigen Tabellen
mysql -u root spamassassin_db -p < /usr/share/doc/spamassassin/sql/awl_mysql.sql
- /etc/spamassassin/local.cf um die SQL-DB Einträge erweitern
use_auto_whitelist 1 user_awl_dsn DBI:mysql:spamassassin_db:localhost user_awl_sql_username spamassassin_usr user_awl_sql_password <pwd> user_awl_sql_table awl
Dabei müssen Sie darauf achten, dass der Zugriff auf die alte autowhiteliste deaktiviert wurde
#auto_whitelist_path /var/spool/spamassassin/auto-whitelist #auto_whitelist_file_mode 0666
eine Änderung der Konfiguration der bayes-DB merkt Spamassassin i.d.R. sofort. Starte Sie dennoch den Dienst neu:
/etc/init.d/spamassasin restart
Um zu prüfen, ob die bayes Einträge auch korrekt abgelegt werden reicht es, sich den Inhalt einer der Tabellen anzuschauen. Steht unter Count eine Zahl > 0 sind bereits Datein gespeichert worden:
mysql -u root -p mysql> use spamassassin_db; mysql> select count(*) from awl; +----------+ | count(*) | +----------+ | 1 | +----------+ 1 row in set (0.01 sec)
Ein Blick in die Log-Datei von Spamassassin schadet auf keinen Fall. Wo diese liegt, kann man der Datei /etc/default/spamassassin entnehmen