How to get support for ASSP Deluxe for cPanel
Before asking for support, please make sure your understand whether your problem is related to ASSP or ASSP Deluxe for cPanel.
- ASSP is the The Anti-Spam SMTP Proxy (ASSP) Server and it's controlled by ASSP WEB INTERFACE (GUI).
- ASSP Deluxe for cPanel is the ASSP frontend/integration for cPanel ; it includes the ASSP WHM INTERFACE, spambox IMAP for each email user, email queue finder, spam outgoing notifications, clamAV unofficial signatures support, Pyzor plugin for ASSP, automatic updates, Daily blocked email report, a cPanel ASSP frontend for users.
After cPanel v. 120 ASSP Deluxe and ASSP WHM interface will NOT work (cPanel forgot to update Ioncube loaders). Below you can read how to fix this issue. Only if you already have cPanel version >= 120 you can update and install a working ASSP Deluxe for cPanel version by executing following commands .
now open ASSP WHM interface update ASSP deluxe for cPanel frontend for your cPanel themes. After this step
ASSP deluxe for cPanel should work with
cPanel v.120 and PHP 8.3.8 . Now start ASSP using your
ASSP WHM. ONLY if you reset your EXIM configuration (if you disabled fully ASSP), reconfigure EXIM configt for ASSP usage as explained in HOW TO
(almost all disabled except of validate sender feature).
If your question is strictly related to
ASSP and
ASSP Web Interface usage, you can find an answer by reading the integrated
ASSP GUI documentation. If this does not help you can contact
ASSP forum and/or the
ASSP mailing list or the
ASSP WIKI. If you contact the ASSP forum and/or the ASSP mailing list,
only report your ASSP version since the ASSP community has no idea about cPanel and/or
ASSP Deluxe for cPanel frontend. Never ask
ASSP Deluxe for cPanel support in the ASSP forums or mailing list, they CANNOT HELP you, you can ask only
ASSP specific questions.
If your question is strictly related to ASSP Deluxe for cPanel, please be sure you read the FAQs on this page first and make sure you have followed the post installation steps below; also check the changelog and be sure your software is all updated.
If your problem is still not solved you can submit a support request by clicking
HERE .
Any support request that does not include your server licensed ip will be ignored. Support requests are processed within 24~48 hours; if you have an urgent problem and can't wait, you can temporarly disable ASSP by following these simple steps . There is no need to uninstall ASSP if you have a problem which you can't solve. ASSP Deluxe support does not include root support, if you need a root investigation of your ASSP installation you can order this service or ASSP managed services . Never ask ASSP or ASSP Deluxe for cPanel support to cPanel support or to your isp/datacenter, they CANNOT help you. If you have an EXIM problem and you need to report the problem to cPanel you will need to temporarly disable ASSP.
ASSP Deluxe for cPanel : FAQs
Which are required cronjobs to run ASSP Deluxe for cPanel ?
After installation HOW TO you should already have following cronjobs setup.
rebuildspamdb.pl cron . It's required only in ASSP v1 installation. It rebuilds the spamDB database each 24 hours.
10 7 * * * cd /usr/local/assp;/usr/local/perls/perl-5.14.4/bin/perl /usr/local/assp/rebuildspamdb.pl
ex_localdomains.php cron . It checks ASSP installation integrity and fix issues if required, generates local email and domains , update software if required, send the daily spam reports, plus various other minor tasks. It should run every 59 minutes.
*/59 * * * * /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/ex_localdomains.php
update_email.php cron . It applies ASSP WHM interface default settings and checks for new cPanel email or new domain and add them to /usr/local/assp/deluxe/assp_local_email and /usr/local/assp/deluxe/assp_local_domains. It also records ASSP status running values (cpu, RAM) and show them in ASSP WHM INTERFACE
ASSP STATUS CHARTS , plus various other minor tasks. It should run every 3 minutes.
*/3 * * * * /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/update_email.php
status.php cron . It checks ASSP status and restart it automatically if an ASSP crash is detected. It should run every 3 minutes. If you set a value under 3 minutes you may have ASSP false restarts.
*/3 * * * * /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/status.php
find_abusers.php cron . It creates a list of bad ips and bad email which are sending continuos SPAM to your server . You can find more details related to find_abusers.php at this link . It should run every 20~30 minutes
*/20 * * * * /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/find_abusers.php sw=29 rl=50 sc=30 dc=30 on=1
signatures.php cron . It updates a list of clamAV Unofficial signatures plus grscripts YARA rules. It should run daily.
0 2 * * * /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/signatures.php
spam_cronjob.php. It's a required cron if you want use spambox IMAP.
It checks ASSP SPAM and deliver them to user spambox IMAP (if the user activated IMAP spambox for his account). It executes each 4 minutes.
*/4 * * * * /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/spam_cronjob.php
clear_spambox.php. It's a required cronjob if you want use spambox IMAP . It executes daily. It removes spambox email older than 7 days (default) from all your user accounts /spambox folder (and from spambox@domain.com POP3 if it's used). It executes daily. You (administrator) will receive an email notification reporting you the spambox email which were removed. At the end of the cleaning process the script will send also a DAILY SPAM REPORT if you enabled this feature in ASSP WHM INTERFACE
DAILY SPAM REPORTS.
You can add following commands to the clear_spambox.php cronjob .
-
sday=n : it removes spam older than n days ( n is a numeric value between 3 and 100 ).
-
noemail=yes : stop daily email notification reporting you the number of email removed from old spamboxes
-
limitspace=n : n is a Kb numeric value. For example 10000 means 10000 Kb (10 MB). If you set limitspace=10000 , the cleaner will remove other 2 days of SPAM from all spambox accounts with a /spambox folder size over 10000 Kb.
Default cron
30 1 * * * /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/clear_spambox.php
Following cron will remove spam older than 15 days and remove other 2 days of older SPAM if the spambox user is greater than 8000 Kb.
30 1 * * * /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/clear_spambox.php sday=15 limitspace=8000
Optional cronjob to restart automatically your ASSP every day at 03:15 AM . Following cron (single cronjob row) restarts your ASSP freeing up RAM resources every day at 03:15 AM . You should setup it if server RAM is low.
3 15 * * * /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/restart.php
How to install and enable ASSP Deluxe for cPanel spambox IMAP ?
If you didn't installed the SPAMBOX plugin in the installation HOW TO you can do it now .
By using the sendAllSpam ASSP feature, ASSP Deluxe for cPanel collects all SPAM in a spammaster email account and using a spambox cronjob delivers automatically all these spam to the email owner. Spambox plugin can be easily installed using following steps.
note : the /spambox IMAP folder will be created after the email will receive the first SPAM email message. spambox IMAP folders are cleared automatically using the clear_spambox.php cronjob , read the FAQs section for more details.
After the spambox installation you'll see new spambox features in your ASSP WHM INTERFACE which allows you to check spamboxes (SPAM FINDER) , enable/disable spambox for your users, and set spambox IMAP default status for new accounts.
How to restart ASSP from console ?
You can STOP and START ASSP from console in this way
# /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/stop.php
# /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/start.php
or
# /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/restart.php
How to reduce RAM used by ASSP ?
You can apply following steps to reduce ASSP RAM usage
My ASSP v2 using BerkeleyDB refuses to start or restarts very often. How to solve this issue ?
If your ASSP refuses to start or restarts very often and you are using BerkeleyDB try this
- Execute following commands to reinstall BerkeleyDB and restart your ASSP .
# /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/berk.php
# chmod 755 /usr/local/assp/deluxe/restart_assp_berkeley.sh
# /usr/local/assp/deluxe/restart_assp_berkeley.sh
# chmod 644 /usr/local/assp/deluxe/restart_assp_berkeley.sh
- If ASSP restarts correctly at step 1. open your ASSP WHM Interface and rebuild the ASSP database using Rebuild SPAM DB.
If ASSP does not restart after step 1. or if the restart issue problem continues execute this
# /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/install_modules.php test=no reinstall=yes
to reinstall ASSP Perl modules. Once completed try to start your ASSP using the ASSP WHM Interface or repeat the step 1.
- If your ASSP refuses to restart after the steps 1. and 2. restore an old backup ASSP installation of your /usr/local/assp folder (if you have a backup) or try restoring a working old assp.cfg from /usr/local/assp/backup_cfg in /usr/local/assp (overwriting current assp.cfg) ; you should restore the assp.cfg file when ASSP is stopped . If also these steps does not solve the problem you should reinstall your ASSP or switch to MySQL here or click here to receive professional root support .
My ASSP v2 using MySQL refuses to start or restarts very often. How to solve this issue ?
If your ASSP refuses to start and you are using MySQL try this
- Open ASSP WHM Interface and STOP ASSP . Then open the MYSQL SETUP and clik the phpmyadmin link. Now click Empty in the hmmdb , spamdb and whitelist rows as shown below.
After this step return to ASSP WHM Interface and START ASSP.
- If ASSP restarts correctly at step 1. open your ASSP WHM Interface and rebuild the ASSP database using Rebuild SPAM DB.
If ASSP does not restart after step 1. execute this
# /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/install_modules.php test=no reinstall=yes
to reinstall ASSP Perl module. Once completed try to start your ASSP using the ASSP WHM Interface or repeat the 1.
- If your ASSP refuses to restart after the steps 1. and 2. restore an old backup ASSP installation of your /usr/local/assp folder (if you have a backup) or try restoring an working old assp.cfg from /usr/local/assp/backup_cfg . If also these steps does not solve the problem you should reinstall your ASSP or switch to BerkeleyDB here or click here to receive professional root support .
How to fix ASSP Deluxe for cPanel license issues ?
Open your console and execute this
# wget -O /usr/local/assp/deluxe/license.php http://www.grscripts.com/assp150/deluxe/license.deluxe
# chmod 644 /usr/local/assp/deluxe/license.php
If the problem does not fix contact support here and provide your server ip.
You can find your server ip in this way
# curl -L https://myip.cpanel.net/v1.0
Can I change my ASSP Deluxe for cPanel licensed ip ?
You can change your licensed ip anytime. If you want change your licensed server ip simply contact support via email here and provide your OLD server ip and your NEW server ip. If you need an extension time (max 30 days) for OLD server ip please specify it in your email.
I added a new /home2 location , should I do something in ASSP Deluxe ?
You must follow this setup guide here if you have more than one /home location for your hosting accounts.
I have too much false positives (good email blocked), how to solve it ?
- Every blocked email is not lost and it's collected in various ways , read here for more info .
- Decrease anti SPAM settings sensibility for the user which is reporting the issue or decrease spam setting sensibility globally in your server , read here for more info .
I have SPAMBOX enabled . Can I skip spambox collection for some sender ?
If you want drop an email without passing it to spambox , you can use ASSP WEB INTERFACE (GUI)
Collecting SPAM and HAM menu and enter a regular expression in noCollectRe . If the content of a collected email (incl. X-ASSP-... headers) matches this regular expression, it will be deleted from the spambox collection .
For example if you enter
[A-Za-z0-9._%+-]+@lop.ru
All email coming from *@lop.ru will not be collected in spambox.
Another example, if you enter
/[\p{Han}]/ug
all email with chinese chars will not be collected in spambox.
As alternative you may use ASSP WEB INTERFACE (GUI)
Copy Spam & Ham and enter a numeric value in ccMaxScore. All email whose score exceeds this ccMaxScore threshold will not be copied in spambox. For example: 90. The value must be much greater than the PenaltyMessageLimit (ASSP v2) set in AASSP WHM INTERFACE
SCORE SETTINGS page.
Some ASSP GUI fields allow to enter Regular Expressions, what do you recommend to validate Regular expressions ?
You can use https://regex101.com (e.g.) which is an excellent regex tester and debugger .
ASSP fields marked with two asterisk (**) accepts regular expressions (regex) and can accept a second weight value. Every weighted regex has to be followed by '=>' and the weight value. For example: Phishing\.=>1.45 . The multiplication result of the weight and the penaltybox valence value will be used for scoring, if the absolute value of weight is less or equal 6. Otherwise the value of weight is used for scoring. It is possible to define negative values to reduce the resulting message score.
note : Every weighted regex that contains at least one '|' has to begin and end with a '~' - inside such regexes it is not allowed to use a tilde '~', even it is escaped - for example: ~abc\~|def~=>23 or ~abc~|def~=>23 - instead use the octal (\126) or hex (\x7E) notation , for example ~abc\126|def~=>23 or ~abc\x7E|def~=>23
How to migrate ASSP from old server A to new server B ?
If you need to migrate ASSP from server A (old) to server B (old) , you should first ask a change of license from server ip A to server ip B . You should simply contact support via email here and provide your OLD server ip and your NEW server ip. If you need an extension time (max 30 days) for OLD server ip please specify it in your email.
Do not copy /usr/local/assp folder or the ASSP configuration file ( /usr/local/assp/assp.cfg ) from an old server to a new server, it does NOT work. Please follow the instructions below to migrate ASSP data between two servers.
ASSP v1 data migration (ASSP v1 to ASSP v1)
If you want use Grscripts.com professional service to migrate your ASSP from your old server to new server you can order this service.
Once you have changed your ASSP Deluxe for cPanel licensed ip as explained above, install ASSP v1 in your new server using this HOW TO . At the end of your ASSP v1 installation go to console and in the new server execute this
# cd /usr/local/assp
# mkdir /usr/local/assp/old
Now execute this in the old server replacing server_ip with the new server ip and ssh_port with the SSH port of new server ip .
# rsync -av -L -e "ssh -p ssh_port" /usr/local/assp/ root@server_ip:/usr/local/assp/old
You can close your old server now . Open ASSP WHM INTERFACE in your new server and STOP ASSP . Now execute this in new server.
# cd /usr/local/assp
# rsync -r /usr/local/assp/old/files/ /usr/local/assp/files
# rsync -r /usr/local/assp/old/notspam/ /usr/local/assp/notspam
# rsync -r /usr/local/assp/old/spam/ /usr/local/assp/spam
# rsync -r /usr/local/assp/old/okmail/ /usr/local/assp/okmail
# rsync /usr/local/assp/old/whitelist /usr/local/assp/whitelist
# rsync /usr/local/assp/old/persblack /usr/local/assp/persblack
# rsync /usr/local/assp/old/spamdb /usr/local/assp/spamdb
Now you can return to ASSP WHM INTERFACE and START ASSP. All should run correctly, ASSP main settings ( /files ), whitelist, personal blacklist, and ASSP spam database have been migrated.
If everything is working correctly you can remove the /old folder in this way
# cd /usr/local/assp
# rm -fr /usr/local/assp/old
ASSP v1 data migration (ASSP v1 to ASSP v2)
If you want use Grscripts.com professional service to migrate your ASSP from your old server to new server you can order this service.
Once you have changed your ASSP Deluxe for cPanel licensed ip as explained above, install ASSP v2 in your new server using this HOW TO but do NOT setup the ASSP database (skip the database BerkeleyDB/MySQL setup) . At the end of your ASSP v2 installation go to console and in the new server execute this
# cd /usr/local/assp
# mkdir /usr/local/assp/old
Now execute this in the old server replacing server_ip with the new server ip and ssh_port with the SSH port of new server ip .
# rsync -av -L -e "ssh -p ssh_port" /usr/local/assp/ root@server_ip:/usr/local/assp/old
You can close your old server now . Open ASSP WHM INTERFACE in your new server and STOP ASSP . Now execute this in new server.
# cd /usr/local/assp
# rsync -r /usr/local/assp/old/files/ /usr/local/assp/files
# rsync -r /usr/local/assp/old/notspam/ /usr/local/assp/notspam
# rsync -r /usr/local/assp/old/spam/ /usr/local/assp/spam
# rsync -r /usr/local/assp/old/okmail/ /usr/local/assp/okmail
# rsync /usr/local/assp/old/whitelist /usr/local/assp/whitelist
# rsync /usr/local/assp/old/persblack /usr/local/assp/persblack
# rsync /usr/local/assp/old/spamdb /usr/local/assp/spamdb
Now you can return to ASSP WHM INTERFACE and START ASSP. All should run correctly, ASSP main settings ( /files ), whitelist, personal blacklist, and ASSP spam database have been migrated.
If everything is working correctly you can remove the /old folder in this way
# cd /usr/local/assp
# rm -fr /usr/local/assp/old
Now you can setup an ASSP Database using the BerkeleyDB HOW TO OR the MySQL HOW TO.
ASSP v2 data migration (ASSP v2 MySQL to ASSP v2 MySQL)
If you want use Grscripts.com professional service to migrate your ASSP from your old server to new server you can order this service.
Once you have changed your ASSP Deluxe for cPanel licensed ip as explained above, install ASSP v2 in your new server using this HOW TO but do NOT setup the ASSP MySQL database (skip the database BerkeleyDB/MySQL setup) . At the end of your ASSP v2 installation go to console and in the new server execute this
# cd /usr/local/assp
# mkdir /usr/local/assp/old
Now open ASSP WHM INTERFACE and open MYSQL SETUP . Click the lick to Disable MySQL then return to ASSP WHM INTERFACE and STOP AND START ASSP .
Now execute this in the old server replacing server_ip with the new server ip and ssh_port with the SSH port of new server ip .
# rsync -av -L -e "ssh -p ssh_port" /usr/local/assp/ root@server_ip:/usr/local/assp/old
You can close your old server now . Open ASSP WHM INTERFACE in your new server and STOP ASSP . Now execute this in new server.
# cd /usr/local/assp
# rsync -r /usr/local/assp/old/files/ /usr/local/assp/files
# rsync -r /usr/local/assp/old/notspam/ /usr/local/assp/notspam
# rsync -r /usr/local/assp/old/spam/ /usr/local/assp/spam
# rsync -r /usr/local/assp/old/okmail/ /usr/local/assp/okmail
# rsync /usr/local/assp/old/whitelist /usr/local/assp/whitelist
# rsync /usr/local/assp/old/persblack /usr/local/assp/persblack
# rsync /usr/local/assp/old/spamdb /usr/local/assp/spamdb
# rsync /usr/local/assp/old/spamdb /usr/local/assp/HMMdb
Now you can return to ASSP WHM INTERFACE and START ASSP. All should run correctly, ASSP main settings ( /files ), whitelist, personal blacklist, and ASSP spam database have been migrated.
If everything is working correctly you can remove the /old folder in this way
# cd /usr/local/assp
# rm -fr /usr/local/assp/old
Now you can setup ASSP MySQL using this MySQLHOW TO.
ASSP v2 data migration (ASSP v2 BerkeleyDB to ASSP v2 BerkeleyDB)
If you want use Grscripts.com professional service to migrate your ASSP from your old server to new server you can order this service.
Once you have changed your ASSP Deluxe for cPanel licensed ip as explained above, install ASSP v2 in your new server using this HOW TO but do NOT setup the ASSP BerkeleyDB database (skip the database BerkeleyDB/MySQL setup) . At the end of your ASSP v2 installation go to console and in the new server execute this
# cd /usr/local/assp
# mkdir /usr/local/assp/old
Now execute this in the old server replacing server_ip with the new server ip and ssh_port with the SSH port of new server ip .
# rsync -av -L -e "ssh -p ssh_port" /usr/local/assp/ root@server_ip:/usr/local/assp/old
You can close your old server now . Open ASSP WHM INTERFACE in your new server and STOP ASSP . Now execute this in new server.
# cd /usr/local/assp
# rsync -r /usr/local/assp/old/files/ /usr/local/assp/files
# rsync -r /usr/local/assp/old/notspam/ /usr/local/assp/notspam
# rsync -r /usr/local/assp/old/spam/ /usr/local/assp/spam
# rsync -r /usr/local/assp/old/okmail/ /usr/local/assp/okmail
# rsync /usr/local/assp/old/whitelist /usr/local/assp/whitelist
# rsync /usr/local/assp/old/persblack /usr/local/assp/persblack
# rsync /usr/local/assp/old/spamdb /usr/local/assp/spamdb
# rsync /usr/local/assp/old/spamdb /usr/local/assp/HMMdb
Now you can return to ASSP WHM INTERFACE and START ASSP. All should run correctly, ASSP main settings ( /files ), whitelist, personal blacklist, and ASSP spam database have been migrated.
If everything is working correctly you can remove the /old folder in this way
# cd /usr/local/assp
# rm -fr /usr/local/assp/old
Now you can setup ASSP BerkeleyDB using this BerkeleyDB HOW TO.
How to backup and restore ASSP ?You can create a backup of your ASSP in this way
# cp -R /usr/local/assp /usr/local/assp_backup
If you need to restore your ASSP , you may follow the ASSP migration HOW TO and you should consider the /usr/local/assp_backup folder exactly as the /usr/local/assp/old folder .
If you want use Grscripts.com professional installation service to restore your ASSP from /usr/local/assp_backup you can order this service.
I messed up ASSP configuration file, how to fix it now ?If you do not have an ASSP backup as explained here , try this :
Open your ASSP WHM interface and STOP ASSP . Now restore from /usr/local/assp/backup_cfg an old assp.cfg configuration file
and restore it in /usr/local/assp overwriting current assp.cfg. Now START your ASSP . Your ASSP should restart correctly . If it does not restart it means you have other issues , not related with your ASSP configuration file.
How can I whitelist email or domain using ASSP GUI ?Your users can whitelist email simply repling the sender email or sending an emal to assp-white@ as explained here .
As administrator you can whitelist email , domain , or ip addresses using the ASSP WHM interface
ASSP WEB Internface (ASSP GUI)
Whitelisting menu . For example if you want whitelist all email sent by myoffice.net you should add
myoffice.net
in whiteListedDomains . You can whitelist ips using whiteListedIPs or you can whitelist email using a Regular Expression using whiteRe .
ASSP fully allows local email and local ips. You must never whitelist a local domain, email or ip . If you whitelist a local email, domain or ip all the incoming email will be whitelisted for the local email, domain or ip and all email included SPAM will pass. If you have a local user which is blocked by ASSP, it must not be whitelisted, only be sure that the local user is sending and authenticating his email correctly, using SMTP mail.userdomain.com .
How to block an email based on email content or attachment binary content ?
You have countless ways to block or score email based on email text content using ASSP, for example you can use Regular Expressions in ASSP Web Interface GUI, you can score or block an email if a particular word or Regular Expression is used in subject and/or email header, and/or email body. For example if you would block an email having the phrase "Brand World pharmaceuticals for Lovemaking" in the email body or email header open ASSP Web Interface GUI
Perl Regular Expression Filter menu and add the following in bombRe
Brand World pharmaceuticals for Lovemaking=>100
It will score the email addictional 100 points ( weight =>100 ) so that will be surely blocked. The addiction above will be case sensitive if you want case insensitive using Regular expression you may enter this
/Brand World pharmaceuticals for Lovemaking/gi=>100
On the countray you can use a negative score to allow an email . For example if you want allow an email with the subject "this is my important office email" you can add this in bombre or bombSubjectRe with a negative weight score
this is my important office email=>-100
These are only few examples, you have unlimited solutions using the Perl Regular Expression menu in ASSP.
ASSP fields marked with two asterisk (**)such as bombRe accepts regular expressions (regex) and can accept a second weight value. Every weighted regex has to be followed by '=>' and the weight value. For example: Phishing\.=>1.45 . The multiplication result of the weight and the penaltybox valence value will be used for scoring, if the absolute value of weight is less or equal 6. Otherwise the value of weight is used for scoring. It is possible to define negative values to reduce the resulting message score.
note : Every weighted regex that contains at least one '|' has to begin and end with a '~' - inside such regexes it is not allowed to use a tilde '~', even it is escaped - for example: ~abc\~|def~=>23 or ~abc~|def~=>23 - instead use the octal (\126) or hex (\x7E) notation , for example ~abc\126|def~=>23 or ~abc\x7E|def~=>23
User defined custom YARA rules are available too in ASSP Deluxe 10.x and above. YARA is a tool used mainly, but not exclusively, for identifying and classifying malware based on string or binary pattern matching.
You can use YARA rules to manage and enhance detections, to stop latest threats.
You can introduce your own YARA rules to enhance your ASSP detection efficacy. Using YARA rule you can score and block email binary attachments too. You can add your own clamAV YARA rules in the file
/usr/local/cpanel/3rdparty/share/clamav/custom_spam.yara
You can find detailed info to start writing your own YARA rules here :
Briefly a YARA rule is a description based on textual or binary patterns. A rule’s description can be broken down into three sections:
Together, these sections determine a rule’s logic. At a minimum, every rule must have a condition section. You may omit the meta or strings section if not needed. After entering a YARA rule be sure to restart ClamAV in this way
# /usr/local/cpanel/scripts/restartsrv_clamd
if clamAV restarts correctly (without errors) the YARA rule was accepted and it's correct.
ASSP Deluxe for cPanel includes an updated (updated daily using signatures.php cronjob) YARA rule file located here
/usr/local/cpanel/3rdparty/share/clamav/grscripts_spam.yara
grscripts_spam.yara includes new SPAM patterns and it's continuosly updated with new rules by Grscripts.com .
YARA rules can be used to detect and block various types of threats, and now with the capability available in ASSP Deluxe for cPanel, you can apply your own custom rules against attachments, email headers, and the body of emails to help detect threats. With this feature, you can gain more control to manage email flow and detect threats in custom and creative ways.
Do not edit the file grscripts_spam.yara. If you want use your own YARA rules you can edit the file custom_spam.yara.
Can I block or allow email from a domain extension ?
One way to do this is using ASSP Web Interface GUI
Perl Regular Expression Filter
bombSenderRe . For example if you add a +100 score points to .club domain name extension in this way
\.club$=>+100
all email coming from .club will be scored an additional 100 points (and should be surely blocked if you have the PenaltyMessageLimit set to default 53 points in ASSP WHM INTERFACE
SCORE SETTINGS page
) .
On the countrary if you want be sure all the email coming from your country domain extension .no (e.g.) will not be blocked you can use this
\.no$=>-100
How to disable fully ASSP SPAM filtering for a single email or domain ?ASSP v1
Open ASSP Web Interface GUI
Validate Sender menu and add the local email or local domain which should be excluded by ASSP in noProcessingFrom . Now open the Validater Recipient menu and add the local email or local domain which should be excluded by ASSP in noProcessingTo. After these steps ASSP will be fully bypassed for the domain (or email). ASSP v2
Open ASSP Web Interface GUI
No Processing menu. Here you have various options to exclude ASSP for a domain or email or ip address too; the best way which works in all situations to bypass a local domain is by adding the email or domain in npRe using Regular Expression. For example if want fully disable ASSP for *@userdomain.com you can add
(.*?)\@userdomain\.com
in npRe . Or if you want disable ASSP antispam only for email user@userdomain.com you may use this
user\@userdomain\.com
Do Blacklisting Addresses and Domains for NoProcessing (DoBlackDomainNP)
How ASSP filters email attachments ?
After installation HOW TO ASSP is preconfigured to do following attachment checks ;
How does work the ASSP Delaying filter ?If you followed the installation HOW TO ASSP should be configured with delaying filter disabled for all your domain names. Your users can enable (and disable) Delaying filter using the ASSP Deluxe for cPanel frontend. Delaying is a method of blocking big amounts of SPAM at the mailserver level. This method is also called "Greylisting". Delaying works on the idea that a good mailserver is always configured to attempt a re-delivery of an email message, if it gets a soft failure. How does it work exactly ? When someone send an email to your mailserver running ASSP and your user has the Delaying filter enabled, ASSP will return a 451 error (soft failure) to the sender . If the sender mailserver is configured correctly it will reattempt to deliver the email in X number of minutes (it depends upon its configuration). If the sender mailserver waits and redelivers the email , the triplet (email address, domain,IP) gets whitelisted by ASSP (delaying whitelist) and the user receives the email . So your user receives the email after min 5 minutes (default embargo time) and max 28 hours (default wait time).
If the remote mailserver doesn't reattempt the deliver (and the spammers often do not reattempt the deliver) the email will not be accepted after the wait time (28 hours). Can be lost valid good email ? Only if the good sender mailserver is not configured to reattempt the deliver.
Reasons not to use Delaying filter :
-
its behavior can create some confusion to unexperienced users.
-
SPAM SCORING is much more efficient to block SPAM than delaying filter.
-
un-received email due to delaying filter cannot be collected ( using SPAMBOX or other ways ) and rarely some good sender does not redeliver the email after a soft failure.
-
Bayesian and HMM SPAM/HAM database can't be populated using delaying.
Reasons to use Delaying filter :
- If a domain or email is under a HUGE SPAM attack, delaying can easly reduce bad SMTP connections.
Does ASSP support SSL SNI ?ASSP v1
If you followed the ASSP v1 cpanel antispam installation HOW TO, and you enabled ASSP SSL your users can use SNI in their SMTP but using SMTP mail.userdomain.com with an SSL/TLS port they'll receive a "Domain warning" in the Certificate. ASSP v2After ASSP v2 cpanel antispam installation HOW TO ASSP SSL SNI is enabled and fully supported (without SSL warnings). You can enable SNI globally or per domain using ASSP WHM INTERFACE
SSL MENU .
How to allow an ip address to relay ?
How to add a custom ip in ASSP ?
Your server ip addresses are automatically added in ASSP ( myServerRe : /usr/local/assp/deluxe/assp_local_ips ) using the ASSP Deluxe ex_localdomains.php cronjob . If you want allow an ip address to relay which is not setup in your server you should follow these steps;
Open your ASSP WHM INTERFACE and be sure ASSP relaying is set to /etc/relayhosts as below.
Now suppose you want add the ip address 130.10.10.10 , go to console and execute this
# echo "130.10.10.10" >> /usr/local/assp/deluxe/custom_assp_local_ips >> /etc/alwaysrelay
now execute
# /usr/local/cpanel/3rdparty/bin/php-cgi
/usr/local/assp/deluxe/ex_localdomains.php force=yes
# /scripts/restartsrv_tailwatchd
Done, after this step the ip 130.10.10.10 should be listed in /etc/relayhosts and in /usr/local/assp/deluxe/assp_local_ips .
How to allow a custom domain to relay email ?
Your server email and domain are automatically added in ASSP using the ASSP Deluxe ex_localdomains.php cronjob . If you want allow to relay a domain name which is not setup in your server you should follow these steps;
Suppose you want add the domain domain.com , go to console and execute this
# echo "domain.com" >> /usr/local/assp/deluxe/custom_assp_local_domains
now execute
# /usr/local/cpanel/3rdparty/bin/php-cgi
/usr/local/assp/deluxe/ex_localdomains.php force=yes
Done, after this step domain name domain.com should be listed in /usr/local/assp/deluxe/assp_local_domains .
How to allow a custom email to relay ?
Your server email and domain are automatically added in ASSP using the ASSP Deluxe ex_localdomains.php cronjob . If you want allow to relay an email name which is not setup in your server you should follow these steps;
Suppose you want add the email email@domain.com , go to console and execute this
# echo "email@domain.com" >> /usr/local/assp/deluxe/custom_assp_local_email
now execute
# /usr/local/cpanel/3rdparty/bin/php-cgi
/usr/local/assp/deluxe/ex_localdomains.php force=yes
Done, after this step email email@domain.com should be listed in /usr/local/assp/deluxe/assp_local_email .
How to monitor SPAM sent from my server ( outgoing SPAM ) ?How do I stop SPAM being sent from my server ?My server is sending spam. What do I do ? Prevent Spam Complaints
ASSP Deluxe for cPanel monitors outgoing email activity and send you an email notification if a condition is matched. If you take actions as soon you receive these email notifications you can avoid issues with outgoing SPAM blacklists. Currently ASSP Deluxe for cPanel can send three different email notifications :
- Email sent using a script ( here )
- Email sent using a script or SMTP authentication ( here )
Or you can activate Outgoing ASSP SPAM checks for local users . Open ASSP WHM INTERFACE
OUTGOING SPAM .
note: OUTGOING SPAM usage is not recommended because all ASSP DNS antispam checks cannot be applied locally and only a very limited number of ASSP filters can works locally ; you should enable this feature only if strictly required and only if you are an experienced ASSP administrator and you know what are you doing. If you enable OUTGOING SPAM Local users could be blocked incorrectly when they send email and you should take actions in ASSP GUI to allow them. For example if you find a good local email blocked incorrectly in ASSP log by Bayesian filter you should allow him using noBayesian_local in your ASSP WEB INTERFACE GUI.
Outgoing email notifications : email sent using a script
ASSP Deluxe for cPanel checks your EXIM log ( /var/log/exim_mainlog ) during each ex_localdomains.php cron execution (by default each 59 minutes) and send you an email notification if the condition below is matched :
- if in the latest 12 hours ( check_hours=hours ) any script in your server send more than 100 email ( top=100 ).
If the condition will be matched the next check will run after 6 ex_localdomains.php executions.
The email notification will be sent to the email set here.You can customize top, qu and check_hours by editing the file /usr/local/assp/deluxe/email_warnings , for example
top=100
check_hours=10
note :
If you received the email notification above and you need Grscripts professional support to investigate and stop outgoing SPAM activity in your server, you may click here to order the ASSP mannaged service or here if you need a one time root check.
Outgoing email notifications : email sent using script or SMTP authentication
ASSP Deluxe for cPanel checks your EXIM log ( /var/log/exim_mainlog ) each 3 hours and send you an email notification if the condition below is matched :
- if in the latest 12 hours ( check_hours=hours ) any email or script in your server send more than 100 email ( top=100 ).
If the email notification will be exactly the same in the next 3 hours check, the email notification will not be sent again even if the condition is matched.
The email notification will be sent to the email set here.You can customize top, qu and check_hours by editing the file /usr/local/assp/deluxe/email_warnings , for example
top=100
check_hours=10
note :
If you want ignore one or more users in this script email notification you should add the username in this list (one username per row)
# nano /usr/local/assp/deluxe/ignore_spamout
If you received the email notification above and you need Grscripts professional support to investigate and stop outgoing SPAM activity in your server, you may click here to order the ASSP mannaged service or here if you need a one time root check.
find_abusers.php
If you followed the installation HOW TO you already have following cronjob setup
*/20 * * * * /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/find_abusers.php sw=29 rl=50 sc=30 dc=30 on=1
This cron analyzes current ASSP log ( /usr/local/assp/maillog.txt ) and collects ips and email which were repetitively abusing your mailserver as follows;
- It collects ips that had more than 30 (sc=30) email blocked by ASSP Scoring ( PenaltyMessageLimit ) . Collected ips that have a value over 30 (sc=30) are added in denySMTPConnectionsFrom . Collected ips that have a value over 100 are added in denySMTPConnectionsFromAlways . From ASSP deluxe version 12.5.5, ips will be added only if in their history they failed min 3 checks (DKIM/SPF/RBL) in current ASSP log.
- It collects ips that had more than 30 (dc=30) email blocked by email dictionary/No Local ( invalid address rejected ) . Collected ips that have a value over 30 (dc=30) are added in denySMTPConnectionsFrom . Collected ips that have a value over 70 are added in denySMTPConnectionsFromAlways .
- It collects ips that had more than 50 (rl=50) email blocked by a RelayAttempt error. Collected ips that have a value over 50 (rl=50) are added in denySMTPConnectionsFrom.
- It collects sender email Addresses that had more than 50 email blocked by ASSP Scoring ( PenaltyMessageLimit ). Collected email that have a value over 50 are added in blackListedDomains. If you want customize the value 50, you must add blockthis=n to find_abusers.php cron, for example blockthis=70. You can add blockthis=off if you want stop this kind of collection.
- It collects ips that had more than 60 SMTP authentication failures. Collected ips that have a value over 60 are added in
CSF firewall Deny list if you have CSF firewall installed and running and DENY_IP_LIMIT set to min 500 otherwise the ips are added in denySMTPConnectionsFromAlways ASSP list. If you want customize the value 60, you must add smtpc=n to find_abusers.php cron, for example smtpc=80. If you add csf=off , the ips will be always collected only in denySMTPConnectionsFromAlways ASSP list. If you want skip this kind of collection you should add smtpc=none ( or smtpc=off ).
-
It collects ips that had more than 60 invalidHeloRe failures. Collected ips that have a value over 60 are added in
CSF firewall Deny list if you have CSF firewall installed and running and DENY_IP_LIMIT set to min 500 otherwise the ips are added in denySMTPConnectionsFromAlways ASSP list. If you want customize the value 60, you must add helor=n to find_abusers.php cron, for example helor=80. If you add csf=off , the ips will be always collected only in denySMTPConnectionsFromAlways ASSP list. If you want skip this kind of collection you should add helor=none ( or helor=off ).
If you execute find_abusers.php from console you can receive various information collected from your current ASSP log or old ASSP logs. For example
# /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/find_abusers.php sw=10
sw=10 will return all data with a value above 10. If you want analyze an old log , for example /usr/local/assp/20-03-12.maillog.txt you should execute this
# /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/find_abusers.php sw=10 log=20-03-12.maillog.txt
Data returned by find_abusers.php is listed below ;
- Local top senders list : a list of email sent by your local email.
- invalid address rejected : number of invalid address email sent to your local domains. You can found instantly which local domain is under an email dictionary attack.
- spam scoring attacks sent to local email : number of email blocked using ASSP Scoring ( PenaltyMesssageLimit ) by each local email. You can found instantly which local email are under a SPAM attack.
- spam scoring attacks sent to local domain : number of email blocked using ASSP Scoring ( PenaltyMesssageLimit ) by each local domain. You can found instantly which local domain are under a SPAM attack.
- list of remote IP Addresses blocked by ASSP scoring ( PenaltyMesssageLimit ) : you can use worst ips in this list in your firewall deny list (e.g.)
- list of remote IP Addresses blocked by Invalid Address Rejected ( No local / email dictionary attack ) : you can use worst ips in this list in your firewall deny list (e.g.)
- Top spammers : list of top spammers email
- Top ip Addresses SMTP authentication failures : list of Ip Addresses that had an SMTP authentication failure.
- Top ips invalidHeloRe : list of Ip Addresses that had an invalidHeloRe failure.
- Top email subjects sent by spammers : the list can be used to block email based on email content for example using bombSubjectRe, YARA rules or other ways (some explained here ) .
- clamAV Unofficial signatures detections
- Top spammers email sending email dictionary attacks
- Top ForgedHELO attacks
- Top UnknownLocalSender attacks
- Email sent from your server using a script
How to have a better mailserver reputation
Ensure that your servers aren’t being blocked
- Be sure your users are not sending outgoing SPAM. If you receive an email outgoing notiifcation from ASSP Deluxe for cPanel, open ASSP WHM INTERFACE
EMAIL QUEUE and check the if you have local email activity. If you have it read the EXIM ID and check if the outgoing email is legitimate or SPAM. If it's SPAM get actions to stop it asap.
- All your server Ip Addresses must have a ReverseDNS (PTR) record. You can check PTR record HERE
- All your user domain must have an SPF record. You can check SPF record HERE
- All your user domain must have a DKIM record. You can check DKIM record HERE
- All your server Ip Addresses must have a Good or Neutral reputation on Talos Database
- All your server Ip Addresses must not be listed in major RBLs lists HERE
- All your user domain must have a DMARC record.
- You can execute an excellent Email Deliverability check (which includes DMARC,DKIM,SPF checks)HERE
-
DMARC is short for Domain-based Message Authentication, Reporting, and Conformance. Its purpose is to make it harder for threat actors to conduct phishing attacks that spoof brands and get those messages delivered to inboxes. DMARC is used to determine whether emails are genuine and should be delivered or if the messages have been sent from an unauthorized user.
DMARC will not stop all phishing emails from being delivered, but it is an important measure to implement to stop email spoofing and reduce the number of phishing emails that reach inboxes.
- SPF (Sender Policy Framework) , DKIM (DomainKeys Identified Mail), and DNS records (A ,MX ,PTR records) are also used to determine whether the email server being used is authorized to send emails for the organization.
- The SPF record indicates which email servers are authorized to send mail on behalf of a domain. This would be the organization itself and any third parties, such as marketing companies. The SPF record is a DNS TXT record that includes IP addresses and hostnames that are allowed to send emails from a particular domain. The SPF record is the first thing checked by DMARC rules.
-
DKIM is more advanced and uses a TXT record and asymmetric public-private key encryption. With DMARC enabled, the signature is encrypted with the public key and the key is published on DNS servers. The domain’s private key is then used at the recipient’s email server for verification. If DKIM is enabled, the public key-encrypted signature is compared with the message that is decrypted using a newly generated key to confirm that the message has not been altered. DKIM also confirms that the sender is from the listed domain and that the sender has not been spoofed.
How to add alternative SMTP ports in ASSP ?
By default at the end of your ASSP installation you should have following SMTP ports
-
25 STARTTLS ( set in ASSP WEB INTERFACE (GUI)
Network Setup
listenPort )
-
26 and 587 STARTTLS ( set in ASSP WEB INTERFACE (GUI)
Network Setup
listenPort2 )
-
465 SSL ( set in ASSP WEB INTERFACE (GUI)
Network Setup
listenPortSSL)
If you want , you may add other SMTP ports by adding them in ASSP WEB INTERFACE (GUI)
Network Setup
listenPort2 . Be sure to separate each SMTP port with a pipe | , and be sure to allow each new SMTP port in your firewall.
How to skip/bypass one or more ASSP SMTP port(s)
You can skip one or more ASSP SMTP port(s) by adding each SMTP port in the file (one SMTP port per row) /usr/local/assp/deluxe/smtp_skip. Edit the file with your preferred editor (e.g. nano),
# nano /usr/local/assp/deluxe/smtp_skip
then add the SMTP port you want exclude from ASSP for example if you want exclude 26 and 465 SSL you should enter
26465
Now save the file and open the ASSP WHM INTERFACE : STOP fully your ASSP ( as explained here ) and START it again . After this step SMTP port 26 and 465 will run EXIM only and will not pass for ASSP.
note : why should I provide my customers with an SMTP port bypassed by ASSP ?
- You want an alternative dedicated outgoing SMTP port to use your email with remote POP3 or IMAP services or mobile App like Gmail, Outlook or other.
- Your server is under a huge email attack, due to this reason your users are experiencing SMTP delay and you want provide them a dedicated and faster SMTP port to send email.
Where are the old ASSP Deluxe for cPanel FAQs and other pages ?
You can found it HERE however note that there could be obsolete FAQs. Old changelog is available HERE, while old Tweaking page is available HERE . Old instructions to create a language pack for Deluxe frontend are still available HERE.
Special thanks to ASSP
- Fritz Borgstedt : ASSP v1 developer
- Thomas Eckardt : ASSP v2 developer [ ASSP ]
ASSP Deluxe for cPanel frontend