9.0.0 8.3.0 8.2.0-8.2.1 8.1.0-8.1.1 8.0.0-8.0.3 7.4.0-7.4.6 7.3.0-7.3.2 7.2.0-7.2.1 7.1.0-7.1.2 7.0.0-7.0.2 6.1.0-6.1.2 View All PV Cloud PV Local Installs
Auto Light Dark
Auto Light Dark
9.0.0 8.3.0 8.2.0-8.2.1 8.1.0-8.1.1 8.0.0-8.0.3 7.4.0-7.4.6 7.3.0-7.3.2 7.2.0-7.2.1 7.1.0-7.1.2 7.0.0-7.0.2 6.1.0-6.1.2 View All PV Cloud PV Local Installs

ProVision Local Installation For Debian 8

Before You Begin

Ensure that System Requirements have been met prior to proceeding with the Installation Guide.


Install Requirements

1) Upgrade your current packages

Upgrade packages

Upgrade your current packages.

PowerShell
   apt-get update
   apt-get upgrade


2) Install Required Packages

PHP

PHP

Installations of ProVision 7.x and newer require  PHP 7.1 (and related extensions). ProVision 7.x installations using Debian versions prior to Stretch 9 require updating to PHP 7.1. Debian Wheezy comes with PHP 5.4 by default. You can either add a repository which provides PHP 7.1 or install PHP manually. 

For this example, we are using Debian/Ubuntu installation instructions originally from:

https://ayesh.me/Ubuntu-PHP-7.1 (page no longer available) using  Ondřej Surý's PPA.

Another reference containing instructions for Debian 7, 8, CentOS / RHEL, MacOS X, and Windows is available here: https://www.colinodell.com/blog/201612/installing-php-71

Depending on what repository you choose, installation instructions and syntax may differ.

Debian 8 Install Package

Bash
sudo apt install apt-transport-https lsb-release ca-certificates 
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg 
sudo sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list' 
sudo apt update

And update the packages list:

Bash
   apt-get update


Install Apache2/PHP7/MySQL and development tools for pecl:

PHP 7.x / Apache2 / extensions:

  • httpd 

  • php7.1w 

  • php7.1w-opcache 

  • php7.1w-mysqlnd 

  • php7.1w-pdo 

  • php7.1w-ldap 

  • php7.1w-pecl-memcache 

  • php7.1w-bcmath 

  • php7.1w-devel 

  • php7.1w-pear 

  • php7.1w-cli

  • php7.1-imap

Development tools for pecl / additional system packages:

  • curl 

  • openssl 

  • memcached 

  • mod_ssl

Bash
   apt-get install apache2 libapache2-mod-php7.1 php7.1 php7.1-cgi php7.1-cli php7.1-gd php7.1-curl php7.1-ldap php7.1-mysqlnd php7.1-ssh2 php-pear php7.1-dev php7.1-imap curl openssl memcached php7.1-memcache

 While installing you will be asked to set the MySQL root password.

MySQL

Install MySQL

Install MySQL 5.7 to use a local database:

Bash
apt-get install mysql-server

You will be asked to enter a root password for the mysql server.

DNS and Additional Utilities

DNS and Additional Utilities

Install the DNS and other remaining utilities:

  • curl 

  • openssl 

  • memcached 

  • php7.1-memcache 

  • nmap 

  • dnsutils 

  • bind9utils 

  • expect

apt-get install curl openssl memcached php7.1-memcache nmap dnsutils bind9utils expect

 

3) Configure the requirements:

SSL

SSL

Enable the necessary apache modules with the following command:

Bash
a2enmod php7 ssl rewrite

In order to create self-signed certificates and to work properly, the hostname must be resolved properly:

Open the hosts file for editing: 

Bash
    vi /etc/hosts

Add a record for your hostname

    yourhostname X.X.X.X

Create self-signed certificate:

Bash
    make-ssl-cert generate-default-snakeoil --force-overwrite

Apache

Apache

mod rewrite REQUIRED

Please note that mod_rewrite is required! If it is not enabled in Apache, key elements will not work as expected.

Enable the default vhost for apache:

Bash
    a2ensite default-ssl

Allow overwrites in the apache vhosts:

Bash
    sed -i 's/AllowOverride None/AllowOverride All/g' /etc/apache2/sites-available/default* 

6. Reload apache:

Bash
    service apache2 reload

MySQL

MySQL

Set the MySQL Configuration:

Bash
    mysql -p -e "SET GLOBAL sql_mode='NO_ENGINE_SUBSTITUTION';SET SESSION sql_mode='NO_ENGINE_SUBSTITUTION';"

then enter the MySQL root password when prompted.

MySQL Packet Size Configuration

 We recommend setting the max_allowed_packet setting in the MySQL configuration file to 128MB (or similar) to account for the typical dataset size handled in ProVision.

 

 

4) Optional configurations:

Radius (Optional)

This section only needs to be followed if the customer will be using Radius for authentication.

If you are going to use radius authentication, click here.

Install radius module:

Debian 7:

Bash
    pecl install radius

Debian 8:

Bash
    apt-get install php7-radius


Create module loading configuration:

(shown using the vi editor, though you may use the editor of your choice)

    vi /etc/php5/mods-available/radius.ini

  Add the following lines to radius.ini:

    ; configuration for php radius module
    ; priority=20
    extension=radius.so

  To enable the radius module, type the following command:

Bash
    php7enmod radius

 


5) Install ProVision Software:

Install ProVision:
  1. Remove the current contents in the ProVision web folder (currently the www root) and after extract the archive contents (where 7.x.x is the version number for the ProVision, and php7.x is the required php version build) :

Bash
 	tar -xf productionBuild-7.x.x-php7.x.tar -C /var/www/
  1. Change the permissions to be the web user permissions

Bash
chown -R www-data.www-data /var/www
  1. Go to http://﹤web root﹥/install/configTest.php.  Follow the provided instructions, correcting any configuration errors if they occur. Once all steps are completed, you are ready to use your ProVision instance!