About CentOS WebPanel

CentOS WebPanel or CWP is a free and open source web hosting panel. Learn more about CentOS WebPanel on their website at http://centos-webpanel.com/.

Supported Features

CreateCancelSuspendUnsuspendManagementConfig Options
YES
YES
YES
YES
YES
NO

New API Key

As of Blesta v4.8 (CWP module v2.0) a newer, more stable API provided by CWP is being used.  This means that when you upgrade Blesta you will need to create a new API Key under CWP Settings > API Manager, since the old one will no longer work.

Management Features

This module supports the following management features within the client area:

  • Unblock IPs in the firewall


Firewall Management Removed

As of Blesta v4.8 (CWP module v2.0) firewall management is no longer accessible through Blesta.  This is because the module was updated to use a newer, more stable API provided by CWP which does not support firewall management.


Installing CentOS WebPanel

To install the CentOS WebPanel module, visit [Settings] > [Company] > [Modules] > Available, and click the "Install" button for CentOS WebPanel.

A message will be displayed, indicating that the module was successfully installed. Then click the "Add Server" button.

Enter the details for your CentOS WebPanel server.


Field NameDescription
Server LabelEnter a label for this CentOS WebPanel server, it can be anything you like.
HostnameEnter the FQDN hostname for your CentOS WebPanel server, ie "server1.domain.com".
API Key

Enter your CWP server API key, found under CWP Settings > API Manager.  Under "Api access management" you can view and add API credentials. 

Use SSL when connecting to the APICheck this option to use SSL for all API requests to your CentOS WebPanel server. This is highly recommended.
Account LimitEnter the maximum number of accounts that should be added to this CentOS WebPanel server.
Name ServersEnter the name servers that should be used for this server. These will be available to the package welcome email to the client.
NotesEnter any notes that pertain to this server for future reference.

After filling out these options, click "Add Server" to add your CentOS WebPanel server.

Server Groups

Server groups are useful for categorizing CentOS WebPanel servers. When creating a Package, a specific server, or a server group may be selected for provisioning. Blesta will automatically select a CentOS WebPanel server to provision with when a server group is chosen.

To add a server group, from the CentOS WebPanel overview at  [Settings] > [Company] > [Modules] > CentOS WebPanel, click "Add Server Group", then enter the details.

OptionDetails
Group Name

Enter the name for this server group.

Add OrderChoose how servers in this group will be selected for provisioning. Currently, first non-full server is the only add order.
Assigned ServersSelect servers under "Available Servers" and click to move them to the left column to add them to the group.
Force Server LimitsEnforces hard limits so that the count of a Server never exceeds its limit.

Creating Packages

Packages define the pricing, welcome email, module and more. Packages can be assigned to Package Groups, and added to Order Forms. To create a Package, visit [Packages] > Browse, and click the "Create Package" button.

Creating a Package consists of several sections:

Basic

The Basic section consists of the following options:

Field NameDescription
Package NameEnter the name of this Package, it will be visible wherever services are listed and on any order forms.  A separate name can be defined for each language in the system.
DescriptionEnter a Description for this Package. HTML is allowed, and descriptions appear on order forms.  A separate name can be defined for each language in the system.
Status"Active" is the default, "Inactive", and "Restricted" are also available.
Quantity AvailableIf this Package has a limited quantity available, enter the quantity, or leave it as "Unlimited".
Use renewal prices for package upgradesWhen enabled, upgrading to this package will use renewal prices if they are set. The same will apply to any configurable options that are altered in the upgrade. The regular price  will be used if this setting is disabled.
Configurable OptionsA Configurable Option Group may be selected if previously created, but this module does not support configurable options during provisioning.
ModuleSelect "CentOS WebPanel" for the module.

Module Options

The Module Options section consists of the following options, which are specific to CentOS WebPanel:

Field NameDescription
Server GroupSelect "Any" if you wish to specify a specific server, or select the Server Group to provision from. Selecting a group means that accounts will be provisioned from the group. Selecting a group is recommended.
ServerIf "Any" is selected above, select the server this package will use to provision accounts.
Package IDThe ID of the package to use in CentOS WebPanel
Maximum InodesThe account inodes limit
Maximum FilesThe maximum number of files that can host the account
Maximum ProcessThe maximum number of process that can run simultaneously

Pricing

Field NameDescription
TermEnter the term for the desired pricing option. For example, if you wish to create a 3 month pricing option, enter 3 here.
PeriodSelect the period for this pricing option. "Day", "Week", "Month", "Year", and "One time" are options. The client will be invoiced every "term period", for example every 3 months if 3 is entered for term, and Month is selected for period.
CurrencySelect the currency this pricing option is available for.
PriceEnter the price for this pricing option.
Renewal PriceIf enabled, the renewal price will be used for service renewals and possibly prorated service changes, depending on the setting above.
Setup FeeIf there is a setup fee, enter it here.
Cancellation FeeIf there is a fee to cancel early, enter it here.

Click the "Add Additional Price" to add more pricing options. It's common for people to create 1 Month, 3 Month, 6 Month, and 1 Year price options. There are many possible combinations.

Welcome Email

The "Tags" section describes tags that may be used in the welcome email. The welcome email content is inserted into the "Service Creation" email template under [Settings] > [Company] > [Emails] > Service Creation. Only details unique to this service should be entered into the welcome email section for the package.

Sample Email

This sample email could be used in the Package Welcome Email section to help you get started. Be sure to enter content for your welcome email in both the HTML and Text sections.

Your hosting account details are below!

Domain: {service.centoswebpanel_domain}
Username: {service.centoswebpanel_username}
Password: {service.centoswebpanel_password}

To log into your control panel please visit https://{module.host_name}:2083.
Please update your name servers as soon as possible to the following:

{% for name_server in module.name_servers %}
Name server: {name_server}{% endfor %}

Thank you for your business

When creating or editing a package that uses this module, the following tags will be available:

TagsDescriptionNotes
{module.host_name}The host name of the server that the service was provisioned one.g. "domain.com"
{module.name_servers}An array of available name servers for this module

Array elements must be looped over in the email template. See below for an example.

{package.type}The package meta typee.g. "standard", "user", "reseller", etc.
{package.package}The package meta package namee.g. "Bronze"
{package.acl}The package meta access control list
{service.centoswebpanel_domain}The service field for the domain of the server created by CentOS WebPanel
{service.centoswebpanel_username}The service field for the CentOS WebPanel account username
{service.centoswebpanel_password}The service field for the CentOS WebPanel account password

CentOS Web Panel API

The API for CWP listens on https port 2031

CentOS Web Panel may require additional steps in order to allow access via the API from your Blesta installation. From https://www.blesta.com/forums/index.php?/topic/12631-how-to-configure-api-and-packages-for-centos-web-panel/ you may need to do the following:

  1. Log into Centos Web Panel as Root
  2. Open file manager and navigate to /usr/local/cwp/.conf/
  3. In the above directory create 2 new files (they most likely do not exist)
    1. api_key.conf (open this file and copy and paste just the API key created in CWP into this file then save it)
    2. api_allowed.conf (open this file and paste just the IP adress of the webserver where Blesta is installed...if blesta has its own IP address then i would imagine one should use that ip address)

Common Errors

  • Q: When creating a service I get the error "An internal error occurred, or the server did not respond to the request." but the account is created on my CWP server
    • A: Make sure you provided a correct and valid Package ID on the Package Module tab. CWP returns an unusual response if this Package ID is not correct.
  • No labels