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 Ibmi Media, 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.
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.
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.