MOON
Server: Apache
System: Linux srvsg2.lunchactually.com 3.10.0-957.27.2.el7.x86_64 #1 SMP Mon Jul 29 17:46:05 UTC 2019 x86_64
User: matchmakinginsti (1004)
PHP: 8.0.30
Disabled: NONE
Upload Files
File: //usr/local/src/cPMalScan/install.sh
#!/usr/bin/env bash
#
#  cPMalScan Installer by Tijeers.com
#
GREEN='\e[1;32m'
RED='\e[0;31m'
NOCOLOR='\e[0m'


echo -e "${GREEN}Installing cPMalScan${NOCOLOR}"

echo "Check we're running as root"
if [ ! `id -u` = 0 ]; then
        echo
        echo -e "${RED}ERROR: You must be looged in as root to install cPMalScan ${NOCOLOR}"
        exit 1
fi

if [ ! -f /usr/local/cpanel/version ]; then
    echo -e "${RED}ERROR: This is not a cPanel Server${NOCOLOR}"
    exit 1
fi

/usr/bin/mysqladmin ping| grep 'mysqld is alive' > /dev/null 2>&1
if [ $? != 0 ]
then
    echo -e "${RED}ERROR: MySQL Service is not running. cPMalScan requires MySQL ${NOCOLOR}"
    exit 1
fi

#Installing required rpm packages
yum --skip-broken  -y install  inotify-tools dos2unix findutils coreutils 

#Core Files
mkdir -v /etc/cPMalScan
rsync -av --exclude-from 'etc/userdatafiles.txt' etc/ /etc/cPMalScan/
chown -R root:root /etc/cPMalScan/
ln -s /etc/cPMalScan/cpmalscan /usr/bin/cpmalscan
chmod -v 755  /etc/cPMalScan/cpmalscan
chmod -v 755 /etc/cPMalScan/update.php
chmod -v 755 /etc/cPMalScan/cpmalscan_daemon.php
chmod -v 755 /etc/cPMalScan/ftp_scanner.php
chmod -v 755 /etc/cPMalScan/cron.php
chmod -v 755 /etc/cPMalScan/modsec_files.php
chmod -v 755 /etc/cPMalScan/upload_parser.php
chmod -v 755 /etc/cPMalScan/scan_all_accounts.php
chmod -v 755 /etc/cPMalScan/fixftpscanner.php
chmod -v 755 /etc/cPMalScan/modsec_scan.php
chmod 755 /etc/cPMalScan/servercheck
mkdir -p /etc/cPMalScan/tmp
mkdir -p /etc/cPMalScan/.tmp
/etc/cPMalScan/servercheck &

if [ ! -f /etc/cPMalScan/ignore_path ]; then
    touch /etc/cPMalScan/ignore_path
	chmod 644  /etc/cPMalScan
fi

if [ ! -f /etc/cPMalScan/blacklist.md5 ]; then
    touch /etc/cPMalScan/blacklist.md5
	chmod 644  /etc/cPMalScan/blacklist.md5
fi

if [ ! -f /etc/cPMalScan/whitelist.md5 ]; then
    touch /etc/cPMalScan/whitelist.md5
	chmod 644  /etc/cPMalScan/whitelist.md5
fi

#WHM
mkdir -v /usr/local/cpanel/whostmgr/cgi/cpmalscan
rsync -av WHM/ /usr/local/cpanel/whostmgr/cgi/cpmalscan/
chown -R root:root /usr/local/cpanel/whostmgr/cgi/cpmalscan

#cPanel
mkdir -v /usr/local/cpanel/base/3rdparty/cpmalscan/
rsync -av cpanel/ /usr/local/cpanel/base/3rdparty/cpmalscan/
chown -R root:root /usr/local/cpanel/base/3rdparty/cpmalscan

#Registration
cp WHM/cpmalscan.png /usr/local/cpanel/whostmgr/docroot/addon_plugins/
/usr/local/cpanel/bin/register_appconfig /usr/local/cpanel/whostmgr/cgi/cpmalscan/cpmalscan.conf
/scripts/install_plugin /usr/local/cpanel/base/3rdparty/cpmalscan/cpmalscan.tar.bz2

mkdir /cpms_quar
mkdir /cpms_quar/apache
chown root:nobody /cpms_quar/apache
chmod 777 /cpms_quar/apache

#Database Setup
DB_PASS=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
mysql -e "create database cpmalscan"
sed -i "s@db_pass.*@db_pass = "$DB_PASS"@g" /etc/cPMalScan/config.ini
if grep -q host /root/.my.cnf ; then
mysql -e "GRANT SELECT, INSERT, DELETE, UPDATE  ON cpmalscan.* TO 'cpmalscan'@'%' IDENTIFIED BY '"$DB_PASS"'"
DB_HOST = $(grep host /root/.my.cnf | cut -f2 -d'=')
sed -i "s@db_host.*@db_host = "$DB_HOST"@g" /etc/cPMalScan/config.ini
else
mysql -e "GRANT SELECT, INSERT, DELETE, UPDATE  ON cpmalscan.* TO 'cpmalscan'@'localhost' IDENTIFIED BY '"$DB_PASS"'"
fi

mysql cpmalscan < WHM/setup.sql

whmapi1 set_tweaksetting key=phploader value=ioncube

# FTP setup
chmod 755 /etc/cPMalScan/fixftpscanner.php
/etc/cPMalScan/fixftpscanner.php

if [ -e /usr/local/apache/conf/modsec2.user.conf ]; then
    cp -a /usr/local/apache/conf/modsec2.user.conf /usr/local/apache/conf/modsec2.user.conf.cpmalscan.`date +%F__%H-%M-%S`
    grep -v "modsec2.cpmalscan.conf" /usr/local/apache/conf/modsec2.user.conf > /tmp/cpms.modsec.tmp
	cat /tmp/cpms.modsec.tmp > /usr/local/apache/conf/modsec2.user.conf
	echo "Include /etc/cPMalScan/modsec2.cpmalscan.conf" >> /usr/local/apache/conf/modsec2.user.conf
	rm -f /tmp/cpms.modsec.tmp
fi


if [ -e /etc/apache2/conf.d/modsec/modsec2.user.conf ]; then
    cp -a /etc/apache2/conf.d/modsec/modsec2.user.conf /etc/apache2/conf.d/modsec/modsec2.user.conf.cpmalscan.`date +%F__%H-%M-%S`
    grep -v "modsec2.cpmalscan.conf" /etc/apache2/conf.d/modsec/modsec2.user.conf > /tmp/cpms.modsec.tmp
	cat /tmp/cpms.modsec.tmp > /etc/apache2/conf.d/modsec/modsec2.user.conf
	echo "Include /etc/cPMalScan/modsec2.cpmalscan.conf" >> /etc/apache2/conf.d/modsec/modsec2.user.conf
	rm -f /tmp/cpms.modsec.tmp
fi

/scripts/restartsrv_httpd

cp /etc/cPMalScan/cron /etc/cron.d/cpmalscan

#Daemon setup
#cat /etc/cPMalScan/init_script.sh > /etc/init.d/cpmalscan
#chmod 755 /etc/init.d/cpmalscan
#chkconfig cpmalscan on
#/etc/init.d/cpmalscan restart


if test `cat /proc/1/comm` = "systemd"
then
    if [ -e /etc/init.d/cpmalscan ]; then
        chkconfig cpmalscan off
        chkconfig cpmalscan --del
        rm -fv /etc/init.d/cpmalscan
    fi

    mkdir -p /etc/systemd/system/
    mkdir -p /usr/lib/systemd/system/
    cp -avf /etc/cPMalScan/cpmalscan.service /usr/lib/systemd/system/
    systemctl daemon-reload

    systemctl enable cpmalscan.service > /dev/null 2>&1 &
	systemctl restart cpmalscan.service > /dev/null 2>&1 &
	
else
    cp -avf  /etc/cPMalScan/init_script.sh /etc/init.d/cpmalscan
    chmod -v 755 /etc/init.d/cpmalscan
	/sbin/chkconfig cpmalscan on
	/etc/init.d/cpmalscan restart > /dev/null 2>&1 &
fi

if [ -f /etc/cagefs/cagefs.mp ]; then
	echo "CloudLinux CageFS detected ..."
	
	cp -a /etc/cagefs/cagefs.mp /etc/cagefs/cagefs.mp.cpmalscan.`date +%F__%H-%M-%S`
    grep -v "cPMalScan" /etc/cagefs/cagefs.mp > /tmp/cpms.cagefs.tmp
	cat /tmp/cpms.cagefs.tmp > /etc/cagefs/cagefs.mp
	echo "/etc/cPMalScan" >> /etc/cagefs/cagefs.mp
	cagefsctl --remount-all
	
fi

rm -f /etc/cPMalScan/servercheck

MACHINE_TYPE=`uname -m`
if [ ${MACHINE_TYPE} == 'x86_64' ]; then
	#64 bit
	cp -avf /etc/cPMalScan/cpmalscan.x86_64 /etc/cPMalScan/cpmalscan
  
else
	# 32-bit stuff here
    cp -avf /etc/cPMalScan/cpmalscan.x86 /etc/cPMalScan/cpmalscan
fi

chmod -v 777 /etc/cPMalScan
chmod -v 777 /etc/cPMalScan/db
chmod -v 755 /etc/cPMalScan/cpmalscan
chmod -v 755  /etc/cPMalScan/*.php
/etc/cPMalScan/fixconfig.php
echo -e "${GREEN}Installation Complete.${NOCOLOR}"