Control Panels

How to Install CloudPanel on Ubuntu and Debian (Setup, clpctl Commands, Security)

CloudPanel is a lightweight and efficient control panel designed for modern web hosting. This guide provides step-by-step instructions for installing CloudPanel on AlmaLinux and Debian servers. Learn how to enhance your UnderHost hosting experience with this powerful management tool.

Short answer: Start from a fresh Ubuntu 22.04 or 24.04, or Debian 12 or 13 server with at least 2 GB of RAM. Update it, then copy the install command from CloudPanel’s documentation. It downloads install.sh, checks its SHA-256 checksum and runs it with the database engine you choose, for example DB_ENGINE=MYSQL_8.4. Open https://your-server-ip:8443 straight away to create the admin user, then limit port 8443 to your own IP address.

What CloudPanel is

CloudPanel is a free control panel built around Nginx and PHP-FPM. It manages PHP, Node.js, Python, static and reverse-proxy sites, databases, Let’s Encrypt certificates, cron jobs, backups and site users from a web interface and from its command-line tool, clpctl. It does not include email hosting. It suits developers and agencies who host their own sites on a VPS.

Requirements

Item Minimum
Operating system Ubuntu 22.04, 24.04 or 26.04, or Debian 12 or 13, on x86 or ARM64
CPU 1 core
Memory 2 GB RAM
Disk 10 GB
Server state A fresh install, with no web server, database server or other control panel

Check CloudPanel’s requirements page before you install, because supported releases change.

Step 1: connect and update the server

ssh root@your-server-ip

apt update && apt -y upgrade && apt -y install curl wget sudo

Step 2: run the installer

The install command checks the installer’s SHA-256 checksum before it runs, so a changed or damaged file is rejected. The checksum changes with each installer release, so always copy the full command from CloudPanel’s documentation. It has this form:

curl -sS https://installer.cloudpanel.io/ce/v2/install.sh -o install.sh; \
echo "CHECKSUM_FROM_THE_DOCS install.sh" | \
sha256sum -c && sudo DB_ENGINE=MYSQL_8.4 bash install.sh

If the checksum line reports FAILED, stop and copy the current command again.

Step 3: choose the database engine

Set DB_ENGINE in the install command. The documentation lists which engines are offered for each operating system. Typical choices are:

DB_ENGINE value Database
MYSQL_8.4 MySQL 8.4 LTS
MYSQL_8.0 MySQL 8.0
MARIADB_11.4 MariaDB 11.4 LTS
MARIADB_10.11 MariaDB 10.11 LTS

Pick a long-term support release that your applications support. Changing the database engine later means moving every database.

Step 4: create the admin user and lock down the panel

  1. Open https://your-server-ip:8443. The browser warns about a self-signed certificate; continue for now.
  2. Create the admin user at once. Until you do, anyone who finds the address could claim the panel.
  3. Turn on two-factor authentication for the admin user.
  4. Restrict port 8443 to your own IP address in CloudPanel’s firewall or your server firewall.

If you do not have a fixed IP address, add basic authentication in front of the panel:

clpctl cloudpanel:enable:basic-auth --userName=john.doe --password='a-long-password'

Useful clpctl commands

Run these as root over SSH.

# Add a PHP site (list templates with: clpctl vhost-templates:list)
clpctl site:add:php --domainName=www.example.com --phpVersion=8.4 --vhostTemplate='Generic' --siteUser=john --siteUserPassword='!secretPassword!'

# Add a Node.js site
clpctl site:add:nodejs --domainName=www.example.com --nodejsVersion=22 --appPort=3000 --siteUser=john --siteUserPassword='!secretPassword!'

# Add a database
clpctl db:add --domainName=www.example.com --databaseName=my-database --databaseUserName=john --databaseUserPassword='!secretPassword!'

# Install a Let's Encrypt certificate (www.example.com also covers example.com)
clpctl lets-encrypt:install:certificate --domainName=www.example.com

# Reset a CloudPanel user's password
clpctl user:reset:password --userName=john.doe --password='!newPassword!'

As a site user, reset file permissions inside the site folder with clpctl system:permissions:reset --directories=770 --files=660 --path=.

First tasks after installing

  • ✓ Point your domain’s DNS to the server, then add the site and its Let’s Encrypt certificate.
  • ✓ Set up backups in CloudPanel and copy them to remote storage, not only the same server.
  • ✓ Keep the server updated with apt update && apt upgrade, and update PHP when security releases come out.
  • ✓ If the site uses Cloudflare, run clpctl cloudflare:update:ips so CloudPanel trusts Cloudflare’s IP ranges.

When a critical PHP release comes out, follow our PHP security update guide, which includes CloudPanel steps.

Email on a CloudPanel server

CloudPanel does not host email. Use an external email service, or run a separate mail system such as mailcow on its own server. mailcow needs several gigabytes of RAM and its own ports, so running it next to CloudPanel on a small VPS is not recommended.

Troubleshooting

Problem Likely cause Fix
sha256sum reports FAILED The installer changed since the command was copied Copy the current command from the documentation.
The installer stops early Unsupported release, or software already installed Use a fresh, supported Ubuntu or Debian server.
Port 8443 does not open A firewall blocks it Allow port 8443 from your IP address in the server or provider firewall.
Let’s Encrypt fails DNS does not point to the server yet Check the A records, wait for DNS to update, and try again.

Comparing panels? See our free control panels guide and our aaPanel guide.

Need help with this?

Want CloudPanel on a fast Cloud VPS? Order a server and install it in minutes, or let our team set it up for you.

See Cloud VPS plansContact @CustomerPanel

Frequently asked questions

Is CloudPanel free?

Yes. CloudPanel Community Edition is free to use.

Which operating systems does CloudPanel support?

Current releases of Ubuntu (22.04, 24.04 and 26.04) and Debian (12 and 13), on x86 and ARM64. Check the requirements page for the latest list.

What is the CloudPanel command-line tool called?

clpctl. Use it to add sites, databases, users and certificates over SSH.

Does CloudPanel include email hosting?

No. Use an external email service, or a separate mail server.

Can I install CloudPanel on a server with other software?

No. Install it on a fresh server, then move your sites to it.


Sources