SugarCRM is a free and Open source Customer Relationship Management which is written in PHP and can be easily installed and configured on top of LAMP stack. SugarCRM is available in different flavours called “Editions” (“Community” (free), “Professional”, and “Enterprise”). For a detailed overview of the different editions, have a look at the SugarCRM website.
This tutorial will explain how to install SugarCRM Community Edition on CentOS 7 server.
- A CentOS 7 (latest version) server with minimal installation.
- A static IP address setup on your server.
Step 1: Update OS to latest version
# yum update -y
Step 2: Install Lamp stack
Install Lamp Stack and other required PHP dependencies on your server by running below commnads.
# yum install php httpd mariadb mariadb-server php-mysqlnd php-opcache php-mbstring php-gd -y
Step 3: Start services
Once the packages and dependencies are installed, start Apache and mariadb service and enable both to start at system boot.
Start Apache and mariadb service with below commands:
# systemctl start httpd # systemctl start mariadb
Next, enable Apache and mariadb service to start at system boot with below commands:
# systemctl enable httpd # systemctl enable mariadb
Step 4: Configure MariaDB Database
By default MariaDB installation is not secured, so you will need to secure it first by running the below script.
# mysql_secure_installation Answer all the questions as shown below: Enter current password for root (enter for none): Enter Set root password? [Y/n]: n 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, log in to MySQL shell with the following command:
# mysql -u root -p
Enter the root password when asked, then create a database and user for SugarCRM:
MariaDB [(none)]>CREATE DATABASE sugarcrm; MariaDB [(none)]>GRANT ALL PRIVILEGES ON sugarcrm.* TO ‘crm’@’localhost’ IDENTIFIED BY ‘password’ WITH GRANT OPTION; MariaDB [(none)]>flush privileges; MariaDB [(none)]>exit;
Step 5: Tune PHP settings
In order to install and run SugarCRM properly, you need to edit php.ini to tune the PHP settings with below command.
# vi /etc/php.ini
Change the value of upload_max_filesize to 25M by editing the file.
upload_max_filesize = 25M
Save and close the file, then restart apache service to implement the saved changes by running below command.
# systemctl restart httpd
Step 6: Install SugarCRM
First download SugarCRM package with the below command.
# wget https://master.dl.sourceforge.net/project/sugarcrm/OldFiles/1%20-%20SugarCRM%206.5.X/SugarCommunityEdition-6.5.X/SugarCE-6.5.26.zip
Next, unzip the package with below command.
# unzip SugarCE-6.5.26.zip
Next, move the extracted archive in Apache web root directory:
# mv SugarCE-6.5.26 /var/www/html/SugarCRM
Give necessary permission to SugarCRM directory:
# chown -R apache:apache /var/www/html/sugarcrm
Next, you will need to allow HTTP on port `80` through firewalld. You can do this by running the following command:
# firewall-cmd –zone=public –add-service=http –permanent # firewall-cmd –reload
Next, lets start installation of SugarCRM by accessing the below URL:
The SugarCRM Community Setup Wizard page will be opened as below.
Next, click on the `Next` button.
Read and Accept the License agreement, then Click on the “Next” button:
Next, choose the First option and click on the “Next” button:
Click on Next button:
Next, provide the database details and click on Next:
Next, provide the SugarCRM admin username and password of your choice and click on Next:
Next, confirm the settings and click on Install to install SugarCRM:
This completes the setup of SugarCRM, next login to the admin console with the credentials provided in earlier steps:
Congratulations! you have successfully installed SugarCRM on CentOS 7 server.