How to Move All cPanel Accounts from One Server to Another
Last modified: August 19, 2020
This tutorial explains how to migrate your cPanel accounts, SSL certificates, and main server IP address from one server to another. Typically, you would do this when you need to replace your server.
Your websites will likely experience downtime during this process.
This procedure assumes that your server’s IP addresses are portable, and that you can migrate them from the old server to the new server. If you use a third-party data center or hosting provider for your cPanel & WHM server, contact them to confirm that you can migrate your IP addresses.
Migrate your cPanel accounts
Install cPanel & WHM on your new server
Before you transfer the accounts, install cPanel & WHM on your new server. To do so, follow the steps in our Installation Guide.
During the installation process, select a hostname and main IP address for the new server.
The replacement cPanel & WHM server should contain identical software to the original server. This includes MySQL® or MariaDB®, PHP, PHP extensions, Apache®, Apache extensions, and other software options. If you do not use the same version of MySQL or MariaDB on the new server, you may encounter serious errors. If you wish to update any of the software on the server, we strongly recommend that you perform the transfer first and then perform any updates.
You must select a main IP address that differs from your old server.
Select the same hostname, shared IP address, and nameservers that your old server uses. The system configures the DNS zone files of restored accounts with those settings. You can do this in WHM’s Basic WebHost Manager Setup interface (WHM >> Home >> Server Configuration >> Basic WebHost Manager Setup).
Make certain that you copy your cPanel accounts’ Apache configuration to the new server. To do so, follow the steps in our Customize Your Installation documentation.
cPanel & WHM requires a valid license. If this is a new installation, you can activate a free 15-day trial license.
In order to activate a new license, you must have a cPanel Store account with a verified email address.
The migration process will transfer your permanent license to the new server.
Copy all accounts to the new server
If you do not use a SNI-capable operating system, make certain to copy all SSL certificates before you transfer accounts between servers. SSL certificates and keys reside in the
After you install cPanel & WHM on your new server, copy each account from your old server to your new server. To move all of your accounts from one server to another, follow the steps in WHM’s Transfer Tool interface (WHM >> Home >> Transfers >> Transfer Tool).
As of cPanel & WHM version 56, WHM’s Transfer Tool interface (WHM >> Home >> Transfers >> Transfer Tool) allows you to transfer the following service configurations:
- cPanel & WHM (
- MySQL and PostgreSQL databases
- User interface themes
Make certain that you transfer each account’s EasyApache configurations, or your websites may experience issues.
Shut down your old server
Before you begin Step 3, if your old server belongs to a DNS cluster, delete the DNS clusters in WHM’s DNS Cluster interface (WHM >> Home >> Clusters >> DNS Cluster).
After you copy your accounts to the new server, you can shut down your old server.
Change the new server main IP address to the old server IP address
If you purchased your license directly from cPanel, L.L.C., or a third-party license provider, you must perform this step.
We recommend that you do not perform this step if the following conditions are true:
- You wish to migrate your accounts to a new server with a new hosting provider.
- You purchased your cPanel license from your former hosting provider.
After you shut down your old server, change the new server’s main IP address to the IP address of your old server. Perform this action via the command line in a local session. A local session allows you to make changes, restart the network service, and remain connected to the server.
To change the server’s main IP address, perform the following steps:
GATEWAYlines to use the IP address and gateway of your old server.
/etc/ipsfile with a text editor.
Add your old server’s primary IP address, net mask, and gateway to the file.Note:
Remove the new server’s primary IP address from this file.
Restart the network service with the following commands:
For CentOS 6 and earlier, CloudLinux™ 6 and earlier, and Red Hat® Enterprise Linux (RHEL) 6 and earlier, and Amazon® Linux, run the
service network restartcommand.Note:
Amazon Linux always runs in a NAT configuration.
For CentOS 7 and later, CloudLinux 7 and later, and RHEL 7 and later, run the
systemctl restart networkcommand.
/scripts/mainipcheckcommand to add the IP address to the
/scripts/fixetchostscommand to add the IP address and hostname of your server to the
Confirm that you possess a valid cPanel license
After you move all of your accounts to your new server, confirm that you possess a valid cPanel license. To do this, navigate to our License Verification interface.
Change the IP address of all accounts to the correct IP address
After you transfer the accounts to the new server, the system may have set the IP addresses of the accounts to the new server’s original main IP address. You must change each account’s IP address to the current IP address with WHM’s IP Migration Wizard interface (WHM >> Home >> IP Functions >> IP Migration Wizard).
Add the new server to the DNS cluster
If your server does not belong to a DNS cluster, proceed to the next step.
To add the new server to the DNS cluster, perform the following steps:
Navigate to WHM’s DNS Cluster interface (WHM >> Home >> Clusters >> DNS Cluster).
Select Enable DNS Clustering.
Click Return to Cluster Status.
Select the server to add to the DNS cluster from the Add a new server to the cluster menu.
Reinstall all SSL certificates
Proceed to the next step if your server meets the following conditions:
- The accounts on your server do not use SSL certificates from a Certificate Authority.
- Both of your servers use an SNI-capable operating system.
To upload an existing SSL certificate to your server, perform the following steps:
Navigate to WHM’s Install an SSL Certificate on a Domain interface (WHM >> Home >> SSL/TLS >> Install an SSL Certificate on a Domain).
Paste the certificate into the text box, or click Fetch to upload a
Click Submit to install the certificate.