Update check now passes the script version to the update server.Grammar on code notes corrected.Removed $log_file from global scope in backup_accounts function.Removed unnecessary $mail variable. Resolve issue when config.php exists but $config is not defined. index.html files added to folders to prevent unauthorised access.Add FTP Verification & Directory Creation Functions.Added @global...
Protect Your cPanel/WHM Reseller From Data Loss
If you have your own cPanel reseller account, then there’s a high chance that your web host manages the backups for all your cPanel accounts held within your reseller. Do you know how often they take backups? What precautions they take to ensure your website data is safe? Do you know what would happen in the event that your web host closed down?
Take control of your website backups with WHM Backup Solutions, a FREE and open source PHP script that allows you to schedule backups of all accounts within a reseller storing backups safely within the account home directory, a remote FTP server or even remote SCP storage.
- Allows you to creates backups of every account within your WHM account.
- Able to specify what to backup based on Username; Package Name, Domain Name, Account Owner or IP Address. You can also exclude accounts just as simple.
- Authenticate is via API Token, Hash Key or WHM Password. Individual cPanel account passwords not required.
- Store backups in home directories or transfer backups via FTP, Passive FTP or SCP/SSH.
- Configure the script by editing the simple config file in under 5 minutes (The configuration file can also be obscured).
- The script can automatically update to the latest version.
- The script is hosted on your own server and is completely open source, no need to give a third party access to your WHM account.
- Support given to install, troubleshoot or discuss modifications via email or facebook messenger.
Download Script For FREE
In Simple Terms What Does The Script Do?
Simply put the script once setup asks your cPanel server to create a 100% full backup of each cPanel account within your reseller at the time of your choosing, the backups are then transferred from your cPanel server to either the account home directory, an FTP server or even an SCP server for storage.
How Does This Script Work?
Using PHP we can communicate with the cPanel server’s using an Application Programming Interface (API). This is functionality the developers of cPanel have built in to allow external scripts to run functions on the cPanel servers.
What this script does is uses the listaccts API to retrieve a list of accounts within the reseller and then loops through each account and automatically chooses either API1 function fullbackup if your cPanel version is <78 or the latest UAPI functions fullbackup_to_ftp; fullbackup_to_homedir; fullbackup_to_scp_with_key or fullbackup_to_scp_with_password if your cPanel version is >78 to perform a full backup of each account.
For more information about how the script works, head over to our blog post.
Is It Really Free?
Yes, 100% FREE! The script is released under the opensource GNU GPL-3.0-or-later license, which for those who only want the highlight means, the entire code is accessible, available to edit and released for free. The only limitation is that any variants must also be released for free.
Want to see the code? Head over to out GIT repository.
What Else Do I Need?
The requirements are pretty standard for the majority of cPanel resellers.
- cPanel/WHM Reseller Account.
- Be able to List Accounts within your Reseller.
- Be able to click the cPanel logo on the List Accounts page and log into a cPanel account.
- You must also have PHP 5.6 or above (If you don’t then you urgently need to contact your web host to upgrade you to PHP 7+).
- PHP should also have the following extensions enabled: CURL & FTP (FTP only required if your using the FTP retention script).
What Do I Do If I Need Help?
The script is developed and supported by me! (Peter Kelly). I regularly review and test the script and I am easily contactable via our Facebook page, Twitter or email email@example.com. However, please try to understand that I have a full time job so my replies may take up to 48 hours. If for some reason I don’t respond within 48 hours, please feel free to give me another nudge.
What Do Other People Think?
As people have used the script we’ve reached out and asked for them to post their thoughts on the script on our TrustPilot page. This has led to a 100% Excellent rating! Don’t believe us check them out yourself.