Installation Guide - System Requirements for CentOS


Overview

This document describes the system requirements for your cPanel & WHM installation in a CentOS server. You can install cPanel & WHM on CentOS version 7 and Red Hat® Enterprise Linux® (RHEL) version 7.

Before you install cPanel & WHM or cPanel DNSOnly®, make certain that your CentOS or RHEL system meets all of our minimum requirements for new installations.

Warning:
  • cPanel, L.L.C. does not support installations of cPanel or WHM on the CentOS Stream operating system. If you have installed cPanel or WHM on CentOS Stream, reinstall cPanel & WHM on a supported operating system as soon as possible to avoid problems.

  • This document lists the minimum requirements to install cPanel & WHM. A CentOS or RHEL server that meets only these requirements may not function properly, especially when the server runs certain high-demand functions.

  • You must log in to the server as the root user in order to install cPanel & WHM. If you do not possess root-level access, contact your system administrator or hosting provider for assistance.

  • Servers on an IP address with an active CloudLinux license will automatically convert to CloudLinux. To stop the conversion and keep CentOS on your server, add the --skip-cloudlinux installation option to the end of your installation command.

License

Each cPanel & WHM server requires its own license. If you do not already own a license for cPanel & WHM, you can obtain one for your server’s IP address. To obtain a cPanel & WHM license, visit the cPanel Store.

Warning:
  • You cannot transfer a single cPanel & WHM license across multiple servers. This action may cause cPanel, L.L.C. to lock your license. For more information, read our Legal Agreements documentation.

  • Due to networking requirements, you cannot run an IPv6-only cPanel & WHM server. You must have at least one IPv4 address.

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.

  • cPanel DNSOnly requires a DNSOnly license, which the server automatically obtains during installation. If this does not occur, contact cPanel Customer Service.

Networking requirements

Hostname

Your hostname must meet the following requirements:

  • Be a registered and fully-qualified domain name.
  • Does not match any of your server’s domains.
  • Be a maximum of 60 characters in length.
  • Resolves to a valid IPv4 or IPv6 address.
Note:
If your server does not use a resolvable fully-qualified domain name as the hostname, it will automatically receive one from cPanel, L.L.C. For more information, read our Automatically-Issued Hostnames documentation.

IP addresses

Your IP address must meet the following requirements:

  • Be a valid IP address.
  • Be a 1:1 NAT and NAT loopback configuration if your server resides on a NAT-configured network.

Ethernet device

You must configure your Ethernet device with a static IP address and fully-qualified hostname. The system attempts to detect and set the Ethernet device during the installation process.

Warning:

You cannot use an IP address that a DHCP service dynamically assigns to your server.

Firewalls

The installer will attempt to open the necessary ports during the installation process. We recommend that you disable OS firewalls before you run the cPanel & WHM installation. When the installation process finishes, we recommend that you then configure a firewall with a third-party client such as APF or CSF.

Important:

CentOS and RHEL distributions allow you to disable the firewall for the operating system’s installation configuration. We strongly recommend that you use this method.

To deactivate firewalls on CentOS 7 and RHEL 7, run the following commands to deactivate the firewall, where ~/firewall.rules represents the firewall rules file:

1
2
3
iptables-save > ~/firewall.rules
systemctl stop firewalld.service
systemctl disable firewalld.service

Utilities

For systems that run CentOS 7 and RHEL 7: you must disable Network Manager before you run the cPanel & WHM installation. The Network Manager service automates the network’s settings and disrupts connections to the IP addresses that reside in the ipaliases module.

Warning:

For systems that run CentOS 7 and RHEL 7:

  • Disable Network Manager from the server’s console to prevent any interruption to network connectivity.

  • Exercise extreme caution when you run the commands to disable Network Manager. If you do not follow them exactly, your server may lose its network services.

Hardware requirements

Operating system and version Processor RAM Disk Space Architecture
CentOS 7 or RHEL 7 1.1 GHz
  • Minimum: 1 GB
  • Recommended: 2 GB
  • Minimum: 20 GB
  • Recommended: 40 GB
64-bit
Warning:

Hardware considerations

When you choose a server, consider the following questions:

How many sites do you plan to host?

Servers that host a large number of websites with associated email addresses and databases require more processing power, disk space, and RAM.

What kind of web hosting do you plan to do?

You can run cPanel & WHM with the minimum requirements in the table above. However, servers that host videos, music, or high-volume applications require more processing power, disk space, and RAM.

If you plan to host CPU-intensive applications on a virtual machine, we recommend that you evaluate your CPU load usage. You may need to assign additional CPU cores to satisfy the processing requirements of high-performance applications.

Note:
  • The cPanel & WHM installation and upgrade processes require at least 5 GB of additional disk space in the /usr/local/cpanel directory.

  • Before the installation process begins, the system checks to ensure that your server meets these minimum memory requirements. If your server does not meet these requirements, the installation process will return an error message and then exit.

CentOS and RHEL versions

cPanel, L.L.C. supports all of the official production release kernels for CentOS 7 and Red Hat Enterprise Linux 7.

CentOS

You can install cPanel & WHM on CentOS version 7.

Note:
  • Installations of cPanel & WHM on CentOS servers must use CentOS version 7.

  • We recommend that you use the minimal installer.

  • If you are using an operating system source that cPanel, L.L.C. did not provide, you must disable SELinux.

To install CentOS, read the CentOS Installation Guide.

Red Hat Enterprise Linux

You can install cPanel & WHM in Red Hat Enterprise Linux version 7.

Note:
  • Installations of cPanel & WHM on RHEL servers must use RHEL version 7.

  • cPanel, L.L.C. does not support installation on Red Hat Update Infrastructure (RHUI) systems.

  • If you are using an operating system source that cPanel, L.L.C. did not provide, you must disable SELinux.

To install Red Hat Enterprise Linux on a clean server, read the Red Hat Installation Guide.

After you install Red Hat Enterprise Linux, you must run the rhn_register command to register the server with the Red Hat Network.

Warning:

You must register the server before you install cPanel & WHM or cPanel DNSOnly. If you do not register the server, the installation will fail.

If your server is on the Red Hat Network and uses the satellite subscription method, you must install the subscription-manager package before you install cPanel & WHM.

To subscribe to the Optional RPMs channel for RHEL 7, run the following command:

subscription-manager repos --enable rhel-7-server-optional-rpms

You may need to subscribe to additional channels to maintain all of the packages that cPanel & WHM requires.

Operating state

In Linux, the operating system possesses several levels of operating states. Each different level represents a system configuration and allows users to access different processes.

Operating system Operating state Setting Location
CentOS 7 or RHEL 7 Target multi-user.target /usr/lib/systemd/system

Change the operating state

To change the runlevel for CentOS or RHEL, run the following command as the root user, where TARGET.target represents the operating state target:

systemctl set-default TARGET.target

For a complete list of targets, visit freedesktop.org’s systemd.target article.

Disable SELinux

You must disable SELinux to make your system compatible with cPanel & WHM.

To disable SELinux security features, use one of the following methods:

  • Use the graphical interface to disable SELinux while you configure your operating system, and then reboot the server.

  • Edit the /etc/selinux/config file to set the SELINUX parameter to disabled, and then reboot the server. The contents of the /etc/selinux/config file should resemble the following example:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    
    # This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    # enforcing - SELinux security policy is enforced.
    # permissive - SELinux prints warnings instead of enforcing.
    # disabled - No SELinux policy is loaded.
    SELINUX=disabled
    # SELINUXTYPE= can take one of these two values:
    # targeted - Only targeted network daemons are protected.
    # strict - Full SELinux protection.
    SELINUXTYPE=targeted
    Important:

    Make certain that the number sign (#) does not precede SELINUX=disabled. If a # precedes this configuration option, the system ignores the option.

Warning:
  • To run cPanel & WHM on your server, SELinux must remain disabled.
    • SELinux in enforcing mode does not allow cPanel & WHM to function properly. For more information about SELinux modes, read the SELinux Mode documentation.
    • While cPanel & WHM can function with SELinux in permissive mode, we recommend that you do not use it. Permissive mode generates a large number of log entries.
    • To check the status of SELinux on your server, run the sestatus command.
  • Do not transfer the SELinux configuration file between computers. It may destroy the file’s integrity.

Perl installation

Perl must exist on your server before the installation script for cPanel & WHM can run successfully. If Perl does not exist during installation, the cPanel & WHM installer attempts to install Perl via the yum -y install perl command.

  • If you see errors during this step of the installation process, read our Troubleshoot Your Installation documentation.

  • For more information about Perl on your server, and which versions of Perl ship with specific operating systems, read our Guide to Perl in cPanel & WHM documentation. cPanel & WHM servers use multiple Perl environments.

Note:

We strongly recommend that you allow your operating system’s distribution to control the system Perl installation. Do not customize this Perl installation.

Filesystems

When you install your operating system (OS), we recommend that you use the XFS® or ext4 filesystems.

Note:

We only develop and test cPanel & WHM on filesystems that support flock. Some network filesystems (for example, NFS) may require additional configuration in order to function properly. However, these configurations are difficult to implement successfully and we do not support them.

Partitions

Note:
  • Your system’s applications may require additional swap space. Consult your application’s software developers or documentation for their swap space recommendations.

  • Additional partitions improve performance for some servers, especially servers with high email volume. The OS can only access a limited number of files per partition.

Partition RAM and minimum size
/ N/A — Grow to fill disk (40 GB recommended, 20 GB minimum).
Note:
To host a greater number of accounts, allocate more disk space to this partition.
swap
  • 2 GB or less — Two times the amount of RAM on the server.
  • 2 GB to 4 GB — The same as the amount of RAM on the server.
  • 4 GB or more — 4 GB
Warning:
  • The CentOS automatic partitioning scheme is not optimized for cPanel servers. This scheme creates a relatively small home partition and a relatively large root partition (/).

  • In order to optimize space partitions for CentOS, we recommend the following options:

Inodes

In Linux, an inode is a filesystem object that contains the owner, permissions, and other important metadata. Every file, image, directory, email, and symbolic link on your server requires an inode.

  • On average, files on webservers are usually smaller than on other types of servers. Therefore, we recommend that you allocate more than the default number of inodes on your server’s partitions.

  • If you install everything on a single partition, the base cPanel & WHM or cPanel DNSOnly installation requires at least 1,000,000 inodes, plus at least 50,000 inodes per cPanel account that you plan to host.

Virtual environments

cPanel products support the following virtual environments with the following restrictions:

  • KVM — No additional restrictions.

    Note:

    If you use a Linux bridge on a KVM server, you may experience problems with multicast routing.

    • These problems affect the server’s ability to resolve nodes on the network. For example, IPv6 Stateless Address Autoconfiguration (SLAAC) addresses may drop off intermittently, or the server may experience problems when it attempts to find the router.

    • To resolve this issue, set the multicast_router system knob value to 2. For more information, read this CentOS-virt mailing list thread.

  • Linux Containers — cPanel & WHM requires additional configuration to run inside a Linux Container. For more information, read our Linux Containers documentation.

  • Linux-VServer — No additional restrictions.

  • Microsoft Server® 2008 Hyper-V, Microsoft Server 2012 Hyper-V — cPanel only supports the drivers and configurations that Microsoft® provides.

  • OpenVZ

    • cPanel only supports stable releases.
  • Oracle VM VirtualBox, VirtualBox OSE — No additional restrictions.

  • QEMU — No additional restrictions.

  • SmartOS — cPanel & WHM detects this virtual environment and reports as functional, but we do not officially support it.

  • Virtuozzo™

    • We support Virtuozzo version 7 and earlier.
    • We only support Virtuozzo KVM and container environments.
  • VMware ESXi™ Server — No additional restrictions.

  • Xen, XenEnterprise™, XenExpress™, XenServer™ — No additional restrictions.

Compatible browsers

We specifically test cPanel & WHM with certain browsers to ensure compatibility. Other browsers will likely function, but may appear differently or experience issues with certain features.

We develop and test cPanel & WHM to function with the latest versions of the following browsers:

  • Chrome™ (MacOS®, Microsoft® Windows®, Linux)

  • Firefox (MacOS, Windows, Linux)

  • Microsoft Edge (Windows)

  • Safari® (MacOS)

Mobile versions of Firefox, Chrome, and Safari are also compatible with cPanel & WHM.

Note:

These browsers support some email features. The interfaces in cPanel & WHM will likely function, but you may notice minor defects or inconveniences that relate to specific functionality.