Il 16/06/2011 10.33, Stevan Bajić ha scritto:
> On Thu, 16 Jun 2011 10:14:49 +0200
> Claudio Prono <[email protected]> wrote:
>
>> Hello Stevan,
>>
> Hello Claudio,
>
>
>> Tnx for the reply.
>>
>> Il 15/06/2011 21.23, Stevan Bajić ha scritto:
>>> On Wed, 15 Jun 2011 13:21:19 +0200
>>> Claudio Prono <[email protected]> wrote:
>>>
>>>> Hello all,
>>>>
>>> Hello Claudio,
>>>
>>>
>>>> After a recent migration of a mailserver i have some problems with the
>>>> training of dspam: when i send a mail for retraining, i have this on logs:
>>>>
>>>> Jun 15 12:50:55 mail2 dspam[27718]: Signature retrieval for
>>>> '2,4df84600159243584
>>>> 817994' failed
>>>> Jun 15 12:50:55 mail2 dspam[27718]: Unable to find a valid signature.
>>>> Aborting.
>>>> Jun 15 12:50:55 mail2 dspam[27718]: process_message returned error -5.
>>>> dropping
>>>> message.
>>>>
>>>> I have checked, the signature is present into the database, but the
>>>> query of dspam is wrong (i have activate the mysql debug):
>>>>
>>>> 33 Connect dspam@localhost on dspam
>>>> 33 Query SELECT uid FROM dspam_virtual_uids WHERE
>>>> username='spam'
>>>> 33 Query SHOW VARIABLES WHERE
>>>> variable_name='max_allowed_packet'
>>>> 33 Query SHOW VARIABLES WHERE
>>>> variable_name='max_allowed_packet'
>>>> 33 Query SELECT uid FROM dspam_virtual_uids WHERE
>>>> username='spam'
>>>> 33 Query SELECT uid FROM dspam_virtual_uids WHERE
>>>> username='spam'
>>>>
>>>> The username is always wrong, is not spam but the username of the sender
>>>> e-mail (like [email protected]).
>>>>
>>> this depends on how you have implemented that retraining.
>>>
>>>
>>>> Here is my relevant config on postfix:
>>>>
>>>> in master.cf:
>>>>
>>>> dspam unix - n n - 10 pipe
>>>> flags=u user=nobody argv=/usr/sbin/dspam --deliver=innocent
>>>> --feature=noise --user ${recipient}
>>>> spam unix - n n - - pipe
>>>> flags=u user=nobody argv=/usr/sbin/dspam --class=spam --source=error
>>>> --user spam
>>>> nospam unix - n n - - pipe
>>>> flags=u user=nobody argv=/usr/sbin/dspam --class=innocent
>>>> --source=error --user spam
>>>>
>>> Aha. See that "--user spam" in the process "spam" and "nonspam"?
>>>
>>>
>> Yes, i have noticed that, but with the config "ChangeUserOnParse full",
>> the user is changed with the rcpt to of the mail, according with the
>> documentation:
>>
> yes, but you have to follow specific naming of the alias for the retraining
> to have that mechanism working.
>
>> # ChangeUserOnParse: Automatically change the username to match that
>> specified
>> # in the To: header. For example, [email protected] will set the
>> username
>> # to bob, ignoring any --user passed in. This may not always be
>> desirable if
>> # you are using virtual email addresses as usernames. Options:
>> # on or user take the portion before the @ sign only
>> # full take everything after the initial {spam,notspam}-.
>>
>> Is right?
>>
> Yes. It's right. But do you see the note on 'full'? The spam/ham alias would
> in your case then be "[email protected]" and
> "[email protected]".
>
>
>>>> And my dspam.config of mysql:
>>>>
>>>> MySQLServer /var/run/mysql/mysql.sock
>>>> MySQLPort
>>>> MySQLUser dspam
>>>> MySQLPass [pass]
>>>> MySQLDb dspam
>>>> MySQLCompress true
>>>> MySQLVirtualTable dspam_virtual_uids
>>>> MySQLVirtualUIDField uid
>>>> MySQLVirtualUsernameField username
>>>> MySQLUIDInSignature on
>>>>
>>> This is all fine and dandy but the real relevant config is how you have
>>> setup DSPAM to parse the user. Have you set "ParseToHeaders",
>>> "ChangeModeOnParse" and/or "ChangeUserOnParse"?
>>>
>> here is my settings:
>>
>> ParseToHeaders on
>> ChangeModeOnParse on
>> ChangeUserOnParse full
>>
>> The thing i don't understand is: if i change this values (like
>> ChangeUSerOnParse on), the mysql query is always done with the user
>> spam.....
>>
> Because you don't follow the proper naming convention needed to have the
> parsing working.
>
>
>> The last thing i have tryied also is add the option "Broken
>> lineStripping", but nothing has changed....
>>
>> What i can try ?
>>
> First of all you should post ALL your config here. Not just bits. It's
> frustrating to try to help and with every response getting answers back from
> you where you show more configuration and that additional new info changes
> the whole picture. Please post whole dspam.conf and post the whole config how
> you have implemented the retraining in Postfix. How and when do you pipe to
> that spam/nonspam transport in Postfix, etc... Posting whole master.cf and
> main.cf (or just postconf -n) is a good thing too.
>
Ok, sorry, here is my dspam.conf:
Home /var/lib/dspam
StorageDriver /usr/lib64/dspam/libmysql_drv.so
TrustedDeliveryAgent "/usr/bin/procmail -d %u"
DeliveryHost 127.0.0.1
DeliveryPort 10027
DeliveryIdent localhost
DeliveryProto SMTP
OnFail error
Trust root
Trust dspam
Trust apache
Trust mail
Trust mailnull
Trust smmsp
Trust daemon
Trust nobody
Debug *
TrainingMode teft
TestConditionalTraining on
Feature noise
Feature whitelist
Algorithm graham burton
Tokenizer chain
PValue bcr
WebStats on
Preference "spamAction=quarantine"
Preference "signatureLocation=headers" # 'message' or 'headers'
Preference "showFactors=Off"
AllowOverride trainingMode
AllowOverride spamAction spamSubject
AllowOverride statisticalSedation
AllowOverride enableBNR
AllowOverride enableWhitelist
AllowOverride signatureLocation
AllowOverride showFactors
AllowOverride optIn optOut
AllowOverride whitelistThreshold
MySQLServer /var/run/mysql/mysql.sock
#MySQLPort
MySQLUser dspam
MySQLPass [password]
MySQLDb dspam
MySQLCompress true
MySQLReconnect true
MySQLVirtualTable dspam_virtual_uids
MySQLVirtualUIDField uid
MySQLVirtualUsernameField username
MySQLUIDInSignature on
HashRecMax 98317
HashAutoExtend on
HashMaxExtents 0
HashExtentSize 49157
HashPctIncrease 10
HashMaxSeek 10
HashConnectionCache 10
Notifications off
PurgeSignatures 14 # Stale signatures
PurgeNeutral 90 # Tokens with neutralish probabilities
PurgeUnused 90 # Unused tokens
PurgeHapaxes 30 # Tokens with less than 5 hits (hapaxes)
PurgeHits1S 15 # Tokens with only 1 spam hit
PurgeHits1I 15 # Tokens with only 1 innocent hit
LocalMX 127.0.0.1
SystemLog on
UserLog on
Opt out
ParseToHeaders on
ChangeModeOnParse on
ChangeUserOnParse full
ProcessorURLContext on
ProcessorBias on
And here is my postconf -n
alias_maps = hash:/etc/aliases
biff = no
broken_sasl_auth_clients = yes
canonical_maps = hash:/etc/postfix/canonical
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/lib/postfix
data_directory = /var/lib/postfix
debug_peer_level = 2
defer_transports =
delay_warning_time = 1h
disable_dns_lookups = no
disable_mime_output_conversion = no
disable_vrfy_command = yes
header_checks = regexp:/etc/postfix/header_checks
html_directory = /usr/share/doc/packages/postfix-doc/html
inet_interfaces = all
inet_protocols = ipv4
local_transport = local
mail_owner = postfix
mail_spool_directory = /var/spool/mail
mailbox_command = /usr/lib/dovecot/dovecot-lda
mailbox_size_limit = 0
mailbox_transport =
mailq_path = /usr/bin/mailq
manpage_directory = /usr/share/man
masquerade_classes = envelope_sender, header_sender, header_recipient
masquerade_domains =
masquerade_exceptions = root
message_size_limit = 30240000
message_strip_characters = \0
mydestination = $mydomain
mydomain = mail2.mediaservice.net
myhostname = mail2.mediaservice.net
mynetworks = 127.0.0.1, 213.254.20.0/24, 192.168.1.0/24
mynetworks_style = subnet
myorigin = $myhostname
newaliases_path = /usr/bin/newaliases
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/packages/postfix-doc/README_FILES
recipient_delimiter = -
relay_domains = $mydestination, mediaservice.pri
relayhost =
relocated_maps = hash:/etc/postfix/relocated
sample_directory = /usr/share/doc/packages/postfix-doc/samples
sender_canonical_maps = hash:/etc/postfix/sender_canonical
sendmail_path = /usr/sbin/sendmail
setgid_group = maildrop
smtp_sasl_auth_enable = no
smtp_tls_CAfile = /etc/postfix/ssl/cacert.pem
smtp_tls_cert_file = /etc/postfix/ssl/certs/postfixcert.pem
smtp_tls_key_file = /etc/postfix/ssl/certs/postfixkey.pem
smtp_tls_loglevel = 1
smtp_use_tls = yes
smtpd_banner = $myhostname ESMTP
smtpd_client_restrictions =
smtpd_helo_required = no
smtpd_helo_restrictions =
smtpd_recipient_restrictions = check_recipient_access
hash:/etc/postfix/dspam_learning, permit_mynetworks,
permit_sasl_authenticated, reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_unknown_recipient_domain, reject_unauth_pipelining,
reject_unauth_destination, check_policy_service
inet:127.0.0.1:10031 check_recipient_access
hash:/etc/postfix/dspam_domains
smtpd_sasl_auth_enable = yes
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = dovecot
smtpd_sender_restrictions = hash:/etc/postfix/access
smtpd_tls_CAfile = /etc/postfix/ssl/cacert_mauri.pem
smtpd_tls_CApath = /etc/postfix/ssl
smtpd_tls_auth_only = yes
smtpd_tls_cert_file = /etc/postfix/ssl/certs/postfixcert.pem
smtpd_tls_key_file = /etc/postfix/ssl/certs/postfixkey.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_use_tls = yes
strict_8bitmime = no
strict_rfc821_envelopes = no
tls_random_source = dev:/dev/urandom
transport_maps = hash:/etc/postfix/transport
unknown_local_recipient_reject_code = 550
virtual_alias_domains = hash:/etc/postfix/virtual
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_gid_maps = static:51
virtual_mailbox_base = /var/mail/virtual
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_limit = 524288000
virtual_mailbox_limit_maps =
mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
virtual_mailbox_limit_override = yes
virtual_mailbox_maps = $transport_maps,
mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_maildir_extended = yes
virtual_maildir_limit_message = Sorry, the user's maildir has overdrawn
his diskspace \ quota, please try again later.
virtual_minimum_uid = 51
virtual_overquota_bounce = yes
virtual_transport = dovecot
virtual_uid_maps = static:51
Need any other info?
Thank you,
Claudio.
--
--------------------------------------------------------------------------------
Claudio Prono OPST
System Developer
Gsm: +39-349-54.33.258
@PSS Srl Tel: +39-011-32.72.100
Via San Bernardino, 17 Fax: +39-011-32.46.497
10141 Torino - ITALY http://atpss.net/disclaimer
--------------------------------------------------------------------------------
PGP Key - http://keys.atpss.net/c_prono.asc
------------------------------------------------------------------------------
EditLive Enterprise is the world's most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev
_______________________________________________
Dspam-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dspam-user