How To Install Observium on Ubuntu 16.04 LTS

Install Observium on Ubuntu 16

Observium is a Network Management and Monitoring System that collects data from using SNMP and allows you to monitor all of the networks devices via an easy to use interface. It is PHP-based and uses a MySQL database to store data.

This article assumes you have at least basic knowledge of linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo’ to the commands to get root privileges. I will show you through the step by step installation Conky system on a Ubuntu 16.04 (Xenial Xerus) server.

Install Observium on Ubuntu 16.04 LTS

Step 1. First make sure that all your system packages are up-to-date by running these following apt-get commands in the terminal.

sudo apt-get update
sudo apt-get upgrade

Step 2. Install LAMP (Linux, Apache, MariaDB, PHP) server.

A Ubuntu 16.04 LAMP server is required. If you do not have LAMP installed, you can follow our guide here. Also install all required PHP modules:

apt-get install php7.0-mysql php7.0-curl php7.0-json php7.0-cgi php7.0 libapache2-mod-php7.0 php7.0-mcrypt php7.0-xmlrpc php7.0-gd

Step 3. Installing Observium.

First, Go to Observium’s download page and download the latest stable version of Observium:

cd /opt
wget http://www.observium.org/observium-community-latest.tar.gz

Unpack the Observium archive to the document root directory on your server:

tar zxvf observium-community-latest.tar.gz

Step 4. Configuring MariaDB for Observium.

By default, MariaDB is not hardened. You can secure MariaDB using the mysql_secure_installation script. you should read and below each steps carefully which will set root password, remove anonymous users, disallow remote root login, and remove the test database and access to secure MariaDB:

mysql_secure_installation

Configure it like this:

- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y

Next we will need to log in to the MariaDB console and create a database for the Observium. Run the following command:

mysql -u root -p

This will prompt you for a password, so enter your MariaDB root password and hit Enter. Once you are logged in to your database server you need to create a database for Observium installation:

CREATE DATABASE observium DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
GRANT ALL PRIVILEGES ON observium.* TO 'observium'@'localhost' IDENTIFIED BY 'dbpassword';
flush privileges;
exit

Next, Copy the default configuration file ‘config.php.default‘ to ‘config.php‘ and fill out the database config options:

cd observium
cp config.php.default config.php

Changes the database configuration parameters with the ones created previously:

nano config.php

After you edit the file and modify the database parameters, the section should look like this:

// Database config --- This MUST be configured
$config['db_extension'] = 'mysqli';
$config['db_host'] = 'localhost';
$config['db_user'] = 'observium';
$config['db_pass'] = 'dbpassword';
$config['db_name'] = 'observium';

Give Apache user www-data ownership of the Observium web files:

chown -R www-data:www-data /opt/observium/html/

Run this script to Setup the MySQL database and insert the default schema:

./discovery.php -u

Create the directory to store RRDs in and set the proper ownership:

mkdir rrd
chown www-data:www-data rrd

Step 5. Configuring Apache web server for Observium.

Now we have to create the virtual host configuration for Observium. You can either add a new virtual host or alter the default one:

nano /etc/apache2/sites-available/000-default.conf

Add the following lines:

<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /opt/observium/html
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /opt/observium/html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
ErrorLog  ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog  ${APACHE_LOG_DIR}/access.log combined
ServerSignature On
</VirtualHost>

Next, you need to enable rewrite functionality for your Apache server:

a2enmod rewrite

Enable the PHP mcrypt module:

phpenmod mcrypt

Now, we can restart Apache web server so that the changes take place:

systemctl restart apache2.service

Next, enter the observium directory:

cd /opt/observium

Add a first user with the use level of 10 for admin. The command sintax is below:

./adduser.php <username> <password> <level>

We are using the following:

./adduser.php wpcademy random_password 10

Step 6. Accessing Observium.

Observium will be available on HTTP port 80 by default. Open your favorite browser and navigate to http://yourdomain.com/ or http://server-ip. If you are using a firewall, please open port 80 to enable access to the control panel.

Observium-login-page

Congratulation’s! You have successfully installed Observium. Thanks for using this tutorial for installing latest stable version of Observium on Ubuntu 16.04 LTS (Xenial Xerus) system. For additional help or useful information, we recommend you to check the official Observium web site.

How To Install RainLoop Webmail on Ubuntu 18.04 LTS

Install RainLoop Webmail on Ubuntu 18

RainLoop is a fast and lightweight e-mail client software which supports protocols such as IMAP, SSL, SMTP, etc. RainLoop allows the user to login with multiple e-mail accounts even with different browser tabs. It can also be integrated with Google, Facebook, Twitter, Dropbox, etc.

This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo’ to the commands to get root privileges. I will show you through the step by step installation RainLoop Webmail on an Ubuntu 18.04 bionic beaver.

Install RainLoop Webmail on Ubuntu 18.04 Bionic Beaver

Step 1. First, make sure that all your system packages are up-to-date by running these following apt-get commands in the terminal.

sudo apt update
sudo apt upgrade

Step 2. Install LAMP (Linux, Apache, MariaDB and PHP) server.

An Ubuntu 18.04 LAMP server is required. If you do not have LAMP installed, you can follow our guide here. Also install all required PHP modules:

apt-get install php7.2 libapache2-mod-php7.2 php7.2-common php7.2-mbstring php7.2-xmlrpc php7.2-soap php7.2-gd php7.2-xml php7.2-intl php7.2-mysql php7.2-cli php7.2-zip php7.2-curl

Step 3. Installing RainLoop Webmail on Ubuntu.

For the purposes of this tutorial, we will install the free and open source community edition. Now Download a Rainloop Webmail package from the terminal using wget command:

wget http://www.rainloop.net/repository/webmail/rainloop-community-latest.zip

Next, let’s create a new directory for our RainLoop webmail installation:

sudo mkdir /var/www/rainloop

To extract the files into this new directory, run the following command:

unzip rainloop-community-latest.zip -d /var/www/rainloop

We will need to change some folders permissions:

cd /var/www/rainloop
find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
chown -R www-data:www-data .

Step 4. Configuring Apache web server for RainLoop Webmail.

Create a new virtual host directive in Apache. For example, create a new Apache configuration file named ‘rainloop.conf’ on your virtual server:

touch /etc/apache2/sites-available/rainloop.conf
ln -s /etc/apache2/sites-available/rainloop.conf /etc/apache2/sites-enabled/rainloop.conf
nano /etc/apache2/sites-available/rainloop.conf

Add the following lines:

ServerName webmail.mydomain.com
DocumentRoot "/var/www/rainloop/"

ErrorLog "/var/log/apache2/rainloop_error_log"
TransferLog "/var/log/apache2/rainloop_access_log"

Options +Indexes +FollowSymLinks +ExecCGI
AllowOverride All
Order deny,allow
Allow from all
Require all granted

Options -Indexes
Deny from all

Save and close the file. Restart the Apache service for the changes to take effect:

sudo a2ensite vtiger.conf
sudo a2enmod rewrite
sudo systemctl restart apache2

Step 5. Accessing RainLoop Webmail.

RainLoop Webmail will be available on HTTP port 80 by default. Open your favorite browser and navigate to http://webmail.mydomain.com/?admin and complete the required the steps to finish the installation. If you are using a firewall, please open port 80 to enable access to the control panel.

The default admin login credentials are:

Username: admin
Password: 12345

Congratulation’s! You have successfully installed RainLoop. Thanks for using this tutorial for installing RainLoop Webmail on your Ubuntu 18.04 system. For additional help or useful information, we recommend you to check the official RainLoop website.

How To Install Vtiger CRM on Ubuntu 18.04 LTS

Install Vtiger CRM on Ubuntu 18

Vtiger CRM is a cloud-based Customer Relationship Management (CRM) platform that aids interactions between the company and its customers. It provides an intuitive customer experience and delivers outstanding performance for marketing, sales, and support teams which in return provides better customer retention for the company.

This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo’ to the commands to get root privileges. I will show you through the step by step installation Vtiger on an Ubuntu 18.04 bionic beaver.

Install Vtiger CRM on Ubuntu 18.04 LTS Bionic Beaver

Step 1. First, make sure that all your system packages are up-to-date by running these following apt-get commands in the terminal.

sudo apt update
sudo apt upgrade

Step 2. Install LAMP (Linux, Apache, MariaDB and PHP) server.

An Ubuntu 18.04 LAMP server is required. If you do not have LAMP installed, you can follow our guide here. Also install all required PHP modules:

apt-get install php7.2 libapache2-mod-php7.2 php7.2-common php7.2-mbstring php7.2-xmlrpc php7.2-soap php7.2-gd php7.2-xml php7.2-intl php7.2-mysql php7.2-cli php7.2-zip php7.2-curl

Step 3. Installing vTiger CRM on Ubuntu.

Now download the latest stable version of Vtiger CRM, At the moment of writing this article it is version 7.1.0:

cd /var/www/
wget https://cfhcable.dl.sourceforge.net/project/vtigercrm/vtiger%20CRM%207.1.0/Core%20Product/vtigercrm7.1.0.tar.gz

After the download has been successfully completed, we can then extract the GZ file using the following command:

tar -xvzf vtigercrm7.1.0.tar.gz

We will need to change some folders permissions:

chown -R www-data:www-data /var/www/vtigercrm/
chmod 755 /var/www/vtigercrm/

Step 4. Configuring MariaDB.

By default, MariaDB is not hardened. You can secure MySQL using the mysql_secure_installation script. you should read and below each steps carefully which will set root password, remove anonymous users, disallow remote root login, and remove the test database and access to secure MariaDB.

mysql_secure_installation

Next we will need to log in to the MariaDB console and create a database for the vTiger. Run the following command:

mysql -u root -p

This will prompt you for a password, so enter your MariaDB root password and hit Enter. Once you are logged in to your database server you need to create a database for vTiger installation:

MariaDB > CREATE DATABASE vtiger;
MariaDB > CREATE USER 'vtiger_user'@'localhost' IDENTIFIED BY 'PaSsWoRd';
MariaDB > GRANT ALL PRIVILEGES ON `vtiger`.* TO 'vtiger_user'@'localhost';
MariaDB > FLUSH PRIVILEGES;
MariaDB > \q

Now, let’s tweak some of your PHP settings so you can later complete the VTiger installation:

nano /etc/php/7.2/apache2/php.ini

Modify the following lines:

max_execution_time = 120
max_input_vars = 2000
memory_limit = 256M
post_max_size = 32M
upload_max_filesize = 64M
file_uploads = On
allow_url_fopen = On
display_errors = On
short_open_tags = Off
log_errors = Off
error_reporting = E_WARNING & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT

Save and close the file. Restart the apache service for the changes to take effects:

systemctl restart apache2.service

Step 5. Configuring Apache web server for vTiger.

Create a new virtual host directive in Apache. For example, create a new Apache configuration file named ‘vtiger.conf’ on your virtual server:

touch /etc/apache2/sites-available/vtiger.conf
ln -s /etc/apache2/sites-available/vtiger.conf /etc/apache2/sites-enabled/vtiger.conf
nano /etc/apache2/sites-available/vtiger.conf

Add the following lines:

ServerAdmin [email protected]
DocumentRoot /var/www/vtigercrm
ServerName your-domain.com
ServerAlias www.your-domain.com

Options FollowSymLinks
AllowOverride All

ErrorLog /var/log/apache2/your-domain.com-error_log
CustomLog /var/log/apache2/your-domain.com-access_log common

Save and close the file. Restart the Apache service for the changes to take effect:

sudo a2ensite vtiger.conf
sudo a2enmod rewrite
sudo phpenmod mbstring
sudo a2enmod headers
sudo systemctl restart apache2

Step 5. Accessing Vtiger CRM.

Vtiger CRM will be available on HTTP port 80 by default. Open your favorite browser and navigate to http://yourdomain.com/vtigercrm or http://server-ip/vtigercrm and complete the required the steps to finish the installation. If you are using a firewall, please open port 80 to enable access to the control panel.

Congratulation’s! You have successfully installed vTiger. Thanks for using this tutorial for installing vTiger Customer Relationship Management on your Ubuntu 18.04 system. For additional help or useful information, we recommend you to check the official vTiger website.

How To Install Apache CouchDB on Ubuntu 18.04 LTS

Install Apache CouchDB on Ubuntu 18

CouchDB is an open source project and NoSQL, document oriented database server. It has a document-oriented NoSQL database architecture and is implemented in the concurrency-oriented language Erlang; it uses JSON to store data, JavaScript as its query language using MapReduce, and HTTP for an API.

This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo’ to the commands to get root privileges. I will show you through the step by step installation Apache CouchDB on a Ubuntu 18.04 (Bionic Beaver) server.

Install Apache CouchDB on Ubuntu 18.04 LTS Bionic Beaver

Step 1. First, make sure that all your system packages are up-to-date by running these following apt commands in the terminal.

sudo apt update
sudo apt upgrade

Step 2. Installing Apache CouchDB on Ubuntu.

First, Add the official CouchDB PPA repository using add-apt-repository command:

curl -L https://couchdb.apache.org/repo/bintray-pubkey.asc | sudo apt-key add -
echo "deb https://apache.bintray.com/couchdb-deb bionic main" | sudo tee -a /etc/apt/sources.list

Now that the repository is enabled update the packages list and install CouchDB:

sudo apt update
sudo apt install couchdb

During hte installation, you should see messages to select some option:

┌──────────────────────────┤ Configuring couchdb ├──────────────────────────┐
│ │
│ Please select the CouchDB server configuration type that best meets your
│ needs.
│
│ For single-server configurations, select standalone mode. This will set
│ up CouchDB to run as a single server.
│
│ For clustered configuration, select clustered mode. This will prompt for
│ additional parameters required to configure CouchDB in a clustered
│ configuration.
│
│ If you prefer to configure CouchDB yourself, select none. You will then
│ need to edit /opt/couchdb/etc/vm.args and /opt/couchdb/etc/local.d/*.ini
│ yourself. Be aware that this will bypass *all* configuration steps,
│ including setup of a CouchDB admin user - leaving CouchDB in "admin
│
│
│ │
└───────────────────────────────────────────────────────────────────────────┘

Next, select standalone option and continue:

┌─────────┤ Configuring couchdb ├─────────┐
│ General type of CouchDB configuration: │
│ │
│ standalone │
│ clustered │
│ none │
│ │
│ │
│ │
│ │
└─────────────────────────────────────────┘

Next, type in the interface IP address and continue:

┌─────────────────────────┤ Configuring couchdb ├──────────────────────────┐
│ A CouchDB node must bind to a specific network interface. This is done │
│ via IP address. Only a single address is supported at this time. │
│ │
│ The special value '0.0.0.0' binds CouchDB to all network interfaces. │
│ │
│ The default is 127.0.0.1 (loopback) for standalone nodes, and 0.0.0.0 │
│ (all interfaces) for clustered nodes. In clustered mode, it is not │
│ allowed to bind to 127.0.0.1. │
│ │
│ CouchDB interface bind address: │
│ │
│ 127.0.0.1_______________________________________________________________ │
│ │
│ │
│ │
└──────────────────────────────────────────────────────────────────────────┘

Once the installation is finished. Start CouchDB and enable it to start on boot time using the following command:

sudo systemctl start couchdb
sudo systemctl enable couchdb

Step 3. Accessing Apache CouchDB.

Apache CouchDB will be available on HTTP port 80 by default. Open your favorite browser and navigate to http://your_IP:5984/_utils/ and complete the required the steps to finish the installation.

Congratulation’s! You have successfully installed CouchDB. Thanks for using this tutorial for installing Apache CouchDB on Ubuntu 18.04 systems. For additional help or useful information, we recommend you to check the official CouchDB website.

How To Install LAMP Stack on Ubuntu 16.04

Install LAMP Stack on Ubuntu 16

LAMP represents a full featured stack containing the most popular web server known as Apache, the most popular database server MySQL and the most popular open-source web programming language known as PHP. All components are free and open-source software, and the combination is suitable for building dynamic web pages.

This article assumes you have at least basic knowledge of linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple. I will show you through the step by step installation LAMP (Linux Apache, MySQL and PHP) on Ubuntu 16.04 server.

Install LAMP Stack on Ubuntu 16.04

Step 1. First make sure that all your system packages are up-to-date by running these following apt-get commands in the terminal.

apt-get update
apt-get upgrade

Step 2. Installing Apache on Ubuntu 16.04.

We will be installing Apache with apt-get, which is the default package manager for ubuntu. Your also required to install libapache2-mod-php module to work PHP with Apache2:

apt-get install apache2 libapache2-mod-php

After installing apache services on your system, start all required services:

systemctl enable apache2
systemctl start apache2
systemctl status apache2

You can verify that Apache is really running by opening your favorite web browser and entering the URL http://your-server’s-address, if it is installed, then you will see this:
apache2-ubuntu-default-page
Step 3. Installing MySQL on Ubuntu 16.04

Now that we have our web server up and running, it is time to install MySQL. MySQL is a database management system. Basically, it will organize and provide access to databases where our site can store information:

apt-get install mysql-server php7.0-mysql

Once complete, you can verify MySQL is installed by running the below command:

systemctl status mysql
systemctl start mysql

By default, MySQL is not hardened. You can secure MySQL using the mysql_secure_installation script. you should read and below each steps carefully which will set root password, remove anonymous users, disallow remote root login, and remove the test database and access to secure MySQL:

mysql_secure_installation

Configure it like this:

- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y

To log into MySQL, use the following command (note that it’s the same command you would use to log into a MySQL database):

mysql -u root -p

Step 4. Installing PHP 7 on Ubuntu 16.04

PHP 7.0 is now the default PHP package shipping in Ubuntu LTS 16.04 (Xenial Xerus), Now install PHP 7 with the following command:

sudo apt-get install php7.0 php7.0-mysql php7.0-curl php7.0-gd php7.0-json php7.0-opcache php7.0-xml mcrypt php7.0-mcrypt

If you like to search all the available PHP 7 modules you can use to command:

sudo apt-cache search php7-*

Your server should restart Apache automatically after the installation of both MySQL and PHP. If it doesn’t, execute this command:

sudo systemctl restart apache2
sudo systemctl restart mysql

To test PHP, create a test file named info.php with he content below. Save the file, then browse to it to see if PHP is working:

nano /var/www/html/info.php
<!--?php phpinfo(); ?-->

Try to access it at http://your_server_ip/info.php . If the PHP info page is rendered in your browser then everything looks good and you are ready to proceed further.
LAMP-ubuntu-16.04
Congratulation’s! You have successfully installed LAMP stack. Thanks for using this tutorial for installing LAMP (LinuxApache, MySQL andPHP) in Ubuntu 16.04 system. For additional help or useful information, we recommend you to check the official Apache, MySQL and PHP web site.

How To Install 4images Gallery on Ubuntu 16.04

Install 4images Gallery on Ubuntu 16

4images is a photo gallery where you can upload and manage your artwork, photos and other images. This is perfect for displaying your photo album, art gallery, or even distributing desktop wallpaper for your visitors to download. 4images Gallery is free for private and non-commercial use.

This article assumes you have at least basic knowledge of linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo’ to the commands to get root privileges. I will show you through the step by step installation 4images Gallery on a Ubuntu 16.04 server.

Install 4images Gallery on Ubuntu 16.04

Step 1. First make sure that all your system packages are up-to-date by running these following apt-get commands in the terminal.

sudo apt-get update
sudo apt-get upgrade

Step 2. Install LAMP (Linux, Apache, MariaDB, PHP) server.

A Ubuntu 16.04 LAMP server is required. If you do not have LAMP installed, you can follow our guide here. Also install all required PHP modules:

sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt php5-mysql php5-gd php5-curl

Step 3. Installng 4images Gallery.

First thing to do is to go to 4images Gallery’s download page and download the latest stable version of 4images Gallery, At the moment of writing this article it is version 1.7.13.

Unpack the 4images Gallery archive to the document root directory on your server:

mkdir -p /var/www/html/
cd /var/www/html/
unzip 4images1.7.13.zip
cd 4images
cp -a * ..

We will need to change some folders permissions:

chown -R www-data: /var/www/html/

Step 4. Configuring MariaDB for 4images Gallery.

By default, MariaDB is not hardened. You can secure MariaDB using the mysql_secure_installation script. you should read and below each steps carefully which will set root password, remove anonymous users, disallow remote root login, and remove the test database and access to secure MariaDB:

mysql_secure_installation

Configure it like this:

- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y

Next we will need to log in to the MariaDB console and create a database for the 4images Gallery. Run the following command:

mysql -u root -p

This will prompt you for a password, so enter your MariaDB root password and hit Enter. Once you are logged in to your database server you need to create a database for 4images Gallery installation:

CREATE DATABASE 4images;
GRANT ALL PRIVILEGES on 4images.* to '4images_user'@'localhost' identified by 'your_password';
FLUSH PRIVILEGES;
exit

Step 4. Configuring Apache web server for 4images Gallery.

Create a new virtual host directive in Apache. For example, create a new Apache configuration file named ‘4images.conf’ on your virtual server:

sudo a2enmod rewrite
touch /etc/apache2/sites-available/4images.conf
ln -s /etc/apache2/sites-available/4images.conf /etc/apache2/sites-enabled/4images.conf
nano /etc/apache2/sites-available/4images.conf

Add the following lines:

ServerAdmin [email protected]
DocumentRoot /var/www/html/
ServerName your-domain.com
ServerAlias www.your-domain.com

Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all

ErrorLog /var/log/apache2/your-domain.com-error_log
CustomLog /var/log/apache2/your-domain.com-access_log common

Now, we can restart Apache web server so that the changes take place:

systemctl restart apache2.service

Step 6. Accessing 4images Gallery.

4images Gallery will be available on HTTP port 80 by default. Open your favorite browser and navigate to http://yourdomain.com/ or http://server-ip/ and complete the required the steps to finish the installation. If you are using a firewall, please open port 80 to enable access to the control panel.
4image_gallery

Congratulation’s! You have successfully installed 4images Gallery. Thanks for using this tutorial for installing 4images Gallery on your Ubuntu 16.04 system. For additional help or useful information, we recommend you to check the official 4images Gallery web site.

How To Install ATutor on Ubuntu 16.04

Install ATutor on Ubuntu 16

ATutor is an Open Source Web-based Learning Content Management System (LCMS) designed with accessibility and adaptability in mind. Administrators can install or update ATutor in minutes, and develop custom templates to give ATutor a new look. Educators can quickly assemble, package, and redistribute Web-based instructional content, easily retrieve and import prepackaged content, and conduct their courses online. Students learn in an adaptive learning environment.

This article assumes you have at least basic knowledge of linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo’ to the commands to get root privileges. I will show you through the step by step installation Habari on a Ubuntu 16.04 server.

Install ATutor on Ubuntu 16.04

Step 1. First make sure that all your system packages are up-to-date by running these following apt-get commands in the terminal.

sudo apt-get update
sudo apt-get upgrade

Step 2. Install LAMP (Linux, Apache, MariaDB, PHP) server.

A Ubuntu 16.04 LAMP server is required. If you do not have LAMP installed, you can follow our guide here. Also install all required PHP modules:

sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt php5-mysql php5-gd

Step 3. Installing ATutor.

First thing to do is to go to ATutor’s download page and download the latest stable version of ATutor, At the moment of writing this article it is version 2.2.1:

wget http://downloads.sourceforge.net/project/atutor/ATutor%202/ATutor-2.2.1.tar.gz?r=http%3A%2F%2Fwww.atutor.ca%2Fatutor%2Fdownload.php -O ATutor-2.2.1.tar.gz

Unpack the ATutor archive to the document root directory on your server:

tar -zxvf ATutor-2.2.1.tar.gz
mv ATutor/ /var/www/html/atutor/

We will need to change some folders permissions:

chown -R www-data: /var/www/html/atutor/

Step 4. Configuring MariaDB for ATutor.

By default, MariaDB is not hardened. You can secure MariaDB using the mysql_secure_installation script. you should read and below each steps carefully which will set root password, remove anonymous users, disallow remote root login, and remove the test database and access to secure MariaDB:

mysql_secure_installation

Configure it like this:

- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y

Next we will need to log in to the MariaDB console and create a database for the ATutor. Run the following command:

mysql -u root -p

This will prompt you for a password, so enter your MariaDB root password and hit Enter. Once you are logged in to your database server you need to create a database for ATutor installation:

create database atutor;
grant all privileges on atutor.* to atutoruser@localhost identified by 'your_password';
flush privileges;
exit

Step 5. Configuring Apache web server for ATutor.

Create a new virtual host directive in Apache. For example, create a new Apache configuration file named ‘atutor.conf’ on your virtual server:

sudo a2enmod rewrite
touch /etc/apache2/sites-available/atutor.conf
ln -s /etc/apache2/sites-available/atutor.conf /etc/apache2/sites-enabled/atutor.conf
nano /etc/apache2/sites-available/atutor.conf

Add the following lines:

ServerAdmin [email protected]
DocumentRoot "/var/www/html/atutor/"
ServerName your-domain.com
ServerAlias www.your-domain.com

Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all

ErrorLog "/var/log/apache2/yourdomain.com-error_log"
CustomLog "/var/log/apache2/yourdomain.com-access_log" combined

Now, we can restart Apache web server so that the changes take place:

systemctl restart apache2.service

Step 6. Accessing ATutor.

ATutor will be available on HTTP port 80 by default. Open your favorite browser and navigate to http://yourdomain.com/ or http://server-ip and complete the required the steps to finish the installation. If you are using a firewall, please open port 80 to enable access to the control panel.

Congratulation’s! You have successfully installed ATutor. Thanks for using this tutorial for installing ATutor (Learning Management System) on your Ubuntu 16.04 system. For additional help or useful information, we recommend you to check the official ATutor web site.