Installing cPanel and WHM on Linux CentOS Cloud Servers

2020-01-02 By Aaron 6452 Views linux centos cpanel
2 reviews

cPanel is one of the most common and popular control panels used in Linux web hosting. It allows a user to manage the server through a graphical interface with ease. cPanel comes with separate interfaces which facilitate both user-level access (cPanel) and root-level access (Web Host Manager or WHM).

Some of the features of cPanel are:

  • Simple and powerful graphical user interface

  • Easy management of services in the server

  • Option to switch between different FTP, DNS and Mail services

  • Easy database management through phpMyAdmin

This guide will outline the steps required to install cPanel in the CentOS server.

NOTE: cPanel installation is currently ONLY supported in Linux servers with CentOS versions 6.5 or later, CloudLinux versions 6 and 7, RHEL versions 6 and 7 and Amazon Linux.


Before proceeding with the installation of cPanel, there are few steps that should be done in the server.

  1. Update hostname of server with a Fully Qualified Domain Name (FQDN).

    cPanel installation requires the server to have a Fully Qualified Domain Name as the hostname of the server. If the hostname is not set correctly, there are chances that cPanel installation will encounter errors such as below:


    The following command can be used to set the hostname in the server.

    # hostname FQDN

    In the below example, has been set as the hostname of the server. Logout of the server once the hostname has been set and then log back in for the changes to be made effective.


  1. Install Perl on the server.

    It should be made sure that Perl is installed on the server. The below command can be executed to install Perl on the server.

    # yum -y install perl

  1. Install wget and screen in server.

    Although cPanel installation is simple, it takes considerable time to get completed. Executing the installation on the screen will make sure that the installation is not interrupted.

    Run the below command to install wget and screen commands in the server in one single go.

    # yum -y install screen wget

  1. Disable Network Manager service.

    Make sure that the Network Manager service is disabled and network.service service is enabled before cPanel installation. Below commands can be used for this purpose.

CentOS 7

  • Disable Network Manager service by executing the below commands.

    # systemctl stop NetworkManager
    # systemctl disable NetworkManager
  • Restart the network.

    # systemctl enable network.service
    # systemctl start network.service

CentOS 6

  • Disable Network Manager service by executing the below commands.

    # service NetworkManager stop
    # chkconfig NetworkManager off
  • Restart the network.

    # chkconfig network on
    # service network start

Start to install cPanel control panel

  1. Start a new session by executing the below command.

    # screen
  2. Once the screen session opens up, download the latest cPanel & WHM Installer file using the below command.

    # wget -N


  3. Execute the installer script by running the below command.

    # sh latest

    NOTE: The script will take around a couple of hours to be completed and will run uninterrupted on the screen. To detach the screen and exit out of the current session, press the Ctrl+A+D keys together.

    The screen can be reattached to check on the status of the installation by executing the below command.

    # screen -r
  4. Once the cPanel installation has been completed, a summary of the installation will be shown at the end as below:


  5. WHM/cPanel can now be accessed using the below URL’s.

    https://<ip_address>:2087 (WHM)
    https://<ip_address>:2083 (cPanel)

  • WHM panel facilitates administrative access to a server and helps in managing the entire hosting functions such as creation/modification and deletion of accounts, managing services of the server including DNS, Mail, Database, FTP, statistics, and logs monitoring.

  • cPanel is the user-level management panel, through which the user for a domain can manage the basic functions related to the website, such as uploading website files, creating email accounts, creating subdomains, addon domains, etc.

Set up and configure WHM

  1. Once WHM is accessed using the above-specified URL, the WHM login interface page will open up, similar to below. Log in to WHM using the root user and its associated password.


  2. After logging in, click on Agree to All to proceed with the WHM setup.


  3. In the next screen, type in your email address as well as the nameservers that will be used for the server, and then click on finish. You may use any workable nameservers on this setting.

    All websites that will be created through WHM will be assigned with these nameservers in the server.


  4. The typical home page of WHM will be as below:


    cPanel interface would be as below:


Activate cPanel license

cPanel is a licensed control panel and requires to be activated for making use of all its features. cPanel default installation comes with a 15-day trial license, after which it needs to be activated with a valid license.

LayerStack currently does not offer a cPanel license at this moment, this would need to be purchased directly from the vendor.

  1. Contact cPanel official and purchase the license for the server IP address.

  2. The validity of the purchased license can be verified by the license status using the URL (

  3. Once a license has been verified, log in to SSH of the server and execute the below command to apply the license to the server.

    # /usr/local/cpanel/cpkeyclt

Related LayerStack Product

Related Tutorials

What do you think about this article?

Rate this article
Need assistance?

Try this guide to receive free bundled services at signup on a new free account.

Sign Up

Your Feedback Is Important

We hope you’ll give the new products and updates a try. If you have an idea for improving our products or want to vote on other user ideas so they get prioritized, please submit your feedback on our Community platform. And if you have any questions, please feel free to ask in the Community or contact our Technical Support team.