Hello,

I want to use dspam for spam filtering for users of my department. We have multiple domains but [EMAIL PROTECTED] is the same user as [EMAIL PROTECTED] The mails are correctly delivered to the dovecot imap server, but dspam still makes a difference between [EMAIL PROTECTED] and [EMAIL PROTECTED] In the end I want the setup to be like this: The administrators can train the global database and each user can train its own local database. I think this is possible using shared/merged groups. As backend I use mysql. Dspam is integrated as content filter in postfix.

I configured dspam using ./configure --prefix=/usr/local --enable-debug --enable-daemon --enable-syslog --with-storage-driver=mysql_drv,hash_drv --with-mysql-includes=/usr/include/mysql/ --with-mysql-libraries=/usr/lib/mysql/ --with-logfile=/tmp/dspam.log --enable-verbose-debug --enable-virtual-users

dspam_stats output after sending some mails to the same user using different domains enlighter@<server1>.uni-stuttgart.de TP: 0 TN: 2 FP: 0 FN: 0 SC: 0 NC: 0 enlighter@<server2>.uni-stuttgart.de TP: 0 TN: 3 FP: 0 FN: 0 SC: 0 NC: 0

postfix's master.cf excerpt:
dspam     unix  -       -       n       -       16      lmtp
       -o smtp_send_xforward_command=no
       -o smtp_enforce_tls=no

# This is for reinjecting the message from dspam to postfix (which listens on port 10028)
localhost:10028 inet  n -       n       -       -        smtpd
       -o content_filter=
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
       -o smtpd_helo_restrictions=
       -o smtpd_client_restrictions=
       -o smtpd_sender_restrictions=
       -o smtpd_recipient_restrictions=permit_mynetworks,reject
       -o mynetworks=127.0.0.0/8
       -o smtpd_authorized_xforward_hosts=127.0.0.0/8


postfix's main.cf excerpt:
content_filter = dspam:[127.0.0.1]:10027
mailbox_command = /usr/local/libexec/dovecot/deliver

dspam.conf:
Home /usr/local/var/dspam
StorageDriver /usr/local/lib/libmysql_drv.so
DeliveryHost        127.0.0.1
DeliveryPort        10028
DeliveryIdent       localhost
DeliveryProto       SMTP
OnFail error
Trust root
Trust mail
Trust mailnull
Trust smmsp
Trust daemon
Debug *
DebugOpt process spam fp
TrainingMode teft
TestConditionalTraining on
Feature whitelist
Algorithm graham burton
Tokenizer chain
PValue bcr
WebStats off
Preference "showFactors=on"
Preference "spamAction=tag"
AllowOverride trainingMode
AllowOverride spamAction spamSubject
AllowOverride statisticalSedation
AllowOverride enableBNR
AllowOverride enableWhitelist
AllowOverride signatureLocation
AllowOverride showFactors
AllowOverride optIn optOut
AllowOverride whitelistThreshold
MySQLServer             /var/lib/mysql/mysql.sock
MySQLUser               <user>
MySQLPass               <passwd>
MySQLDb                 dspam
MySQLCompress           true
HashRecMax              98317
HashAutoExtend          on
HashMaxExtents          0
HashExtentSize          49157
HashPctIncrease 10
HashMaxSeek             10
HashConnectionCache     10
Notifications   off
LocalMX 127.0.0.1
SystemLog on
UserLog   on
Opt in
ParseToHeaders on
ChangeModeOnParse on
ChangeUserOnParse user
ServerPort              10027
ServerPID              /var/run/dspam.pid
ServerMode auto
ServerParameters        "--deliver=innocent,spam"
ServerIdent             "<myserver>"
ProcessorURLContext on
ProcessorBias on

I thought ChaneUserOnParse should do the job, but it doesn't. how can I change dspam's behavior to the one I need?

Thanks in advance!
   Michael

Reply via email to