Installing Control Web Panel on CentOS 8
Hi, I hope you are doing well. Today we’ññ analyze a robust and free option to use as control panel for our websites in case we have a Dedicated Server or Virtual Private Server (VPS).
Control Web Panel, formerly Centos Web Panel, is an alternative to WHM y cPanel o Plesk, which are themost used commercial versions of control panels. The free version has users, domains, user files firewall and email management capabilities, which will make our administration easier.
Control Web panel can be installed in Red Hat Linux based distros, such as CentOS, CloudLinux and of course Red Hat Linux.
Previously the free version allowed to use all the web server configurations, be it Apache, Apache + Nginx, Varnish + Nginx or Nginx + Varnish + Apache. Currently we can only use Apache as our web server in the free version.
For managing email we have Dovecot + Postfix at our disposal, with addons such as ClamAV to filter spam and virus infected emails and as Webmail it uses Roundcube, which is an excellent option to check emails without the need for an email client app.
Control Web Panel has a user panel, its equivalent to cPanel, with a very pleasant and modern user interface.
Other remarkable features include a straightforward management of our domains and DNS registries, and support for darabase engines like MariaDB, PostgreSQL, MongoDB and the option to manage our databases using our browser with PHPmyAdmin for MySQL and phpPgAdmin for PostgreSQL.
As I had previously mentioned, other features included are a file explorer, the option to verify the system event logs, server monitoring, the option to define packages to control the resources used by our users, migration from cPanel to Control Web Panel, We can also schedule backups and we have centralized management for our security configuration.
The visual guide we’ll follow can be found in the Control Web Panel’s download website (https://www.control-webpanel.com/installation-instructions).
These are very simple steps and we will only need a server with a minimal CentOS installation, for demonstration purposes we’ll be using CentOS 8.
It should be noted that once Control Web Panel is installed it cannot be uninstalled and it only supports public (static) IP addresses as any other control panel.
We’ll start by configuring the hostname using the terminal, in this case we’ll demonstrate using the subdomain tests.waltermairena.net, which would be poiting to our CWP server.
# hostname tests.waltermairena.net
Then we’ll install wget to be able to download the installer, either using yum or dnf.
# yum -y install wget
# dnf install wget -y
We’ll proceed to enable the epel repository for CentOS 8 to obtain the latest versions of the programs that our server will use.
# yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
We’ll perform an update of the packages installed in our server, usually here some dependencies of the updates will be installed.
yum -y update
Once our server has completed the updates we’ll proceed to reboot it.
# reboot
Now we’ll position ourselves in the /usr/local/src folder to download the Control Web Panel installer.
# cd /usr/local/src
We now download the Control Web Panel installer.
# wget http://centos-webpanel.com/cwp-el8-latest
And finally we run the installer.
# sh cwp-el8-latest
Once the installer is done it’s time to reboot the server and we’ll be ready.
# reboot
If we access our server from a web browser it will show a template page, which still contains the old name CentOS Web Panel, at least in the url.
To access the control panel we add the :2030 port at the end of the URL, and then we login using the root user credentials.
Finally we’ll see the our control panel’s user interface, its equivalent to WHM and where we can control the resource usage for our server.
We are also shown the version details for the control panel alongside the web server’s components such as Apache, PHP, MySQL, FTP, the ports in use for remote access and MySQL also the web server combination being used, in our case that can only be Apache. We can also verify the details for the processor, Linux’s kernel version, the distro we are using, online time and server time.
In order to see the options to be used for web server, we can go to WebServer Settings in the main menu, currently the free version of Control Web Panel only allows us to use the simplest version, as is Apache, for high demand websites we could consider purchasing a license because the web server combination of Nginx, Varnish and Apache is very fast and stable,
The next step would be to create a hosting package, we can find this option under the main menu, under Packages.
Packages ultimately allow us to define the reasonable use of server resources from our users such as disk space, monthly bandwidth, FTP user count, domains, subdomains, databases, email addresses, and processes used by Apache, number of opened files in any given time, etc.
Let’s create a new account to verify the client area. We define domain, username, password, password, email address, the desired hosting package, language, limits on number of opened files and processes at any given time, etc.
To access the client area we only need to add the :2082 port at the end of the URL. Here we can see the account summary and the resources assigned to it.
The PHP version used is inherited from the version defined in the main control panel and can only be switched with a Control Web Panel license.
We have options to add domains and subdomains, in case our DNS servers point directly to our server, and we also have option to generate Let’s Encrypt SSL certificates, which are valid for 3 months and are autorenewable.
We are also given options to change some of the most common PHP configurations as memory, execution time and upload limits.
As we could corroborate, Control Web Panel is an excellent free alternative to WHM/cPanel to manage our dedicated servers and, despite having only Apache available as web server, it’s more than enough for most cases, unless we operate very popular websites, in which case we’ll still have the option to purchase the license which costs $11.99 anually ($1.49 monthly) or $12.99 monthly if we also need official support.