What is CPanel?
cPanel is the most popular Linux based hosting control panel used in the web hosting industry. It simplified the normal system administration tasks to such an extent that even a non-technical end user can do the basic things all by themselves via web based interface with single click mechanism.
cPanel is an enterprise hosting control panel and you’ll have to purchase the license for it to work with full functionality. It offers 15 days trial version for testing and familiarizing purposes.
cPanel comes along with webserver suite (LAMP) with Mail server, FTP server, Name server applications etc. So we don’t have to install each of those packages after installing cPanel.
In this tutorial, we will go through how cPanel is installed and setup in a CentOS server.
How To Install CPanel
cPanel provides custom installation scipt, so we just have to download the installation script and execute it to complete the cPanel installation. This is most likely to be done in a newly provisioned server to avoid installation errors.
This can be done by executing a single command in terminal.
cd /home && curl -o latest -L http://httpupdate.cpanel.net/latest && sh latest
This command change the current working directory to /home, downloads the latest cPanel package and executes the installation script.
Below given is a screenshot that marks the completion of cPanel/WHM installation.
With this being done, we can move into the setup of cPanel/WHM via web interface or frontend. Just go through the screenshots below for the setting up cPanel/WHM.
CPanel/WHM Setup Via Web Interface
cPanel/WHM is listening to the ports 2086 and 2087, later when accessed via HTTPS.
You can access the web interface of WHM in your browser by going to http://IPADDRESS:2086 or https://IPADDRESS:2087 for encrypted connection.
This will take you to the WHM login window and since WHM requires ‘Root’ access, you need to login as the Root user and password.
The first page you see after login would be the initialisation setup page. This page just shows the license agreement, you can accept it and move on to the next page which is the Networking setup.
In this page you need to specify the following things:
Server Contact Email Address – This is the Email address in which server sends notification Emails.
This Server’s Hostname – Hostname of the server
Primary Resolver – Primary Name Server which this cPanel server contacts to for Domain Name Resolution.
Secondary Resolver – Secondary Name Server which this cPanel server contacts to for Domain Name Resolution, this is set incase the Primary Name Server is not responding or resolving.
Select the main network/Ethernet device – This is the name of your main ethernet device and by default it is eth0.
Click on ‘Save and Go to Step 3’ option and this will take you to the IP Address setup page.
You can skip this step and Go to Step 4 if you are not having multiple IPs. If you have multiple IPs in the server, add those IPs separated by comma in the Red coloured field you can see in the above screenshot.
Next page is the Name Server setup page.
In this page you can select the Name Server application that you want to use (eg: Bind, MyDNS) if you want this cPanel server to act as an authoritative Nameserver of the domains that you host or even hosted elsewhere.
You’ll have to set name for the Name Servers (eg: ns1.btcadsense.com, ns2.btcadsense.com). And if you are using this server as the authoritative Name Server of a domain say, example.com, you can set its Name Servers as ns1.btcadsense.com and ns2.btcadsense.com
After entering this data, click ‘Save and Go to Step 5’ and this will take you to Services configuration page.
In this page, you can specify the folowing things.
-> FTP server that you want to install. You can choose between ProFTPD and PureFTPD, default installation would be PureFTPD. If you don’t want FTP server installed in your server, you can click on ‘Disabled’ option below.
-> Mail server that you want to install. You can choose between Dovecot and Courier, default installation would be Dovecot and you can choose ‘Disabled’ if you don’t want mail server installed in the server.
-> Configure cPHulk Brute Force Protection, you can enable this function to enable protection from brute force against web services.
After choosing these options, Save and Go to Step 6.
This will take you to the Quotas page which is the last step of cPanel/WHM Setup.
You may choose ‘Use file system quotas’ if you need to calculate disk quotas of the accounts.
Click on ‘Finish Setup Wizard’ and cPael/WHM is now ready for use.