If you plan to run amavisd-new, you don't need to run spamassassin separately (usually via spamd). Amavisd-new calls spamassassin internally to scan messages. You can also install clamav and enable virus scanning in the configuration file. RUNTIME DEPENDENCIES: ZeroMQ library -- since amavisd-new version > 2.8.x, depends heavily on ZeroMQ. DEPENDENCIES: FOR SPAMASSASSIN (please install in this order): perl-Test-Pod perl-Encode-Detect perl-Image-Info perl-TimeDate perl-Net-libIDN Net-SSLeay perl-Socket6 perl-IO-Socket-INET6 perl-Crypt-OpenSSL-Bignum perl-Crypt-OpenSSL-Random perl-Crypt-OpenSSL-RSA perl-Geography-Countries perl-IP-Country perl-digest-sha1 perl-digest-hmac perl-html-tagset perl-html-parser re2c libwww-perl perl-NetAddr-IP perl-Net-Server perl-Net-Ident perl-MailTools perl-net-ip perl-net-dns perl-Net-DNS-Resolver-Programmable perl-Mail-SPF perl-Mail-DKIM spamassassin FOR AMAVISD-NEW (please install in this order): perl-Convert-TNEF perl-Convert-UUlib perl-Convert-BinHex perl-Archive-Zip perl-IO-stringy perl-MIME-tools perl-Unix-Syslog perl-BerkeleyDB perl-IO-Multiplex perl-Net-LibIDN perl-File-LibMagic (recommended) SLACKBUILD CHANGELOG: Script and package changes introduced in version >= 2.6.6 1. logrotate file is renamed amavisd-new. 2. rc script is renamed to rc.amavisd-new 3. logfile in the logrotate script is renamed to amavisd-new.log. Make sure you change the logfile in the amavisd.conf file and rename the log file. Look for, $LOGFILE directive in the configuration file. 4. Remember to update your rc.local and rc.local_shutdown scripts accordingly. 5. With version 2.7, a new process amavisd-signer is spawned to take care of dkim signing. Please read RELEASE_NOTES in the documentation. 6. With version > 2.8, rc script has been overhauled to start 3 daemons, more notes are in the rc script. SETUP: 1. Create amavis user/group, before running the script. You don't have to follow uid/gid strictly. This is just an example, you may as well use any other uid/gid combination. groupadd -g 211 amavis useradd -d -m /var/lib/amavis -s /bin/bash -u 211 -g 211 amavis 2. Make sure you have write perms for amavis group to amavis home (in this case, /var/lib/amavis) 3. Create /var/log/amavisd.log file, change perms to allow write access to amavisd user/group. 4. Add amavis user to clamav group and set "AllowSupplementaryGroups yes" in fresclam.conf to allow amavis to scan messages. 5. To scan messages using spamassassin, you need to provide write access to amavis user to /var/lib/spamassassin, which is the default. If the directory doesn't exist, it will be created by spamassassin but the permissions will correspond to the user invoking it. 6. Edit /etc/amavisd.conf. Verbose version of config file is included to aid in configuration. 7. You can turn on debugging in log file with $sa_debug configuration variable in /etc/amavisd.conf.