spamassassin-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marc Richter <m...@marc-richter.info>
Subject Re: SA doesn't respect my user_prefs
Date Fri, 11 Sep 2015 14:31:17 GMT
Hi @ everyone,

GOTCHA !

Finally, I found the solution myself: The issue is in the systemd 
spamassassin.service unit file of Arch Linux! This is how 
/usr/lib/systemd/system/spamassassin.service looks like:

[Unit]
Description=Spamassassin daemon
After=syslog.target network.target

[Service]
ExecStart=/usr/bin/vendor_perl/spamd -x -u spamd -g spamd
StandardOutput=null
StandardError=null
Restart=always

[Install]
WantedBy=multi-user.target

Looking at 
https://spamassassin.apache.org/full/3.0.x/dist/doc/spamd.html , it 
isn't clear what exactly "-x" is doing, since it is listed within one 
single line of two opposite clear-text options:

"""
-x, --nouser-config, --user-config
Turn off(on) reading of per-user configuration files (user_prefs) from 
the user's home directory. The default behaviour is to read per-user 
configuration from the user's home directory.
"""

So, -x could have meant both, to turn this on or off in my reading.

More clearly this is written in the manpage of spamd:

-x, --nouser-config               Disable user config files

Seems as if when -x is set, "allow_user_rules 1" neither has any effect, 
nor is a warning printed anywhere that there are opposite options in 
place or ignored, nor has this apeared in Debuging output.

I have solved this by

1. cp /usr/lib/systemd/system/spamassassin.service /etc/systemd/system/
2. Changed "ExecStart=" from "/usr/bin/vendor_perl/spamd -x -u spamd -g 
spamd" to "/usr/bin/vendor_perl/spamd -u spamd -g spamd"
3. systemctl daemon-reload
4. systemctl restart spamassassin

Now it works again like a charm, running spamd as spamd:spamd, and using 
spamc.

Thanks @ all for trying to help in this case! :)

Best regards,
Marc

Am 09.09.2015 um 08:46 schrieb Marc Richter:
> Hi everyone,
>
> I'm running SA 3.4.1 with Perl 5.22.0 .
> It works quite well, but since a few weeks, it looks like my user_prefs
> isn't taken into account by SA anymore. Let's show this by example:
>
> There are *lots* of blacklist_from entries in there; one of them is:
>
> blacklist_from          *@neuronation.*
>
> Today, I got another mail with the following (relevant) headers:
>
> X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on
>      tango012.marc-richter.info
> X-Spam-Level: ***
> X-Spam-Status: No, score=3.6 required=4.0
> tests=BAYES_99,BAYES_999,DKIM_SIGNED,
>   DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,
>   RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,RP_MATCHES_RCVD,SPF_PASS,URIBL_BLOCKED
>      autolearn=no autolearn_force=no version=3.4.1
> From: NeuroNation <mailer@neuronation.de>
> Date: Wed, 09 Sep 2015 06:05:02 +0000 (UTC)
>
> Thus, this mail should get +100 for matching my blacklist_from entry.
> But, as you can see, it isn't.
>
> When I'm running "spamassassin --test-mode < my_maildir_file", I get
> expected results:
>
> spamassassin --test-mode < .maildir/cur/msg.SbGC\:2\,S
>
> [...]
> Inhaltsanalyse im Detail:   (99.9 Punkte, 3.0 ben�tigt)
>
> Pkte Regelname              Beschreibung
> ---- ----------------------
> --------------------------------------------------
>   0.0 URIBL_BLOCKED          ADMINISTRATOR NOTICE: The query to URIBL
> was blocked.
>                              See
> http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block
>                               for more information.
>                              [URIs: neuronation.de]
> -0.0 RCVD_IN_MSPIKE_H3      RBL: Good reputation (+3)
>                              [192.254.116.16 listed in wl.mailspike.net]
>   100 USER_IN_BLACKLIST      From: address is in the user's black-list
>   0.0 HEADER_FROM_DIFFERENT_DOMAINS From and EnvelopeFrom 2nd level mail
>                              domains are different
> -0.0 SPF_PASS               SPF: Senderechner entspricht SPF-Datensatz
>   0.0 RP_MATCHES_RCVD        Envelope sender domain matches handover
> relay domain
>   0.0 HTML_MESSAGE           BODY: Nachricht enth�lt HTML
> -0.1 DKIM_VALID_AU          Message has a valid DKIM or DK signature
> from author's
>                              domain
>   0.1 DKIM_SIGNED            Message has a DKIM or DK signature, not
> necessarily valid
> -0.1 DKIM_VALID             Message has at least one valid DKIM or DK
> signature
> -0.0 RCVD_IN_MSPIKE_WL      Mailspike good senders
>
> SA is started by postfix; in the master.cf of postfix there are these
> lines:
>
> smtp      inet  n    -    n    -    -    smtpd -o
> content_filter=spamassassin
> spamassassin
>      unix  -    n    n    -    -    pipe
>      flags=Rq user=spamfilter argv=/home/spamfilter/filter.sh -oi -f
> ${sender} ${recipient}
>
> /home/spamfilter/filter.sh contains:
>
> #!/bin/sh
> # filter.sh
> #
> # This script redirects mail flagged as spam to a separate account
> # You must first create a user account named "spamvac" to hold the
> flagged mail
> SENDMAIL="/usr/sbin/sendmail -i"
> SPAMASSASSIN=/usr/bin/vendor_perl/spamc
> COMMAND="$SENDMAIL $@"
> USER=`echo $COMMAND | awk '{ print $NF }' | sed 's/@.*$//'`
> NEW_COMMAND=`echo $COMMAND | awk '{ $6 = "spamfilter"; NF = 6; print }'`
> # Exit codes from <sysexits.h>
> EX_TEMPFAIL=75
> EX_UNAVAILABLE=69
> umask 077
> OUTPUT="`mktemp /tmp/mailfilter.XXXXXXXXXX`"
> if [ "$?" != 0 ]; then
>          /usr/bin/logger -s -p mail.warning -t filter "Unable to create
> temporary file."
>          exit $EX_TEMPFAIL
> fi
> # Clean up when done or when aborting.
> trap "rm -f $OUTPUT" EXIT SIGTERM
> $SPAMASSASSIN -x -E -u $USER > $OUTPUT
> return="$?"
> if [ "$return" == 1 ]; then
>          $NEW_COMMAND < $OUTPUT
>          exit $?
> elif [ "$return" != 0 ]; then
>          /usr/bin/logger -s -p mail.warning -t filter "Temporary
> SpamAssassin failure (spamc return $return)"
>          exit $EX_TEMPFAIL
> fi
> $SENDMAIL "$@" < $OUTPUT
> exit $?
>
> SA should have access to my user_prefs; these are the groups for the
> user "spamfilter":
> tango012 ~ # groups spamfilter
> users spamd
> tango012 ~ #
>
> The full path-permission to my user_prefs are:
> ww@tango012 ~ $ ls -ld /home /home/Whitewolf_Fox
> /home/Whitewolf_Fox/.spamassassin
> /home/Whitewolf_Fox/.spamassassin/user_prefs
> drwxr-xr-x 13 root root  4096 23. Jul 10:36 /home
> drwxr-xr-x 27 ww   users 4096  9. Sep 08:32 /home/Whitewolf_Fox
> drwxrwx---  2 ww   spamd 4096  9. Sep 08:32
> /home/Whitewolf_Fox/.spamassassin
> -rw-rw----  1 ww   spamd 8622  4. Sep 15:15
> /home/Whitewolf_Fox/.spamassassin/user_prefs
> ww@tango012 ~ $
>
> Standing here, I'm out of ideas, since this looks all good to me.
>
> Can somebody imagine what's wrong here?
>
> Best regards,
> Marc
>

Mime
View raw message