How to Install YetiForce CRM on Debian 10

YetiForce is a free and open-source Customer Relationship Management system that helps to manage relations with customers, suppliers, partners and staff. YetiForce can be integrated with LDAP, PBX, DAV, Maps, Social portals, and other web services. YetiForce enables you to remotely control your business anywhere in the world. It comes with a rich set of features including, 70+ user modules and configuration panels, invoicing, Email automation and tracking, Email notification, large and active community, GDPR management and many more.

In this tutorial, we will show you how to install YetiForce on Debian 10 with Let’s Encrypt free SSL.

Prerequisites

  • A server running Debian 10 with minimum 2 GB of RAM.
  • A valid domain name pointed with your server IP. We will use example.com domain for this article.
  • A root password is configured on your server.

Getting Started

Before starting, it is recommended to update your server with the latest version. You can update it using the following command:

apt-get update -y
apt-get upgrade -y

Once your server is updated, restart it to implement the changes.

Install Apache, MariaDB and PHP

First, You will need to install Apache, MariaDB, PHP and other required libraries on your server. You can install them by running the following command:

apt-get install apache2 mariadb-server php libapache2-mod-php php-common php-mysql php-gmp php-curl php-intl php-mbstring php-xmlrpc php-gd php-bcmath php-soap php-ldap php-imap php-xml php-cli php-zip git unzip wget -y

Once all the packages are installed, open php.ini file and tweak some required settings:

nano /etc/php/7.3/apache2/php.ini

Change the following lines:

display_errors = Off
html_errors = Off
display_startup_errors
memory_limit = 256M
post_max_size = 50M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = Asia/Kolkata

Save and close the file when you are finished. Then, start Apache and MariaDB service and enable them to start on system reboot with the following command:

systemctl start apache2
systemctl start mariadb
systemctl enable apache2
systemctl enable mariadb

Once you are finished, you can proceed to the next step.

Configure Database

By default, MariaDB is not secured so you will need to secure it. You can secure it by running the following command:

mysql_secure_installation

Answer all the questions as shown below:

Enter current password for root (enter for none):
Set root password? [Y/n] Y
New password:
Re-enter new password:
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

Once you are done, log in to the MariaDB shell with the following command:

mysql -u root -p

Provide your root password when prompt then create a database and user for YetiForce with the following command:

MariaDB [(none)]> CREATE DATABASE yetiforcedb;
MariaDB [(none)]> CREATE USER 'yetiforce'@'localhost' IDENTIFIED BY 'password';

Next, grant all the privileges to the yetiforcedb with the following command:

MariaDB [(none)]> GRANT ALL ON yetiforcedb.* TO 'yetiforce'@'localhost' WITH GRANT OPTION;

Next, flush the privileges and exit from the MariaDB shell with the following command:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

At this point, you have configured the MariaDB database for YetiForce. Next, you can proceed to download YetiForce.

Download YetiForce

First, you will need to download the YetiForce from the sourceforge website. You can download it with the following command:

wget https://excellmedia.dl.sourceforge.net/project/yetiforce/YetiForce%20CRM%205.x.x/5.1.0/YetiForceCRM-5.1.0-complete.zip

Once the download is completed, unzip the downloaded file to the Apache web root directory by running the following command:

mkdir /var/www/html/yetiforce
unzip YetiForceCRM-5.1.0-complete.zip -d /var/www/html/yetiforce

Next, give proper permissions to the yetiforce directory as shown below:

chown -R www-data:www-data /var/www/html/yetiforce
chmod -R 755 /var/www/html/yetiforce

Once you are finished, you can proceed to the next step.

Configure Apache for YetiForce

Next, you will need to create an Apache virtual host configuration file for the YetiForce. You can create it with the following command:

nano /etc/apache2/sites-available/yetiforce.conf

Add the following lines:

<VirtualHost *:80>
     ServerAdmin [email protected]
     DocumentRoot /var/www/html/yetiforce
     ServerName example.com

     <Directory /var/www/html/yetiforce/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Save and close the file when you are finished. Then, enable the Virtual host and rewrite module with the following command:

a2ensite yetiforce.conf
a2enmod rewrite

Finally, restart the Apache web service to implement the changes:

systemctl restart apache2

Once you are finished, you can proceed to the next step.

Secure YetiForce with Let’s Encrypt Free SSL

YetiForce is now installed and configured. Next, it is a good idea to secure it with Let’s Encrypt free SSL. To do so, you will need to install the Certbot client on your server.

By default, the Certbot client package is not available in the Debian 10 default repository. You can add it with the following command:

echo "deb http://ftp.debian.org/debian buster-backports main" >> /etc/apt/sources.list

Next, update the repository and install the Certbot client with the following command:

apt-get update -y
apt-get install python-certbot-apache -t buster-backports

Once installed, run the following command to obtain and install the SSL certificate for your domain:

certbot --apache -d example.com

You will be asked to provide your email address and agree to the terms of service.

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

Next, you will need to choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access as shown below:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Choose option 2 to download and install a free SSL certificate for your domain and hit Enter to finish the installation as shown below:

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/example.com/privkey.pem
   Your cert will expire on 2020-03-23. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot-auto
   again with the "certonly" option. To non-interactively renew *all*
   of your certificates, run "certbot-auto renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Access YetiForce

Now, open your web browser and type the URL https://example.com. You will be redirected to the YetiForce welcome page:

YetiForce Installation Wizard

Click on the Install button. You should see the following page:

YetiForce License

Next, click on the I agree button to accept the license agreement. You should see the following page:

System Configuration

Provide your database name, username, password, admin user details and click on the Next button. You should see the following page:

Confirm Settings

Now, click on the Next button to confirm the changes. You should see the following page:

Verify Server Configuration

Now, click on the Next button to verify the server configuration. You should see the following page:

Set Company Details

Now, provide your company details and click on the Next button. You will be redirected to the YetiForce dashboard in the following page:

YetiForce CRM dashboard

Conclusion

In the above article, you learned how to install YetiForce with Let’s Encrypt free SSL on Debian 10 server. You can now proceed to configure additional settings as per your need. Feel free to ask me if you have any questions.

Brought to you by Web Designer
Kuala Lumpur

Leave a Reply

Your email address will not be published. Required fields are marked *

*