Installation Guide - System Requirements for Ubuntu


Overview

This document describes the system requirements for your cPanel & WHM installation in an Ubuntu® server. You can install cPanel & WHM version 98 in Ubuntu version 20.04 LTS.

Warning:

cPanel & WHM version 100 for Ubuntu 20.04 LTS is experimental software and we do not recommend using it in production environments.

For more information, read the cPanel & WHM version 100 for Ubuntu 20.04 LTS documentation.

Before you install cPanel & WHM, make certain that your Ubuntu system meets all of our minimum requirements for new installations.

Warning:
  • This document lists the minimum requirements to install cPanel & WHM. An Ubuntu 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.

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. However, we do not support cPanel DNSOnly for cPanel & WHM version 98 in Ubuntu 20.04 LTS servers.

Networking requirements

Hostname

Your hostname must meet the following requirements:

  • Registered and fully-qualified domain name.
  • Does not match any of your server’s domains.
  • 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 valid subnet address.

  • Be a default gateway IP address.

  • Be a 1:1 NAT and NAT loopback configuration if you server resides in a NAT-configured network.

Ethernet device

A properly-configured 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

Even though the installer attempts 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:

Ubuntu 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 Ubuntu, 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

On systems that run Ubuntu, the cPanel & WHM installer will automatically disable the Network Manager service and enable the network.service service.

Hardware requirements

Operating system and version Processor RAM Disk Space Architecture
Ubuntu 20.04 LTS
  • Minimum: 1.1 GHz
  • Recommended: 2 GHz
  • Minimum: 1 GB
  • Recommended: 4 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.

Ubuntu versions

You can install cPanel & WHM in Ubuntu 20.04 LTS (Focal Fossa).

However, cPanel, L.L.C. does not support experimental versions of the cPanel & WHM software. We plan on supporting all of the official production release kernels for Ubuntu 20.04 LTS in a future release.

Warning:

cPanel & WHM version 100 for Ubuntu 20.04 LTS is experimental software and we do not recommend using it in production environments.

For more information, read the cPanel & WHM version 100 for Ubuntu 20.04 LTS documentation.

Note:
  • 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 Ubuntu, read the Installing Ubuntu 20.04 documentation.

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
Ubuntu Target multi-user.target /usr/lib/systemd/system

Change the operating state

To change the OS’s runlevel for Ubuntu, 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 Ask Ubuntu’s How do I change the runlevel on systemd? article.

Disable SELinux

Note:

These instructions apply if you have installed SELinux on your server.

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 apt -y install perl-base 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

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 the 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® Server, VMware ESX 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.