Useful CloudPanel Root User Commands (CLI)

Nemesis

Active member
Joined
Mar 22, 2025
Messages
35
Points
61
Age
26
Could you provide an overview of essential CloudPanel commands I can run as the root user for managing Cloudflare, databases, sites, SSL certificates, users, and vhost templates?
 
Solution
CloudPanel offers powerful CLI commands for root users to easily manage your system. Below is a categorized summary of commonly used commands:

🔸 Cloudflare Integration


  • Update Cloudflare IPs
    (Executed daily via cron at 6 AM)clpctl cloudflare:update:ips

    (Updates /etc/nginx/cloudflare/ips for allowing traffic exclusively from Cloudflare.)



🔸 CloudPanel Security (Basic Auth)

  • Enable Basic Auth:
    Code:
    clpctl cloudpanel:enable:basic-auth --userName=john.doe --password='password123'

  • Disable Basic Auth:
    Code:
    clpctl cloudpanel:disable:basic-auth



🔸 Database Management


  • Show Master Database Credentials:...
CloudPanel offers powerful CLI commands for root users to easily manage your system. Below is a categorized summary of commonly used commands:

🔸 Cloudflare Integration


  • Update Cloudflare IPs
    (Executed daily via cron at 6 AM)clpctl cloudflare:update:ips

    (Updates /etc/nginx/cloudflare/ips for allowing traffic exclusively from Cloudflare.)



🔸 CloudPanel Security (Basic Auth)

  • Enable Basic Auth:
    Code:
    clpctl cloudpanel:enable:basic-auth --userName=john.doe --password='password123'

  • Disable Basic Auth:
    Code:
    clpctl cloudpanel:disable:basic-auth



🔸 Database Management


  • Show Master Database Credentials:
    Code:
    clpctl db:show:master-credentials

  • Add a Database:
    Code:
    clpctl db:add --domainName=www.domain.com --databaseName=my-database --databaseUserName=john --databaseUserPassword='!secretPassword!'

  • Export a Database:
    Code:
    clpctl db:export --databaseName=my-database --file=dump.sql.gz

  • Import a Database:
    Code:
    clpctl db:import --databaseName=my-database --file=dump.sql.gz



🔸 Let’s Encrypt SSL Certificates


  • Install a Let's Encrypt Certificate:
    Code:
    clpctl lets-encrypt:install:certificate --domainName=www.domain.com

  • Multiple Domain (SAN) Certificate:
    Code:
    clpctl lets-encrypt:install:certificate --domainName=www.domain.com --subjectAlternativeName=domain1.com,www.domain1.com



🔸 Site Management


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

  • Add a Static HTML Site:
    Code:
    clpctl site:add:static --domainName=www.domain.com --siteUser=john --siteUserPassword='!secretPassword!'

  • Add a PHP Site (using Vhost Template):
  • Code:
    clpctl vhost-templates:list # to list templates
    
    clpctl site:add:php --domainName=www.domain.com --phpVersion=8.4 --vhostTemplate='Generic' --siteUser=john --siteUserPassword='!secretPassword!'


  • Add a Python Site:
    Code:
    clpctl site:add:python --domainName=www.domain.com --pythonVersion=3.9 --appPort=8080 --siteUser=john --siteUserPassword='!secretPassword!'

  • Add a Reverse Proxy Site:
    Code:
    clpctl site:add:reverse-proxy --domainName=www.domain.com --reverseProxyUrl='http://127.0.0.1:8000' --siteUser=john --siteUserPassword='!secretPassword!'

  • Install a Custom SSL Certificate:
    Code:
    clpctl site:install:certificate --domainName=www.domain.com --privateKey=/path/to/private.key --certificate=/path/to/certificate.crt --certificateChain=/path/to/chain.crt

  • Delete a Site:
  • Code:
    clpctl site:delete --domainName=www.domain.com
    # or force deletion:
    clpctl site:delete --domainName=www.domain.com --force



🔸 User Management


  • Add Admin User:
    Code:
    clpctl user:add --userName='john.doe' --email='[email protected]' --firstName='John' --lastName='Doe' --password='!password!' --role='admin' --timezone='UTC' --status='1'

  • Add Site Manager User:
    Code:
    clpctl user:add --userName='jane.doe' --email='[email protected]' --firstName='Jane' --lastName='Doe' --password='!password!' --role='site-manager' --timezone='UTC' --status='1'

  • Add User for Specific Sites Only:
    Code:
    clpctl user:add --userName='user.name' --email='[email protected]' --firstName='User' --lastName='Name' --password='!password!' --role='user' --sites='domain.com,domain.io' --timezone='UTC' --status='1'

  • Delete a User:
    Code:
    clpctl user:delete --userName='john.doe'

  • List All Users:
    Code:
    clpctl user:list

  • Reset User Password:
    Code:
    clpctl user:reset:password --userName=john.doe --password='!newPassword!'

  • Disable Two-Factor Authentication (2FA):
    Code:
    clpctl user:disable:mfa --userName=john.doe



🔸 Vhost Templates


  • Import Templates from GitHub (auto-runs nightly):
    Code:
    clpctl vhost-templates:import

  • List Available Vhost Templates:
    Code:
    clpctl vhost-templates:list

  • Add a Custom Vhost Template:

  • Code:
    # From local file:clpctl vhost-template:add --name='My Application' --file=/tmp/template.tpl
    
    # From remote (e.g., gist):
    clpctl vhost-template:add --name='My Application' --file=https://gist.githubusercontent.com/your-template-url


  • Delete a Vhost Template:
    Code:
    clpctl vhost-template:delete --name='My Application'

  • View a Vhost Template:
    Code:
    clpctl vhost-template:view --name='My Application'



These commands enable efficient, secure, and flexible server management directly via CloudPanel’s CLI.
 
Solution
Back
Top