Install Vtiger CRM on CentOS 8 - A step by step guide ?

Vtiger CRM is an open-source Customer Relationship Management application written in PHP. It offers features such as sales automation, marketing automation, analysis and reporting, customer support and many others.

Here at LinuxAPT, as part of our Server Management Services, we regularly help our Customers to perform related PHP Software Installation queries on Linux systems.

In this context, we shall look into how to install Vtiger CRM on CentOS 8 machine. 


Steps to Install  and configure Vtiger CRM on CentOS 8

1. Perform system update

First, let's start by ensuring your system is up-to-date by running the below command on your terminal:

$ sudo dnf clean all
$ sudo dnf update


2. Install LAMP Stack

If you don't have a LAMP stack already installed on your server, you can follow our guide here.


3. Install Vtiger CRM on the system

Now we download the latest Vtiger latest version to your CentOS system using the wget command:

$ wget https://sourceforge.net/projects/vtigercrm/files/vtiger%20CRM%207.2.0/Core%20Product/vtigercrm7.2.0.tar.gz
$ tar xvf vtigercrm7.2.0.tar.gz
$ sudo mv vtigercrm /var/www/html/

Don't forget, we will need to change some folders permissions:

$ sudo chown -R apache:apache /var/www/html/vtigercrm


4. Configure MariaDB for Vtiger CRM

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

$ mysql_secure_installation

Then, 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 Vtiger CRM. 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 CRM installation:

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


5. Configure Apache webserver

The first, create a Virtual Host file for vTiger:

$ sudo nano /etc/httpd/conf.d/vtigercrm.conf

Next, Add the following commands:

<VirtualHost *:80>
     ServerAdmin webmaster@example.com
     ServerName example.com
     ServerAlias www.example.com
     DocumentRoot /var/www/html/vtigercrm/
     <Directory /var/www/html/vtigercrm/>
        Options +FollowSymlinks
        AllowOverride All
        Require all granted
     </Directory>
     ErrorLog /var/log/httpd/vtigercrm_error.log
     CustomLog /var/log/httpd/vtigercrm_access.log combined
</VirtualHost>

Finally, restart Apache service to take change effect:

$ sudo systemctl restart httpd


6. Configure Firewall

Open HTTP port in the firewall by executing the below commands:

$ sudo firewall-cmd --add-service=http --permanent
$ sudo firewall-cmd --reload

Then, disable SELinux on CentOS system:

$ sudo setenforce 0
$ sudo sed -i 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config


7. Access Vtiger CRM

Vtiger CRM will be available on HTTP port 80 by default. 

Open your favourite browser and navigate to http://your-domain.com or http://server-ip-address and complete the required steps to finish the installation.


[Need assistance in fixing Apache configuration issues ? We can help you today ? ]

This article covers how to install and configure Vtiger CRM on a CentOS 8 system. In fact, vTiger CRM is a web-based, modular and complete Open Source full-fledged customer relationship management system for sales force automation, customer support & service, marketing automation, procurement & fulfillment effectively. It is basically a native thin-client, browser-based application built on the LAMP/WAMP (Linux/Windows, Apache, MySQL and PHP) stack.

Related Posts