mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2025-11-01 10:56:23 +01:00
bug fix: imuinfy restore after upgrade
This commit is contained in:
@@ -2604,7 +2604,7 @@ CREATE TABLE `websiteFunctions_backupsv2` (`id` integer AUTO_INCREMENT NOT NULL
|
|||||||
'/usr/local/CyberCP/public/phpmyadmin/config.inc.php',
|
'/usr/local/CyberCP/public/phpmyadmin/config.inc.php',
|
||||||
'/usr/local/CyberCP/rainloop/data/_data_/',
|
'/usr/local/CyberCP/rainloop/data/_data_/',
|
||||||
]
|
]
|
||||||
|
|
||||||
# Backup Imunify360 directories and configuration
|
# Backup Imunify360 directories and configuration
|
||||||
imunify_paths = [
|
imunify_paths = [
|
||||||
'/usr/local/CyberCP/public/imunify',
|
'/usr/local/CyberCP/public/imunify',
|
||||||
@@ -4218,28 +4218,76 @@ pm.max_spare_servers = 3
|
|||||||
Upgrade.FixRSPAMDConfig()
|
Upgrade.FixRSPAMDConfig()
|
||||||
Upgrade.CreateMissingPoolsforFPM()
|
Upgrade.CreateMissingPoolsforFPM()
|
||||||
|
|
||||||
# ## Move static files
|
# ## Handle ImunifyAV and Imunify360 separately
|
||||||
#
|
|
||||||
# imunifyPath = '/usr/local/CyberCP/public/imunify'
|
|
||||||
#
|
|
||||||
# if os.path.exists(imunifyPath):
|
|
||||||
# command = "yum reinstall imunify360-firewall-generic -y"
|
|
||||||
# Upgrade.executioner(command, command, 1)
|
|
||||||
#
|
|
||||||
imunifyAVPath = '/etc/sysconfig/imunify360/integration.conf'
|
|
||||||
|
|
||||||
if os.path.exists(imunifyAVPath):
|
# Both products use the same config file, so we need to read its content to determine which product
|
||||||
execPath = "/usr/local/CyberCP/bin/python /usr/local/CyberCP/CLManager/CageFS.py"
|
integrationConfig = '/etc/sysconfig/imunify360/integration.conf'
|
||||||
command = execPath + " --function submitinstallImunifyAV"
|
|
||||||
Upgrade.executioner(command, command, 1)
|
|
||||||
|
|
||||||
command = 'chmod +x /usr/local/CyberCP/public/imunifyav/bin/execute.py'
|
if os.path.exists(integrationConfig):
|
||||||
Upgrade.executioner(command, command, 1)
|
try:
|
||||||
|
with open(integrationConfig, 'r') as f:
|
||||||
|
configContent = f.read()
|
||||||
|
|
||||||
imfExecutePath = '/usr/local/CyberCP/public/imunify/bin/execute.py'
|
# Check which product the config file is for by looking at the ui_path
|
||||||
if os.path.exists(imfExecutePath):
|
if 'ui_path =/usr/local/CyberCP/public/imunifyav' in configContent:
|
||||||
command = f'chmod 755 {imfExecutePath}'
|
# This is ImunifyAV configuration
|
||||||
Upgrade.executioner(command, command, 0)
|
Upgrade.stdOut("Detected ImunifyAV configuration, reconfiguring...")
|
||||||
|
imunifyAVPath = '/usr/local/CyberCP/public/imunifyav'
|
||||||
|
|
||||||
|
if os.path.exists(imunifyAVPath):
|
||||||
|
execPath = "/usr/local/CyberCP/bin/python /usr/local/CyberCP/CLManager/CageFS.py"
|
||||||
|
command = execPath + " --function submitinstallImunifyAV"
|
||||||
|
Upgrade.executioner(command, command, 1)
|
||||||
|
|
||||||
|
# Set permissions on ImunifyAV execute file
|
||||||
|
imunifyAVExecute = '/usr/local/CyberCP/public/imunifyav/bin/execute.py'
|
||||||
|
if os.path.exists(imunifyAVExecute):
|
||||||
|
command = 'chmod +x ' + imunifyAVExecute
|
||||||
|
Upgrade.executioner(command, command, 1)
|
||||||
|
Upgrade.stdOut("ImunifyAV execute permissions set")
|
||||||
|
else:
|
||||||
|
Upgrade.stdOut("ImunifyAV execute.py file not found")
|
||||||
|
else:
|
||||||
|
Upgrade.stdOut("ImunifyAV directory not found despite config file existing")
|
||||||
|
|
||||||
|
elif 'ui_path =/usr/local/CyberCP/public/imunify' in configContent:
|
||||||
|
# This is Imunify360 configuration
|
||||||
|
Upgrade.stdOut("Detected Imunify360 configuration, checking system installation...")
|
||||||
|
imunify360Path = '/usr/local/CyberCP/public/imunify'
|
||||||
|
|
||||||
|
if os.path.exists(imunify360Path):
|
||||||
|
# Check if Imunify360 is actually installed on the system
|
||||||
|
imunify360Installed = False
|
||||||
|
if os.path.exists('/usr/bin/imunify360-agent') or os.path.exists('/opt/imunify360'):
|
||||||
|
imunify360Installed = True
|
||||||
|
Upgrade.stdOut("Imunify360 system installation detected")
|
||||||
|
|
||||||
|
if imunify360Installed:
|
||||||
|
Upgrade.stdOut("Imunify360 directory found and system is installed, ensuring proper integration...")
|
||||||
|
# Reinstall Imunify360 firewall to ensure integration
|
||||||
|
command = "yum reinstall imunify360-firewall-generic -y" if os.path.exists(Upgrade.CentOSPath) else "apt install --reinstall imunify360-firewall-generic -y"
|
||||||
|
Upgrade.executioner(command, command, 1)
|
||||||
|
else:
|
||||||
|
Upgrade.stdOut("Imunify360 directory found but system not installed - manual installation may be needed")
|
||||||
|
|
||||||
|
# Set permissions on Imunify360 execute file
|
||||||
|
imunify360Execute = '/usr/local/CyberCP/public/imunify/bin/execute.py'
|
||||||
|
if os.path.exists(imunify360Execute):
|
||||||
|
command = f'chmod +x {imunify360Execute}'
|
||||||
|
Upgrade.executioner(command, f'Setting execute permissions on Imunify360 file', 0)
|
||||||
|
Upgrade.stdOut("Imunify360 execute permissions set")
|
||||||
|
else:
|
||||||
|
Upgrade.stdOut("Imunify360 execute.py file not found")
|
||||||
|
else:
|
||||||
|
Upgrade.stdOut("Imunify360 directory not found despite config file existing")
|
||||||
|
|
||||||
|
else:
|
||||||
|
Upgrade.stdOut(f"Unknown product in integration config file. Config content: {configContent[:200]}...")
|
||||||
|
|
||||||
|
except Exception as e:
|
||||||
|
Upgrade.stdOut(f"Error reading integration config file: {str(e)}")
|
||||||
|
else:
|
||||||
|
Upgrade.stdOut("No Imunify integration config file found")
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def restoreImunify360():
|
def restoreImunify360():
|
||||||
|
|||||||
Reference in New Issue
Block a user