Page 1 of 1
Spamassassin und MySQL
Posted: 2007-05-18 10:23
by sonic
Hallo Gemeinde,
ich habe folgende Konfiguration:
Postfix Mailserver
Courier Imapd
Spamassassin
jetzt habe ich eine MySQL Datenbank in der die Spam Konfiguration für jeden User bestimmt werden kann, allerdings scheint der Spamassassin nicht darauf zuzugreifen.
meine local.cf sieht so aus:
user_scores_dsn DBI:mysql:antispam:localhost
user_scores_sql_username antispam
user_scores_sql_password xxxxx
was mache ich falsch?
Re: Spamassassin und MySQL
Posted: 2007-05-18 14:15
by adjustman
is falsch. in local.cf
Code: Select all
auto_whitelist_factory Mail::SpamAssassin::SQLBasedAddrList
user_awl_dsn DBI:mysql:spamassassin:localhost:3306
user_awl_sql_username name
user_awl_sql_password pw
user_awl_sql_table awl
bayes_store_module Mail::SpamAssassin::BayesStore::SQL
bayes_sql_dsn DBI:mysql:spamassassin:localhost:3306
bayes_sql_username name
bayes_sql_password pw
wobei
Code: Select all
bayes_store_module Mail::SpamAssassin::BayesStore::SQL
auch
Code: Select all
bayes_store_module Mail::SpamAssassin::BayesStore::MySQL
heissen kann/muss, je nach SQL Version
Re: Spamassassin und MySQL
Posted: 2007-05-18 14:55
by sonic
was bedeutet denn:
BayesStore?
Re: Spamassassin und MySQL
Posted: 2007-05-18 15:10
by Roger Wilco
Re: Spamassassin und MySQL
Posted: 2007-05-19 10:15
by sonic
irgendwie klappt das aber nicht.
spamassassin läuft, ich habe selbigen via apt-get install spamassassin installiert.
ist dann auch wunderbar gelaufen, natürlich nur für alle accounts global.
dann wollte ich spamassassin so einstellen dassa auf eine mysql datenbank zugreift, die tabellen sind korrekt.
nur leider klappt das nicht, muss ich am postfix nochwas einstellen?
wie gesagt vorher lief alles wunderbar.
Re: Spamassassin und MySQL
Posted: 2007-05-19 13:58
by adjustman
sonic wrote:dassa auf eine mysql datenbank zugreift
SA "greift" nicht auf eine DB zu!. SA legt in einer DB ab!
Code: Select all
CREATE TABLE `awl` (
`username` varchar(100) NOT NULL default '',
`email` varchar(200) NOT NULL default '',
`ip` varchar(10) NOT NULL default '',
`count` int(11) default '0',
`totscore` float default '0',
`lastupdate` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
PRIMARY KEY (`username`,`email`,`ip`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE `bayes_expire` (
`id` int(11) NOT NULL default '0',
`runtime` int(11) NOT NULL default '0',
KEY `bayes_expire_idx1` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE `bayes_global_vars` (
`variable` varchar(30) NOT NULL default '',
`value` varchar(200) NOT NULL default '',
PRIMARY KEY (`variable`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE `bayes_seen` (
`id` int(11) NOT NULL default '0',
`msgid` varchar(200) character set latin1 collate latin1_bin NOT NULL default '',
`flag` char(1) NOT NULL default '',
PRIMARY KEY (`id`,`msgid`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE `bayes_token` (
`id` int(11) NOT NULL default '0',
`token` char(5) NOT NULL default '',
`spam_count` int(11) NOT NULL default '0',
`ham_count` int(11) NOT NULL default '0',
`atime` int(11) NOT NULL default '0',
PRIMARY KEY (`id`,`token`),
KEY `bayes_token_idx1` (`token`),
KEY `bayes_token_idx2` (`id`,`atime`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE `bayes_vars` (
`id` int(11) NOT NULL auto_increment,
`username` varchar(200) NOT NULL default '',
`spam_count` int(11) NOT NULL default '0',
`ham_count` int(11) NOT NULL default '0',
`token_count` int(11) NOT NULL default '0',
`last_expire` int(11) NOT NULL default '0',
`last_atime_delta` int(11) NOT NULL default '0',
`last_expire_reduce` int(11) NOT NULL default '0',
`oldest_token_age` int(11) NOT NULL default '2147483647',
`newest_token_age` int(11) NOT NULL default '0',
PRIMARY KEY (`id`),
UNIQUE KEY `bayes_vars_idx1` (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Und dann korrespondiert SA mit der DB
Re: Spamassassin und MySQL
Posted: 2007-05-19 18:54
by sonic
und wo stehen die vom user festgelegten daten?
momentan habe ich das so:
Code: Select all
CREATE TABLE `userpref` (
`username` varchar(100) NOT NULL default '',
`preference` varchar(30) NOT NULL default '',
`value` varchar(100) NOT NULL default '',
`prefid` int(11) NOT NULL auto_increment,
PRIMARY KEY (`prefid`),
KEY `username` (`username`)
) TYPE=MyISAM AUTO_INCREMENT=19 ;
Re: Spamassassin und MySQL
Posted: 2007-05-20 00:31
by adjustman
sonic wrote:und wo stehen die vom user festgelegten daten?
du sprachst aber von systemweit/global. Da wird alles durch die local.cf geregelt.
Aber lies doch mal:
http://spamassassin.apache.org/index.html
Re: Spamassassin und MySQL
Posted: 2007-05-22 10:00
by sonic
global war es bissher aber jetzt soll jeder user selbst bestimmen können was spam ist und was nicht.
also es werden jetzt alle spam mails in
awl
gespeichert. unter dem username: nobody.
die anderen tabellen sind leer.
wie stelle ich es nun an, dass jeder user selbst entscheiden kann?