SpamAssassin Install on CentOS 8

CanadaGuy

Verified User
Joined
Nov 14, 2019
Messages
158
I attempted to follow the guide here:


and I get the following:

Code:
No match for argument: perl-Razor-Agent
No match for argument: pyzor
Error: Unable to find a match

The following shows up in the console:

Code:
Configuring SpamAssassin 3.4.2...
NOTE: settings for "make test" are now controlled using "t/config.dist".
See that file if you wish to customize what tests are run, and how.

checking module dependencies and their versions...

***************************************************************************
NOTE: the optional Digest::SHA1 module is not installed.

  The Digest::SHA1 module is still required by the Razor2 plugin.
  Other modules prefer Digest::SHA, which is a Perl base module.


***************************************************************************
NOTE: the optional Geo::IP module is not installed.

  Used by the RelayCountry plugin (not enabled by default) to determine
  the domain country codes of each relay in the path of an email.  Also used by
  the URILocalBL plugin to provide ISP and Country code based filtering.


***************************************************************************
NOTE: the optional Net::CIDR::Lite module is not installed.

  Used by the URILocalBL plugin to process IP address ranges.


***************************************************************************
NOTE: the optional Razor2 module is not installed,
minimum required version is 2.61.

  Used to check message signatures against Vipul's Razor collaborative
  filtering network. Razor has a large number of dependencies on CPAN
  modules. Feel free to skip installing it, if this makes you nervous;
  SpamAssassin will still work well without it.

  More info on installing and using Razor can be found
  at http://wiki.apache.org/spamassassin/InstallingRazor .


***************************************************************************
NOTE: the optional Net::Patricia module is not installed,
minimum required version is 1.16.

  If this module is available, it will be used for IP address lookups
  in tables internal_networks, trusted_networks, and msa_networks. Recommended
  when a number of entries in these tables is large, i.e. in hundreds
  or thousands. However, in case of overlapping (or conflicting) networks
  in these tables, lookup results may differ as Net::Patricia finds a
  tightest-matching entry, while a sequential NetAddr::IP search finds
  a first-matching entry. So when overlapping network ranges are given,
  specifying more specific subnets (longest netmask) first, followed by
  wider subnets ensures predictable results.


***************************************************************************
NOTE: the optional Net::DNS::Nameserver module is not installed.

  Net::DNS:Nameserver is typically part of Net::DNS.  However, RHEL/
  CentOS systems may install it using separate packages.  Because of this, we
  check for both Net::DNS and Net::DNS::Nameserver.  However,
  Net::DNS::Nameserver is only used in make test as of June 2014.


***************************************************************************
NOTE: the optional BSD::Resource module is not installed.

  BSD::Resource provides BSD process resource limit and priority
  functions.  It is used by the optional ResourceLimits Plugin.

checking binary dependencies and their versions...

***************************************************************************
NOTE: the optional fetch binary is not installed.

   Sa-update will use curl, wget or fetch to download updates.
   Because perl module LWP does not support IPv6, sa-update as of
   3.4.0 will use these standard programs to download rule updates
   leaving LWP as a fallback if none of the programs are found.

   *IMPORTANT NOTE*: You only need one of these programs
       It's only a concern if you are warned about all 3
       i.e. (curl, wget & fetch) missing


***************************************************************************
NOTE: the optional re2c binary is not installed.

  The "re2c" program is used by sa-compile to compile rules
  for regular expressions to speed up scanning.

dependency check complete...

optional module missing: Digest::SHA1
optional module missing: Geo::IP
optional module missing: Net::CIDR::Lite
optional module missing: Razor2
optional module missing: Net::Patricia
optional module missing: Net::DNS::Nameserver
optional module missing: BSD::Resource
optional binary missing or nonfunctional: fetch
optional binary missing or nonfunctional: re2c

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

Checking if your kit is complete...
Looks good
Warning: prerequisite Digest::SHA1 0 not found.
'CONTACT_ADDRESS' is not a known MakeMaker parameter name.
'RUN_NET_TESTS' is not a known MakeMaker parameter name.
Generating a Unix-style Makefile
Writing Makefile for Mail::SpamAssassin
Writing MYMETA.yml and MYMETA.json
Makefile written by ExtUtils::MakeMaker 7.34
Done Configuration.

I don't recall if Debian 10 or CentOS 7 gave these complaints...is there a problem with SA on CentOS 8? Any modifications to make everything a success or is everything good?
 
Run this first

dnf -y install perl-ExtUtils-MakeMaker perl-Digest-SHA perl-Net-DNS perl-NetAddr-IP perl-Archive-Tar perl-IO-Zlib perl-Digest-SHA perl-Mail-SPF \
perl-IO-Socket-INET6 perl-IO-Socket-SSL perl-Mail-DKIM perl-DBI perl-Encode-Detect perl-HTML-Parser \
perl-HTML-Tagset perl-Time-HiRes perl-libwww-perl perl-Sys-Syslog perl-DB_File perl-Razor-Agent pyzor
 
Run this first

dnf -y install perl-ExtUtils-MakeMaker perl-Digest-SHA perl-Net-DNS perl-NetAddr-IP perl-Archive-Tar perl-IO-Zlib perl-Digest-SHA perl-Mail-SPF \
perl-IO-Socket-INET6 perl-IO-Socket-SSL perl-Mail-DKIM perl-DBI perl-Encode-Detect perl-HTML-Parser \
perl-HTML-Tagset perl-Time-HiRes perl-libwww-perl perl-Sys-Syslog perl-DB_File perl-Razor-Agent pyzor

I did the yum version as suggested on the website, I'll try this. Do I need to re-run the remaining SA config again?

*edit* I just tried it, and get the same no match for perl-Razor-Agent and pyzor
 
I just ran that command followed by

cd /usr/local/directadmin/custombuild
./build set spamd spamassassin
./build spamassassin

and it worked. CentOS 8 also.
What's the output of dnf repolist enabled?
 
Code:
AppStream                                                                                 CentOS-8 - AppStream                                                                                 4,985
BaseOS                                                                                    CentOS-8 - Base                                                                                      2,840
extras                                                                                    CentOS-8 - Extras                                                                                        3

Am I missing some repos? I just did bare minimum when setting up this machine.
 
The packages you need are in epel repo.
# dnf install epel-release

and run again:

# dnf -y install perl-ExtUtils-MakeMaker perl-Digest-SHA perl-Net-DNS perl-NetAddr-IP perl-Archive-Tar perl-IO-Zlib perl-Digest-SHA perl-Mail-SPF \
perl-IO-Socket-INET6 perl-IO-Socket-SSL perl-Mail-DKIM perl-DBI perl-Encode-Detect perl-HTML-Parser \
perl-HTML-Tagset perl-Time-HiRes perl-libwww-perl perl-Sys-Syslog perl-DB_File perl-Razor-Agent pyzor
 
The packages you need are in epel repo.
# dnf install epel-release

Hmm, did that, and got the packages installed, but now I'm wondering whether I'm missing a few other packages that maybe didn't get installed...
 
You only need the packages listed in the command, if you didn't see any "No match" or "Unable to find" messages when running it again, you're good to go.
 
You only need the packages listed in the command, if you didn't see any "No match" or "Unable to find" messages when running it again, you're good to go.

Sorry, I'm referring to the general DA install, and whether there is something missing. I guess we'll find out.
 
I think it's probably okay, DA would install epel repo if it needed it.
 
I think it's probably okay, DA would install epel repo if it needed it.
Ah, true. Maybe they need to add that to the CentOS 8 pre-install commands? I did it from the 1905 boot ISO where I needed to manually add the mirror list during the install.
 
Yeah, they probably should. There's a few things in the docs which are outdated actually.
 
Back
Top