JetBackup 5 is the backup system MdmHost uses on its hosting servers. If you run your own cPanel & WHM server, you can use it too: it makes incremental backups of every account to a remote destination and lets your customers restore files, databases and email themselves from cPanel. This guide covers a solid basic setup.
Before you start
- Root access to the server and WHM.
- A JetBackup 5 licence for the server (purchased from JetApps or a licence reseller).
- A remote backup destination, never the same disk as the accounts: another server reachable by SSH/SFTP, or S3-compatible object storage.
Install JetBackup 5
- Connect as root over SSH.
- Install the JetApps repository and JetBackup following the official JetBackup documentation for your OS; on AlmaLinux with cPanel it is typically:
bash <(curl -LSs https://repo.jetlicense.com/static/install)jetapps --install jetbackup5-cpanel stable - Open WHM → Plugins → JetBackup 5. The licence activates automatically when it matches the server IP.
Add a destination
- In JetBackup 5 go to Destinations → Create New Destination.
- Choose the type, e.g. SSH (rsync over SSH, supports incremental backups) or S3 Compatible.
- For SSH, enter the host, port, username, a private key and the remote path such as
/backup/server1. - Click Save. JetBackup validates the connection; fix any error before continuing.
Warning: Backups stored on the same server protect against mistakes but not against disk failure or a compromised server. Always use at least one off-server destination.
Create a backup job
- Go to Backup Jobs → Create New Backup Job.
- Backup Type: Accounts. Contains: Full Account Backup (home directory, databases, email, DNS, cron, SSL, account config).
- Destination: the destination you created.
- Selected Accounts: all accounts, optionally excluding some.
- Schedules: create a Daily schedule (e.g. starting 02:00) with a retention such as
14backups. Add a weekly or monthly schedule for longer history if space allows. - Optional: exclude cache folders (e.g.
*/cache/*,*/lscache/*) in Excludes to save space. - Save, then click Run Now once to make the first full copy.
Let users restore from cPanel
- In Settings → Permissions (or per package in Packages), allow users to see and restore file, database, email, DNS and cron backups, and to download backups.
- Include JetBackup 5 in the feature list so it appears in cPanel; users then follow guides such as restore files from JetBackup 5.
- Resellers can restore their customers' accounts from WHM; see reseller restores.
Monitor backups
- Check Dashboard and Logs daily at first: failed accounts are usually over quota, locked databases or destination space problems.
- Set up Notifications by email for failures.
- Test a restore of a sample account every month. A backup you never tested is not a backup.
Troubleshooting
- Licence not active: the licence IP differs from the server IP or outbound HTTPS is blocked.
- Destination validation fails: wrong key permissions, firewall on the remote server, or wrong path.
- Jobs run very long: first runs are full copies; later incremental runs are much faster. Spread schedules to avoid busy hours.
