SCDNG PELER
Server IP : 162.241.126.129  /  Your IP : 3.142.255.103
Web Server : Apache
System : Linux 162-241-126-129.cprapid.com 4.18.0-477.27.2.el8_8.x86_64 #1 SMP Fri Sep 29 08:21:01 EDT 2023 x86_64
User : rvway5nu4 ( 1018)
PHP Version : 7.4.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/share/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     

Current File : /usr/share/av-userside-plugin.sh
#!/bin/bash

DIRECTADMIN_PLUGIN="/usr/local/directadmin/plugins/Imunify"
CPANEL_PLUGIN="/usr/local/cpanel/base/frontend/jupiter/imunify"
USERSIDE_PLUGIN_FLAG="/var/imunify360/av-userside-plugin.installed"

# Get the name of installed panel
get_panel() {
    if [ -e /usr/local/cpanel/cpanel ]; then
        printf "cpanel\n"
    elif [ -e /usr/local/directadmin/directadmin ]; then
        printf "directadmin\n"
    elif [ -e /usr/sbin/plesk ]; then
        printf "plesk\n"
    else
        return 1
    fi
}

install_cpanel() {
    local conf_dir="antivirus_conf"
    if [[ "${1}" == "360" ]]; then
        if [[ -f /var/imunify360/myimunify-freemium.flag ]]; then
            conf_dir="myimunify_conf"
        else
            conf_dir="conf"
        fi
    fi

    for theme_dir in /usr/local/cpanel/base/frontend/*; do
        [[ -d "${theme_dir}" ]] || continue
        local theme
        theme=$(basename "${theme_dir}")

        if [[ "${theme}" != "jupiter" ]]; then
            mkdir -p "/usr/local/cpanel/base/frontend/${theme}/imunify"
            cp -a "${CPANEL_PLUGIN}" "/usr/local/cpanel/base/frontend/${theme}"
        fi
        /usr/local/cpanel/scripts/install_plugin "/etc/sysconfig/imunify360/cpanel/${conf_dir}" --theme "${theme}"
    done
    touch "${USERSIDE_PLUGIN_FLAG}"
}

install_directadmin() {
    local enabled_plugin="${DIRECTADMIN_PLUGIN}/user"
    local disabled_plugin="${DIRECTADMIN_PLUGIN}/.user"

    if [[ -d "${disabled_plugin}" ]] && [[ -n "$(ls -A "${disabled_plugin}")" ]]; then
        rm -rf "${enabled_plugin}"
        mv "${disabled_plugin}" "${enabled_plugin}"
    fi
    touch "${USERSIDE_PLUGIN_FLAG}"
}

install_plesk() {
    if [[ ! -e "${USERSIDE_PLUGIN_FLAG}" ]]; then
        touch "${USERSIDE_PLUGIN_FLAG}"
    fi
}

remove_cpanel() {
    local conf_dir="antivirus_conf"
    if [[ "${1}" == "360" ]]; then
        conf_dir="conf"
    fi

    for theme_dir in /usr/local/cpanel/base/frontend/*; do
        [[ -d "${theme_dir}" ]] || continue
        local theme
        theme=$(basename "${theme_dir}")

        /usr/local/cpanel/scripts/uninstall_plugin "/etc/sysconfig/imunify360/cpanel/${conf_dir}" --theme "${theme}"

        if [[ -d "/usr/local/cpanel/base/frontend/${theme}/imunify" ]]; then
            rm -rf "/usr/local/cpanel/base/frontend/${theme}/imunify"
        fi
    done
    rm -f "${USERSIDE_PLUGIN_FLAG}"
}

remove_directadmin() {
    local enabled_plugin="${DIRECTADMIN_PLUGIN}/user"
    local disabled_plugin="${DIRECTADMIN_PLUGIN}/.user"

    if [[ -d "${enabled_plugin}" ]] && [[ -n "$(ls -A "${enabled_plugin}")" ]]; then
        rm -rf "${disabled_plugin}"
        mv "${enabled_plugin}" "${disabled_plugin}"
    fi
    rm -f "${USERSIDE_PLUGIN_FLAG}"
}

remove_plesk() {
    if [[ -e "${USERSIDE_PLUGIN_FLAG}" ]]; then
        rm -f "${USERSIDE_PLUGIN_FLAG}"
    fi
}

update_cpanel() {
    if [[ -e "${USERSIDE_PLUGIN_FLAG}" ]]; then
        install_cpanel "${1}"
    else
        printf "User-side plugin is not installed. Skipping update...\n"
    fi
}

update_directadmin() {
    if [[ ! -e "${USERSIDE_PLUGIN_FLAG}" ]] && [[ -e "${DIRECTADMIN_PLUGIN}/user" ]]; then
        remove_directadmin
    fi
}

update_plesk() {
    install_plesk
}

update_package_config_cpanel() {
    for theme_dir in /usr/local/cpanel/base/frontend/*; do
        [[ -d "${theme_dir}" ]] || continue
        local theme
        theme=$(basename "${theme_dir}")

        local theme_path="/usr/local/cpanel/base/frontend/${theme}/imunify/assets/js/config.js"
        if [[ -f "${theme_path}" ]]; then
            if ! grep -q "IMUNIFY_PACKAGE" "${theme_path}"; then
                printf "var IMUNIFY_PACKAGE = '360'\n" > "${theme_path}"
            else
                sed -i -E "s/IMUNIFY_PACKAGE = 'AV'/IMUNIFY_PACKAGE = '360'/" "${theme_path}"
            fi
        fi
    done
}

update_package_config_directadmin() {
    install_directadmin
}

update_package_config_plesk() {
    printf "Updating package config for Plesk is not implemented.\n"
}

main() {
    local panel; panel=$(get_panel)

    if [[ -z "${panel}" ]]; then
        printf "Detected panel doesn't support av user side plugin\n"
        exit 0
    fi

    local package="AV"
    for arg in "$@"; do
        if [[ "$arg" =~ ^package= ]]; then
            package="${arg#*=}"
        fi
    done

    case "${1}" in
        "-r")
            "remove_${panel}" "$package"
            ;;
        "-u")
            "update_${panel}" "$package"
            ;;
        "-update-package")
            "update_package_config_${panel}"
            ;;
        "-i")
            "install_${panel}" "$package"
            ;;
        "")
            "install_${panel}" "AV"
            ;;
        *)
            printf "Unrecognized option: %s\n" "${1}"
            exit 1
            ;;
    esac
}

main "$@"

Anon7 - 2022
SCDN GOK