MOON
Server: Apache
System: Linux server1.quantilytics.org 3.10.0-1160.119.1.el7.tuxcare.els21.x86_64 #1 SMP Tue Jun 17 03:11:12 UTC 2025 x86_64
User: hnhtennm (1016)
PHP: 8.0.30
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //sbin/ie_ruleupdate
#!/bin/sh

set -e

RSPAMD_DB_DIR=${RSPAMD_DB_DIR:-"/var/lib/rspamd"}
RULES_FILE="${RSPAMD_DB_DIR}/rspamd.rules"
SCORES_FILE="${RSPAMD_DB_DIR}/rspamd.scores"
DESC_FILE="${RSPAMD_DB_DIR}/description.json"
EMAIL_RULES_DIR=${EMAIL_RULES_DIR:-"/var/imunify360/files/email-rules"}

# define the directory with the last downloaded files
dir_name=$(ls -t1 ${EMAIL_RULES_DIR} | grep "v1_" | head -1)
dir_with_update=${EMAIL_RULES_DIR}/${dir_name}

if [ -z "${dir_name}" ]; then
  echo "failed to define directory name"
  exit 11
fi
SRC_RULES_FILE="${dir_with_update}/rspamd.rules"
SRC_SCORES_FILE="${dir_with_update}/rspamd.scores"
SRC_DESC_FILE="${dir_with_update}/description.json"

cp ${SRC_RULES_FILE} ${RULES_FILE}.tmp
cp ${SRC_SCORES_FILE} ${SCORES_FILE}.tmp
mv ${RULES_FILE}.tmp ${RULES_FILE}
mv ${SCORES_FILE}.tmp ${SCORES_FILE}
chmod 644 ${RULES_FILE} ${SCORES_FILE}
cp ${SRC_DESC_FILE} ${DESC_FILE}

systemctl is-active rspamd 1>/dev/null && systemctl reload rspamd

echo "$(date)    spamfilter rules and scores have been updated to:"
cat ${DESC_FILE}

# clean old archive if it exists
if [ -f "${RSPAMD_DB_DIR}/ie-rspamd-update.tgz" ]; then
  rm -f "${RSPAMD_DB_DIR}/ie-rspamd-update.tgz"
fi