SpamAssassin 3.4.0 released!

Hey,

The real question here is do you have that .include_if_exists /etc/exim.spamassassin.conf line in your exim.conf ?

Yes... Here's the relevant part:

.include_if_exists /etc/exim.spamassassin.conf
#spamcheck_director:
# driver = accept
# condition = "${if and { \
# {!def:authenticated_id} \
# {!def:h_X-Spam-Flag:} \
# {!eq {$received_protocol}{spam-scanned}} \
# {!eq {$received_protocol}{local}} \
# {exists{/home/${lookup{$domain}lsearch{/etc/virtual/domainowners}{$value}}/.spamassassin/user_prefs}} \
# {<{$message_size}{500k}} \
# } {1}{0}}"
# retry_use_local_part
# transport = spamcheck
# no_verify

David
 
Thanks for your reply , im out of ideas so it works as it is , and im leave it this way (otherway i have angry customers :) )
I hope that someone from DA staff can give some clearity about this

I m happy that i solved my own problem this way and also maybe helped other who faced this problem,
I will stick with this tread to see of other users are facing the same problem, this is really odd
 
Yes, running fine... The errors showed up at the end of the update of SA but exim started and I restarted it just to be safe/sure.

Are you sure spamassassin is running? For me, exim started after the update but mail wasn't being spam-checked.
 
There should be also an include_if_exist for clamav too, latest directadmin version of exim.conf should have those two lines and create relevant files once those programs get installed (spamassassin and clamav)

Regards
 
Are you sure spamassassin is running? For me, exim started after the update but mail wasn't being spam-checked.

Correct, that was my initial question... Exim may be running but if spamd and children aren't running you wont get spam checks
 
Hey,

FYI

Im using Clam AV and there are no special line of codes in exim.spamassassin.conf , it is the same as in exim.conf

I'm using Jeff's exim.conf Version 4.2, 21-May-2013... I generally compare it to DA's version... At least the one I think they use/support...

It's here:

http://files.directadmin.com/services/exim.conf

Then I update the one I am using to reflect changes like the "include" statements they use.

Sorry for the confusion.

David
 
Hey,

Are you sure spamassassin is running? For me, exim started after the update but mail wasn't being spam-checked.

Yes, it is running... on the server I see:

[root@delta exim]# ps aux |grep spamd
root 3313 0.0 1.4 45336 38788 ? Ss 05:54 0:12 /usr/bin/spamd -d -c -m 5

Additionally there are the X-Spam-* entries in the message headers I receive and spam in my spambox...

David
 
I also got major problems after updating. Spamassassin does not want to start, having thisproblem:
Code:
Running sa-update.
error: no mirror data available for channel updates.spamassassin.org
channel: MIRRORED.BY file contents were missing, channel failed
Starting SpamAssassin.
server socket setup failed, retry 1: spamd: could not create IO::Socket::INET6 socket on [::1]:783: Cannot assign requested address
server socket setup failed, retry 2: spamd: could not create IO::Socket::INET6 socket on [127.0.0.1]:783: Address already in use
server socket setup failed, retry 3: spamd: could not create IO::Socket::INET6 socket on [127.0.0.1]:783: Address already in use
server socket setup failed, retry 4: spamd: could not create IO::Socket::INET6 socket on [127.0.0.1]:783: Address already in use
server socket setup failed, retry 5: spamd: could not create IO::Socket::INET6 socket on [127.0.0.1]:783: Address already in use
server socket setup failed, retry 6: spamd: could not create IO::Socket::INET6 socket on [127.0.0.1]:783: Address already in use
server socket setup failed, retry 7: spamd: could not create IO::Socket::INET6 socket on [127.0.0.1]:783: Address already in use
server socket setup failed, retry 8: spamd: could not create IO::Socket::INET6 socket on [127.0.0.1]:783: Address already in use
server socket setup failed, retry 9: spamd: could not create IO::Socket::INET6 socket on [127.0.0.1]:783: Address already in use
spamd: could not create IO::Socket::INET6 socket on [127.0.0.1]:783: Address already in use

But spamd is -not- running.
I also changed the /etc/init.d/exim to what was advised previously (add the -4) and I also added this in my spamupdate.sh.
Even when I run spamupdate.sh now I get these kind of errors:
Code:
chmod 755 blib/arch/auto/Mail/SpamAssassin/CompiledRegexps/body_0/body_0.so
cp body_0.bs blib/arch/auto/Mail/SpamAssassin/CompiledRegexps/body_0/body_0.bs
chmod 644 blib/arch/auto/Mail/SpamAssassin/CompiledRegexps/body_0/body_0.bs
Manifying blib/man3/Mail::SpamAssassin::CompiledRegexps::body_0.3pm
make install 
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Installing /var/lib/spamassassin/compiled/5.010/3.003002/auto/Mail/SpamAssassin/CompiledRegexps/body_0/body_0.so
Installing /tmp/.spamassassin22252YajlCrtmp/ignored/share/man/man3/Mail::SpamAssassin::CompiledRegexps::body_0.3pm
Appending installation info to /tmp/.spamassassin22252YajlCrtmp/ignored/lib64/perl5/perllocal.pod
cp /tmp/.spamassassin22252YajlCrtmp/bases_body_0.pl /var/lib/spamassassin/compiled/5.010/3.003002/bases_body_0.pl
cd /
rm -rf /tmp/.spamassassin22252YajlCrtmp
spamd: no process killed
child process [22377] exited or timed out without signaling production of a PID file: exit 255 at /usr/bin/spamd line 2960.

I also had that mirror problem and tried the solution mentioned here:
http://help.directadmin.com/item.php?id=36

But for 3.4.0 there were only 2 files present.
When issuing the command:
Code:
/usr/bin/sa-update --install Mail-SpamAssassin-rules-3.4.0.r1565117.tgz
It says it can't open ail-SpamAssassin-rules-3.4.0.r1565117.tgz.asc which indeed is not present, also the .md5 file is not present, so that solution is not working.

At this point I got it running by changing the -4 commandline options, but when I do a ./build spamassassin, the same problem occurs again.

Unfortunately, this won't work on my second server which has this problem also now during my spamupdate.sh.
Code:
Mar 21 02:44:24.603 [23526] dbg: channel: attempting channel updates.spamassassin.org
Mar 21 02:44:24.603 [23526] dbg: channel: update directory /var/lib/spamassassin/3.003002/updates_spamassassin_org
Mar 21 02:44:24.603 [23526] dbg: channel: channel cf file /var/lib/spamassassin/3.003002/updates_spamassassin_org.cf
Mar 21 02:44:24.603 [23526] dbg: channel: channel pre file /var/lib/spamassassin/3.003002/updates_spamassassin_org.pre
Mar 21 02:44:24.603 [23526] dbg: channel: metadata version = 1576640
Mar 21 02:44:24.609 [23526] dbg: dns: 2.3.3.updates.spamassassin.org => 1576640, parsed as 1576640
Mar 21 02:44:24.609 [23526] dbg: channel: current version is 1576640, new version is 1576640, skipping channel
Mar 21 02:44:24.609 [23526] dbg: diag: updates complete, exiting with code 1
plugin: failed to parse plugin (from @INC): "decode_dns_question_entry" is not exported by the Mail::SpamAssassin::Util module
Can't continue after import errors at /usr/share/perl5/Mail/SpamAssassin/Plugin/AskDNS.pm line 192
BEGIN failed--compilation aborted at /usr/share/perl5/Mail/SpamAssassin/Plugin/AskDNS.pm line 192.
Compilation failed in require at (eval 80) line 1.
And then again the error mentioned above again.
I don't understand which module I have to install now or what's going on.

This is my spamupdate.sh:
Code:
#!/bin/sh
sa-update -D
sa-compile
killall -9 spamd
/usr/bin/spamd -d -c -m 15 -4

I think it might be best to revert until this problem is solved. How can I revert my version of spamassassin?
Or does anybody has a working solution for this?
 
Could it be that problems are caused by a not updated spam.sh script file?
Code:
#!/bin/sh

#Installs Spam Assassin

#VERSION=2.64
#VERSION=3.2.5
VERSION=3.3.2 [b]<-----[/b]
 
I am also recieving the error "server socket setup failed, retry 3: spamd: could not create IO::Socket::INET6 socket on [127.0.0.1]:783: Address already in use" ...
As a result i have to remove spamassasin from exim.conf.
Right now i can recieve email without a problem. But when i enable spamassasin from exim.conf emails stop working and mail queue starts to fill up.

Btw, i've tried to manually upgrada spamassassin and it was successfull. But after DA's autoupdate my system become unstable.

Any fix ?

Thanks
 
If installed, you could try to remove perl-IO-Socket-INET6 and try again.

However, since the .asc and .md5 files are missing from filesx.directadmin.com I think we will keep having problems.

Until it's fixed, I reverted to version 3.3.2.
 
I'm not sure if it's worth upgrading for me..... Spam gets through most of the time........ Good job I checked this thread.

Same as the Win32:Evo-gen in ClamAV, always gets through......
 
Hey,

I got to looking into this more and found a few things that might be useful... Oh, I also realized that the server I was upgrading SA on was not running IPV6... That may be why the upgrade worked for me...???

Anyway, take a look at this:

http://spamassassin.1065346.n5.nabble.com/Bug-6953-New-spamd-could-not-create-IO-Socket-INET6-socket-on-783-Address-already-in-use-td105652.html

On my particular server when I ran "spamd status" I got the same error messages (...Address already in use) however SpamAssassin was running fine.

Like the link suggested I added "-i 127.0.0.1" to the spamd startup and then restarted exim... Ran the "spamd status" and no more errors... I had also tried removing IO::Socket::INET6 but that made no difference.

Here's the line for starting spamd:

if [ -e /usr/bin/spamd ]; then /usr/bin/spamd -i 127.0.0.1 -d -c -m 15 1>/dev/null 2>/dev/null; fi

Anyway...

David
 
Well... I still got a problem. no IO::Socket::INET6 present, not from cpan and not from yum.

This is what spamd gives me, even after the adjustments you just mentioned and the -4 option:
Code:
spamd status
Mar 23 00:32:05.910 [21581] warn: plugin: failed to parse plugin (from @INC): "decode_dns_question_entry" is not exported by the Mail::SpamAssassin::Util module
Mar 23 00:32:05.910 [21581] warn: Can't continue after import errors at /usr/share/perl5/Mail/SpamAssassin/Plugin/AskDNS.pm line 192
Mar 23 00:32:05.910 [21581] warn: BEGIN failed--compilation aborted at /usr/share/perl5/Mail/SpamAssassin/Plugin/AskDNS.pm line 192.
Mar 23 00:32:05.910 [21581] warn: Compilation failed in require at (eval 84) line 1.
Mar 23 00:32:06.779 [21581] error: Can't locate Mail/SpamAssassin/CompiledRegexps/body_0.pm in @INC (@INC contains: /var/lib/spamassassin/compiled/5.010/3.003002 /var/lib/spamassassin/compiled/5.010/3.003002/auto lib /usr/local/share/perl5 /usr/local/lib64/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at (eval 959) line 1.
Mar 23 00:32:07.855 [21581] info: spamd: server started on port 783/tcp (running version 3.3.2)
Mar 23 00:32:07.856 [21581] info: spamd: server pid: 21581
Mar 23 00:32:07.857 [21581] info: spamd: server successfully spawned child process, pid 21584
Mar 23 00:32:07.860 [21581] info: spamd: server successfully spawned child process, pid 21585
Mar 23 00:32:07.861 [21581] info: prefork: child states: IS
Mar 23 00:32:07.861 [21581] info: prefork: child states: II

Spamd won't start on an Exim restart.
 
Hello,

I was granted access to one client box to try and debug the issue.
I had found that there was a foreign install of SpamAssassin installed to prefix=/usr/local somehow.
We install ours to /usr.
My only guess is that it might have been the cpan install of Mail::SpamAssassin, but that's not confirmed.

This is the related guide I used to debug things:
http://spamassassin.1065346.n5.nabb...plugins-and-maximal-should-pass-td107985.html

Where the tester call is this:
Code:
/usr/local/bin/sa-learn --sync --force-expire
where, if it throws errors, something is up. (actualy, that bin shouldn't even exist.. so if it doesn't exist, you'll likely not be affected by this issue)

For this case, I found 2 instances of the perl SA install, I believe could in theory search like this
Code:
locate /Mail/SpamAssassin.pm
where you should only see one perl path.
For the box, this was the older instance, so I moved it, eg:
Code:
mv /usr/local/share/perl5/Mail/SpamAssassin /usr/local/share/perl5/Mail/SpamAssassin.old
Next, I found other binaries, again, not ours, eg:
Code:
/usr/local/bin/sa-update/usr/local/bin/spamassassin
/usr/local/bin/spamd
/usr/local/bin/spamc
so I renamed them all to:
Code:
/usr/local/bin/sa-update.old
/usr/local/bin/spamassassin.old
/usr/local/bin/spamd.old
/usr/local/bin/spamc.old

And then the call to
Code:
/usr/bin/sa-update
worked, and the sa-learn call then threw no errors (likely just from the Perl Mail/SpamAssasin rename)

Finally, a restart of exim booted up spamd:
Code:
/etc/init.d/exim restart
ps ax | grep spam
and keep an eye on /var/log/maillog and /var/log/messages for spamd errors.

There would likely be a cleaner way to get rid of the duplicate SA module.. but may require knowing exactly how it got there in the first place.

I hope this helps anyone who is affected, or possibly helps someone what I might be missing, as to where the other SA bits came from (again, guessing cpan installed it.. but might only be an issue now, as the versions differ)

John
 
Shouldn't the /user/local/directadmin/scripts/spam.sh script be updated and stating "VERSION=3.4.0" now after upgrading?
 
No, it's only updated with the DA versions and we updated to 3.4.0 after DA 1.45.0 was released.
Custombuild is the one that updates versions on the fly.

John
 
When we updated SA on our CENTOS boxes, the following error appeared and spamd failed to start:

Code:
...
Starting SpamAssassin.
server socket setup failed, retry 9: spamd: could not create IO::Socket::INET6 socket on [127.0.0.1]:783: Address already in use
...
spamd: could not create IO::Socket::INET6 socket on [127.0.0.1]:783: Address already in use

When we manually try to run SA (/usr/bin/spamd -d -c -m 15):

Code:
child process [13211] exited or timed out without signaling production of a PID file: exit 255 at /usr/bin/spamd line 2960.

We fixed the problem just by using:

Code:
/usr/bin/sa-update
 
I try to update the spamassassin in custombuild and it show the following

dependency check complete...

REQUIRED module out of date: NetAddr::IP
optional module missing: Geo::IP
optional module missing: Razor2
optional module missing: IO::Socket::IP
optional module older than recommended: Mail::DKIM
optional module missing: Encode::Detect
optional module missing: Net::patricia
optional binary missing or nonfunctional: fetch

warning: some functionality may not be available,
please read the above report before continuing!

Done Configuration.
Trying to make SpamAssassin...
make: *** No targets specified and no makefile found. Stop.

If needed, use cpan to install the missing modules, eg:
cpan -i Archive::Tar Digest::SHA Mail::SPF IP::Country Net::Ident IO::Socket::INET6 Compress::Zlib Mail::DKIM LWP::UserAgent HTTP::Date Encode::Detect ExtUtils::MakeMaker

Press enter to answer [yes] if it asks you to install dependencies (it will prepend them to the queue)
Answer no if it asks: Are you ready for manual configuration? [yes] no


I try to run cpan -i Archive::Tar Digest::SHA Mail::SPF IP::Country Net::Ident IO::Socket::INET6 Compress::Zlib Mail::DKIM LWP::UserAgent HTTP::Date Encode::Detect ExtUtils::MakeMaker
but seems it can't install those module, my system is Fedora 9, is it too old so that can upgrade to new spamassassin ?
 
Back
Top