cPanel

How to Move All cPanel Accounts from One Server to Another

Valid for versions 94 through the latest version

Version:

82

90

94


Overview

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.

Warning:

Your websites will likely experience downtime during this process.

Note:

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.

Important:
  • 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.

Note:
  • 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

Important:

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 /etc/ssl/ directory.

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).

Important:
  • If you only possess user credentials and do not have root access or privileges, use WHM’s Transfer or Restore a cPanel Account interface (WHM >> Home >> Transfers >> Transfer or Restore a cPanel Account).

  • In cPanel & WHM version 90 and later, WHM’s Transfer Tool interface (WHM >> Home >> Transfers >> Transfer Tool) allows you to use the Live Transfer feature. This feature reduces downtime during transfers between cPanel & WHM servers. Only use this feature if the source server controls the authoritative name servers for the domain.

  • WHM’s Transfer Tool interface allows you to transfer the following service configurations:

  • Backups

  • cPanel & WHM (whmconf)

  • EasyApache

  • Exim

  • 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

Important:

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

Important:
  • 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:

  1. Open the /etc/sysconfig/network-scripts/ifcfg-eth0 file.

  2. Edit the IPADDR and GATEWAY lines to use the IP address and gateway of your old server.

  3. Open the /etc/ips file with a text editor.

  4. 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.

  5. Restart the network service with the following commands:

    • For CentOS 6 and earlier, CloudLinux™ 6 and earlier, Red Hat® Enterprise Linux® (RHEL) 6 and earlier, and Amazon® Linux, run the service network restart command.

      Note:

      Amazon Linux always runs in a NAT configuration.

    • For CentOS 7 and 8, CloudLinux 7 and 8, AlmaLinux 8, and RHEL 7, run the systemctl restart network command.

  6. Run the /scripts/mainipcheck command to add the IP address to the /var/cpanel/mainip file.

  7. Run the /scripts/fixetchosts command to add the IP address and hostname of your server to the /etc/hosts file.

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

Note:

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:

  1. Navigate to WHM’s DNS Cluster interface (WHM >> Home >> Clusters >> DNS Cluster).

  2. Select Enable DNS Clustering.

  3. Click Change.

  4. Click Return to Cluster Status.

  5. Select the server to add to the DNS cluster from the Add a new server to the cluster menu.

  6. Click Configure.

Reinstall all SSL certificates

Note:

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:

  1. Navigate to WHM’s Install an SSL Certificate on a Domain interface (WHM >> Home >> SSL/TLS >> Install an SSL Certificate on a Domain).

  2. Paste the certificate into the text box, or click Fetch to upload a .crt file.

  3. Click Submit to install the certificate.

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Check Also
Close