Build619August 28, 2023

Version 1.8.0

What's new

Individual protection plans

To provide an additional layer of security within the integration, each server will now have an individual protection plan created automatically. These protection plans will be specifically associated with the workloads that initiated their creation during integration configuration and cannot be revoked or assigned to other workloads.

If you need to protect multiple servers with a single plan, you can create a protection plan in the Cyber Protection console and assign the respective workloads from there. Note that protection plans shared by multiple workloads can only be edited through the Cyber Protection console and respective API calls, but not within the integration using the configurator.sh script.

The introduction of individual protection plans would not require changes to current setups.

New low-privileged role

To ensure secure and limited communication between integrations and the backup service, a new, low-privileged role is introduced. This role will be tied to specific integration instances and will have restricted access — allowing each integration to handle only its own archives and protection plans. Upon updating with this security release, existing tokens will be seamlessly replaced with new ones, ensuring a smooth transition with no impact on the user experience.

Obligatory plugin registration upon installation

To further enhance security, the integrations are reworked to require mandatory authentication with Acronis Cyber Protect Cloud during the configuration process. This authentication will be necessary regardless of whether the protection agent has already been registered.

Decreased account privileges for plugin registration and configuration

The changes described above allowed us to decrease the minimum privilege level required to install and configure these hosting control panel integrations. Now the 'protection user' role is sufficient for such tasks.

Dynamic default protection plan naming

To make it easier to identify and distinguish protection plans associated with specific cPanel servers in the Cyber Protection console, we have updated the default protection plan naming convention. The default protection plan name will now be dynamically generated as 'cPanel %HOSTNAME%' instead of the generic 'webcp'.

Fixed issues

  • [CI-11631] The activity log for a failed pre-capture command is filled with irrelevant or unhelpful messages
  • [CI-22834] Custom MySQL data directory is ignored
  • [CI-22837] MySQL grants are missing from the account dump produced by the cPanel plugin
  • [CI-22854] The mysqld_safe process exits with a status of 0 without creating any log files
  • [CI-23003] The last and next backup times are displayed in the UTC timezone instead of the server time zone
  • [CI-23064] Quoted values in my.cnf cause mysqld execution failure
  • [CI-23129] MySQL database download and recovery fail if innodb_data_home_dir=<path> is added to my.cnf
  • [CI-23155] Database recovery fails with error "Can't find message file '/share/mysql/errmsg.sys'."
  • [CI-23247] The restorepkg utility attempts to restore an account into a folder inside the mounted recovery point
  • [CI-23303] The mysqld process fails to start if the log file does not exist
  • [CI-23638] The plugin does not clean frontend artifacts upon uninstallation, leading to re-installation problems
  • [CI-23849] Corrupted ib_logfile0 content leads to "InnoDB: Missing MLOG_CHECKPOINT at _ between the checkpoint _ and the end."
  • [CI-24102] Dumping databases with the use_required_dbs mode loads all databases
  • [CI-24624] Incorrect pre-capture command in a plan causes recovery points to load anyway

Security fixes

Find information about the security issues fixed in this release at https://security-advisory.acronis.com/updates/UPD-2308-37a7-b89c.

Known issues

  • [CI-24692] Spinner animation is missing when updating plugin from UI, from 1.7.3 to 1.8.
Build608August 16, 2023

Version 1.7.3

Fixed issues

  • [CI-24444] Database recovery fails on MariaDB version 10.6 if database server does not support connection via TCP
  • [CI-24504] Duplicate plugin instances are installed when updating the plugin via the Dashboard

Known issues

  • [CI-24559] Endless spinner animation is displayed after updating the plugin via the Dashboard. Refreshing the web page fixes the issue.
Build564August 2, 2023

Version 1.7.2

This update is currently available in the Early Access channel. Details of the Early Access Program are provided in this Knowledge Base article https://kb.acronis.com/content/72513.

What's new

  • Disabled the functionality for sending events and usage statistics to Google Analytics

Fixed issues

  • [CI-19664] Resolved an issue where the plugin user interface would break upon updating the cPanel application to version 110.x.x
  • [CI-22872] Fixed an issue where the plugin would cause the acronis_mms service to repeatedly restart after updating from version 506 to version 542 on some systemd machines

Known issues

  • [CI-24504] Duplicate plugin instances are installed when updating the plugin via the Dashboard
Build542March 28, 2023

Version 1.7.1

What's new

  • An optional "innodb_use_native_aio" setting can now be added to the [mysql] section of the /usr/local/cpanel/base/3rdparty/acronisbackup/srv/config.ini file. This addition can resolve the "io_setup() failed with EAGAIN after 5 attempts" error that may occur during MySQL execution while performing database or account recovery operations. In order for this setting to take effect, make sure to restart the plugin service by running the "/usr/local/cpanel/base/3rdparty/acronisbackup/scripts/acronis-backup-srv.sh restart" command.

Fixed issues

  • [CI-19664] WHM Resellers without an associated domain cannot open backup archives
  • [CI-20491] cPanel account recovery fails with the error 'RecoveryPointFindRootError' if the backup is created via a misconfigured protection plan
  • [CI-21440] WHM Resellers are unable to restore files that don't exist in the destination folder
  • [CI-21679] Domain download from the archive fails for terminated cPanel accounts
  • [CI-22338] Recovered database users have missing privileges
  • [CI-22369] Account recovery task stacks in state 'Created' if recovery has been started before the backup is mounted
  • [CI-22372] Service restart doesn't update the value of ACRONIS_MOUNT_DIR in the protection agent config file
  • [CI-22373] Database recovery task stacks in state 'In queue' if recovery has been started before the backup is mounted
  • [CI-22391] Failed backup status isn't updated on the dashboard if backup fails due to metadata capture errors
  • [CI-22489] Service user (API client) creation fails when authenticating in the plugin via login and password
  • [CI-22546] Plugin installation and update fail with the PHP fatal error "PHP Fatal error: Uncaught TypeError: reset(): Argument #1 ($array) must be of type array, null given in /usr/local/cpanel/base/3rdparty/acronisbackup/lib/ActiveOperationsContainer.php:71" when PHP 8.1.x is used on the system
  • [CI-22549] Backup tab stacks on loading because the allocated memory has been exhausted by file log.php on recovery points listing
  • [CI-22691] Only first 100 recovery points are shown in list on the Backups tab
  • [CI-22708] The recovery point limit in the self-service recovery functionality fails to apply to customer accounts
  • [CI-22729] Backup cannot be enabled from the plugin dashboard if pre-post backup commands are defined in the protection plan options
  • [CI-22749] A new webcp plan is created instead of applying a revoked plan when the Backup toggle is switched on in the plugin dashboard
  • [CI-22760] The plugin dashboard fails to load a list of the recovery points because PHP memory gets exhausted when the tenant has 5K registered resources

Message about future releases

Starting with the release of version 1.8.0 in May 2023, we are launching an Early Access program. This program will allow users to try out new features and ensure compatibility with their systems before the updates are rolled out to the entire fleet.

To participate in the Early Access program, you will need to switch the plugin repository on your servers. The exact implementation details will be communicated as we release version 1.8.0.

Users who wish to continue using the acronis-cpanel-stable repository don't have to make any changes to their systems. The update will be available in the stable repository approximately 4 weeks after it is released in the Early Access repository.

Build506February 28, 2023

Version 1.7.0

What's new

  • Support of Rocky Linux 8 and Ubuntu 20.04 TLS

    Now the plugin is compatible with two more flavors of the Linux operating system: Ubuntu 20.04 LTS and Rocky Linux 8.

  • New mechanism of running MySQL instances

    Upon database or account recovery operation, the MySQL daemon runs from within the backup archive rather than on the live system. This change solves multiple issues related to database recovery in Virtuozzo Hybrid Server 7.5 containers. It also removes the hard requirement for MySQL version match in the archive and on the target system, thus making it possible to smoothly recover a database after MySQL server system update.

  • Improved MySQL 8 support

    The logic of processing system databases was reworked to cover a wide range of non-typical database configurations available with MySQL 8 and third-party extensions. All non-customer databases are processed as system ones now.

  • Safe extension uninstallation

    Upon uninstallation, the extension calls the protection agent uninstaller with the --no-purge key defined in order to keep the association between the server, its protection plan and backup chain upon re-installation.

  • Unified temporary directory

    The location of the temporary directory was unified across the protection agent and the plugin. Now the value specified in /usr/lib/Acronis/system_libs/config will be overwritten with the value from the /usr/local/cpanel/base/3rdparty/acronisbackup/srv/config.ini file.

  • Database user recovery upon database recovery

    The database recovery procedure was supplemented with an option to recover database users together with the database content.

Fixed issues

  • [CI-10826] File recovery fails because of rsync warning with code 24
  • [CI-19138] Successive recovery and download operations cause the /tmp directory to overflow
  • [CI-19367] Mount points cannot be unmounted in some scenarios when the cPanel account has jailed shell enabled
  • [CI-20379] cPanel accounts recovery fails on decoding the output of cPanel utilities
  • [CI-21488] Metadata collection ignores all accounts, but "localhost" ones
  • [CI-21944] Misleading messages in the data capture log

Known issues

  • WHM Reseller without an associated domain cannot open backup
  • WHM Reseller is unable to restore files that do not exist in the destination folder
  • Recovered database users have missing privileges
  • Service restart does not update the value of ACRONIS_MOUNT_DIR in the protection agent config file
  • Database recovery task stucks in state 'In queue' if recovery has been started before the backup got mounted
Build473January 23, 2023

Version 1.6.12

What's new

  • Protective mechanism in the self-service recovery function that ensures exposure of at least as many recovery points as the number of backup days specified in the plan’s service level. Customers with recovery points exposure limit will see backups even if another backup job was missed or took too long to complete.

Fixed issues

  • [CI-21486] cPanel plugin generates excessive load on protection plan management API
  • [CI-20259] Account recovery fails with error "Insufficient disk space is available" although there's enough space in the temporary directory
Build459September 19, 2022

Version 1.6.11

What's new

  • Improved compatibility with MySQL 8

  • Case-insensitive login field in the configurator.ini file
  • Prompt to keep or delete newer emails upon mailbox recovery was removed for mdbox mailboxes as the functionality is available for maildir mailboxes only

Fixed issues

  • [CI-19605] Canceling a backup task in the cloud console produces error messages in the plugin dashboard
  • [CI-19606] "Account is disabled" error message pops up after the entire server recovery
Build434July 19, 2022

Version 1.6.10

What's new

  • Mailbox recovery can now preserve emails generated after backup creation.
  • cPanel account recovery time was improved by means of optimized cPanel metadata processing.
  • Recovery task handling was reworked to include the archive mounting step into the recovery task and report its status accordingly.
  • Compatibility with the security improvements, introduced in Acronis Cyber Protect Cloud Update 22.07.

    The following requirements should be met:

    • Update both the protection agent and the cPanel & WHM extension to their latest versions

    • Re-authenticate to Acronis Cyber Protect Cloud in order to generate an internal service user for protection plan management via the extension.

    Operations, related to protection plan management via the extension, including protection plan configuration and revocation as well as manual backup start, will be prohibited until then.

Detailed instructions are provided in the corresponding Knowledge Base article.

Build421June 13, 2022

Version 1.6.9

Fixed issues

  • [CI-9908] Recovery points may fail to unmount automatically. Fixed by adding a configurable option to forcibly unmount idle recovery points
Build413April 21, 2022

Version 1.6.8

What's new

  • cPanel metadata browsing flow for "Domains" and "Files" was unified for better consistency
  • Logic to retry cPanel tools execution was implemented to avoid backup failures due to sporadic breakdown of these tools
Build402March 22, 2022

Version 1.6.7 HF2

What's new

  • The cPanel home file tree collection into cPanel metadata was disabled by default. This is done in order to control its impact on the backup job performance on certain systems.

Fixed issues

  • [ED-666] cPanel home file tree collection causes the backup job to freeze due to namespaces' conflicts and also when accounts without web hosting are present on the system
Build400March 19, 2022

Version 1.6.7 HF1

Fixed issues

  • [ED-663] Backup fails if MySQL freeze is disabled in the pre-data capture scripts
Build399March 15, 2022

Version 1.6.7

What's new

  • cPanel metadata in the backup archive now includes the cPanel home file tree for faster recovery point browsing
Build391February 4, 2022

Version 1.6.6

Fixed issues

  • [CI-16308] cPanel accounts self-service permission misconfiguration
Build390December 10, 2021

Version 1.6.5 HF2

Fixed issues

  • [CI-15903] Plugin installation fails on cPanel v94
  • [CI-15904] Plugin registration check fails if there are 100+ machines registered under a single tenant
Build388December 6, 2021

Version 1.6.5 HF1

Fixed issues

  • [CI-15750] Plugin installation and update fails with Jupiter theme
Build386November 15, 2021

Version 1.6.5

What's new

AlmaLinux Support

Starting from version 1.6.5, the plugin will support the AlmaLinux OS (Electric Cheetah 8.4 and higher). Instances with CentOS 8 converted to AlmaLinux are supported as well.

New configuration options

  • New parameters added for the unattended configuration scripts:
    • retention_number_of_backups: this is the number of backups to keep. It allows to enable "by number of backups" retention scheme in the protection plan during initial setup or by updating the existing backup plan.
    • reattempts: number of times the backup task will be re-executed in case of failure
    • reattempt_period: time between reattempts
    • alert_period: number of days without single successful backup, after which the "No successful backups for a specified number of consecutive days" alert will be triggered.

Known issues and limitations

  • Cannot enable protection for Virtuozzo containers running AlmaLinux through the plugin. To resolve this, please follow the instructions, provided at https://kb.acronis.com/content/69769.

Build381September 3, 2021

Version 1.6.4

What's new

Self-service feature management for cPanel and WHM Reseller accounts

Options to enable self-service for cPanel end users and WHM Reseller accounts, have been added to the plugin configuration wizard.

Python version updated to 3.9

The Python version used in our plugin has been updated in order to improve the package stability and security.

Fixed issues

  • [CI-9071] Account restore finished successfully while restorepkg failed due to the lack of space on the machine
  • [CI-9665] Make max_allowed_packet configurable in the plugin config.ini to resolve issues with large databases download
  • [CI-9869] MySQL service stops when recovering cPanel accounts
  • [CI-10168] Incorrect domain path shown in case of customized document root location
  • [CI-11278] Recovery points mounting fails due to timeout
Build359February 17, 2021

Version 1.6.3

Fixed issues

  • Multiple fixes for the retention policy modifications in the unattended configuration script
Build357February 4, 2021

Version 1.6.2

What's new

New parameters in the plugin configuration script

Now it is possible to change the default retention policy during plugin initial installation and configuration as well as to adjust the existing backup plan settings.

Build351December 21, 2021

Version 1.6.1

Fixed Issues

  • [CI-9807] Reworked cPanel metadata collection for corrupted accounts and mailboxes
Build350November 27, 2020

Version 1.6.0

This release brings new features and multiple security, stability, performance and usability improvements.

What's new

Service level management for cPanel and WHM Reseller accounts
  • Now it's possible to set up different service plans for the cPanel and WHM Reseller accounts. WHM administrator can manage the number of days, for which available recovery points will be shown in the cPanel or WHM user interface for a particular account or group of accounts.
WHM Resellers support
  • Plugin UI is available for the WHM Reseller accounts: it is possible to browse and restore data of the cPanel user accounts belonging to this reseller. The option is configurable by WHM administrator.
Domains recovery and download
  • The archive content is re-grouped to allow users to restore and download data related to a particular domain, subdomain or addon domain.
Stability and performance improvements
  • Multiple stability and performance optimizations for files and database recovery, plugin installation and set up.
Other improvements
  • It's possible to set up custom location for MySQL data folder in plugin configuration file.

Fixed issues

  • [CI-9566] End-user databases restoration fails during multiple cPanel accounts recovery
Build336November 5, 2020

Version 1.5.1

What's new

  • Enabling backup plan during installation via unattended script is now optional
  • Support for authentication and cPanel server registration with API client created with partner credentials
Build330September 4, 2020

Version 1.5.0

What's new

  • Script for unattended plugin configuration updated to support API client authentication
  • Comments saved during backup of MySQL databases

Fixed Issues

  • [CI-8858] Failed metadata collection for remote MySQL databases
Build323July 24, 2020

Version 1.4.1

Fixed issues

  • [CI-7415] cPanel account restore fails if PostgreSQL database is used
  • [CI-7258] Recover and download of the account fails if there're no databases or skip databases option is selected
  • [CI-7207] Incorrect error message is shown in UI if an archive mount operation fails
  • [CI-7053] Login name for Acronis Cyber Cloud is not pre-filled when switching to the backup console
Build320May 28, 2020

Version 1.4.0

This release brings new features and multiple security, stability, performance, and usability improvements.

What's new

Encryption support

  • Now it's possible to enable encryption for the backups during the initial plugin configuration in UI, with unattended configuration script or by creating a new backup plan in the backup console.
  • Encryption as a machine property is also supported.

Unattended plugin configuration

  • New script for an unattended plugin configuration is available, it automatically checks if the backup agent