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 : |
#!/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 "$@"