CloudFlare: cPanel plugin Installation Guide

Jithin

27 Feb 2017

In this tutorial we can check how to install CloudFlare cPanel Plugin.

CloudFlare is a commercial content delivery network which has integrated distributed denial of service(DDoS) defense mechanism. CloudFlare increases performance and security. A website that utilizes CloudFlare loads twice as fast than others. In this documentation, we are going to address how to install this plugin in cPanel and configure it.

CloudFlare Installation Instructions

Before we proceed to install CloudFlare plugin, you should get the HOST KEY from CloudFlare partners. This installation steps requires root access to the server where you need to install the CloudFlare plugin.

1) Login as root to the cPanel server using an SSH client such as Terminal or Putty:

This commands will download the plugin as a compressed file to the server. The next step is to extract the contents.

#tar -zxvf CloudFlare.tar.gz

This command extracts the contents of the file to a specific directory with a UNIQUE Id. Eg: CloudFlare-CloudFlare-CPanel-c03R3b8. Here unique id is c03R3b8.

3) Now for installation you have to make use of the Host key and company name.

#cd CloudFlare-CloudFlare-CPanel-UNIQUE ID/CloudFlare/

#./install_cf API HOST KEY mod_cf “YOUR COMPANY NAME”

eg: #./install_cf 56yt8x9s987dfy4324bnv mod_cf “InterServer Hosting”

This will start the installation. The cPanel plugin files are installed first, followed by mod_CloudFlare. Depending on your server, it will take between 15 seconds and 4 minutes.

4) At the end of the installation, you should see output like below.

“Plugin installed ok Cleaning up”

5) To check if it is installed:

#cat /usr/local/cpanel/etc/CloudFlare.json

You can see below result if the installation is successful

{

“host_key”:”32yt5a7b436tuy8974tre -”, (For security purposes, this will not be your host key.)

“host_formal_name”:”Interserver Hosting”,

“host_name”:”api.CloudFlare.com”,

“host_uri”:”/host-­gw.html”,

“user_name”:”www.CloudFlare.com”,

“user_uri”:”/api_json.html”,

“host_port”:”443”,

“host_prefix”:”CloudFlare-­resolve-­to”,

“cp_version”:”1.3.0”

}

CloudFlare Configurations

CloudFlare provides two options on how to provision CloudFlare for the users.

1) CNAME setup.

2) Full DNS setup.

CNAME setup

In this setup, the domain is pointed to the authoritative DNS itself. Only the subdomains are pointed to CloudFlare. This setup enables protection only at the subdomain levels. Your domain’s name servers will not be changed to CloudFlare nameservers.

Full DNS setup

The domain’s name server is updated to point to CloudFlare’s name servers, which means that the authoritative DNS now will be the CloudFlare’s name server. This full DNS setup enables protection at the primary domain as well as for subdomains also.

The default setup for the CloudFlare plugin is CNAME setup. For enabling full DNS setup, it can be easily configured under config.js file which is located at

/usr/local/cpanel/base/frontend/paper_lantern/CloudFlare/config.js

Also, CNAME setup cannot be disabled. The available options for how CloudFlare can be enabled are:

1) CNAME setup only.

2) Both CNAME and Full DNS setups.

Enabling the Full DNS configuration is by updating the following parameter:

“featureManagerIsFullZoneProvisioningEnabled”: false – In this condition full DNS will be disabled and all customers will have to use CNAME

“featureManagerIsFullZoneProvisioningEnabled”: true – In this setup full DNS will be enabled and customers can select either full DNS or CNAME.

How to activate CloudFlare in the cPanel interface

After the installation of CloudFlare, Users can see a CloudFlare icon in cPanel interface at the cPanel section and can configure CloudFlare from there. The users have to create a CloudFlare account first for using this plugin. Sign into CloudFlare from the cPanel interface. Once you login into CloudFlare you can configure CloudFlare as CNAME setup or full DNS setup.

Default setup is CNAME setup and can be enabled by clicking “Provision Domain with CNAME setup”. If the full DNS setup is enabled in config.js file , there will be an option for providing the full DNS setup in the plugin interface as “Provision Domain with full Zone Setup”.

If you need any further assistance please contact our support department.