Installation Vtiger

De SLM - MediaWiki

Comment installer VtigerCRM sur Debian 10 Buster

Présentation

Vtiger CRM est une application Web de gestion de la relation client populaire qui peut aider les entreprises à augmenter leurs ventes, à fournir un service client et à augmenter leurs profits. Cet article vous guidera à travers l'installation de l'édition open source de Vtiger sur un système Debian 10 avec le serveur Web Apache, MariaDB et PHP.

Conditions préalables

  • Une instance Debian 10 nouvellement déployée (4 Go + de mémoire recommandés)
  • Accès root à votre serveur, via SSH ou console.
  • Un nom de domaine pointant vers votre adresse IP . vtiger.slemoal.fr sera utilisé comme exemple.

Installation

Étape 1: Mettez à jour le système.

Tout d'abord, mettez à jour votre système:

apt update
apt upgrade -y

Une fois que cela est fait, redémarrez et connectez-vous à nouveau:

reboot

Étape 2: Ajouter de la mémoire SWAP (facultatif)

Si votre système dispose de moins de 4 Go de mémoire, vous pouvez configurer un fichier de mémoire virtuelle pour potentiellement améliorer les performances.

Les commandes suivantes créeront un fichier d'échange de 4 Go, indiqueront au système de l'utiliser comme espace d'échange et créeront une entrée correspondante /etc/fstab le montage automatique au démarrage.

1 dd if=/dev/zero of=/swapfile bs=1k count=4M
2 chmod 0600 /swapfile
3 mkswap /swapfile
4 swapon /swapfile
5 echo "/swapfile swap swap defaults 0 0" | tee -a /etc/fstab

Étape 3: Installez Apache, PHP et MariaDB

Utilisez la commande suivante pour installer les packages et les outils nécessaires:

apt install -y apache2 libapache2-mod-php mariadb-server mariadb-client php-imap php-curl php-xml php php-common php-mysql unzip

Une fois l'installation terminée, assurez-vous que les services Apache et MariaDB sont activés et en cours d'exécution:

systemctl enable --now apache2.service mariadb.service

Étape 4: Configurez PHP

À l'aide d'un éditeur de texte de votre choix, ouvrez le fichier /etc/php/7.3/apache2/php.ini apportez les modifications suivantes:

memory_limit = 512M
max_execution_time = 240
error_reporting = E_WARNING & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT
display_errors = On
log_errors = Off

Étape 5: Configurez MariaDB

Nous allons commencer par sécuriser notre installation MariaDB à l'aide de la commande:

mysql_secure_installation

Répondez à toutes les questions comme indiqué ci-dessous et assurez-vous de choisir un mot de passe fort pour l'utilisateur root:

Enter current password for root: Press :key_enter:
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

Nous allons maintenant créer une base de données et un utilisateur MariaDB, tous deux dédiés à l'application Web Vtiger. Connectez-vous à la CLI MySQL ( mysql -u root -p) et utilisez les commandes suivantes:

CREATE DATABASE vtigercrm;
CREATE USER 'vtigercrm'@'localhost' IDENTIFIED BY 'UnMotDePasseFort';
GRANT ALL PRIVILEGES ON vtigercrm.* TO 'vtigercrm'@'localhost';
QUIT;

Ensuite, ouvrez le fichier /etc/mysql/my.cnf dans un éditeur de texte et ajoutez les lignes suivantes:

[mysqld]
sql_mode = ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

Enregistrez les modifications et redémarrez MariaDB:

systemctl restart mariadb.service

Étape 6: Téléchargez Vtiger CRM

Accédez à la page de téléchargement de Vtiger et cliquez sur «Télécharger Open Source», puis copiez le lien de téléchargement de la dernière version stable de TAR.GZ et téléchargez-la sur votre serveur:

cd /tmp
wget -O vtiger.tgz DOWNLOAD_LINK

Par exemple:

wget -O vtiger.tgz https://sourceforge.net/projects/vtigercrm/files/vtiger%20CRM%207.1.0/Core%20Product/vtigercrm7.1.0.tar.gz/

Revenez à la page de téléchargement et copiez le lien de téléchargement de tout package correctifs correspondants, puis téléchargez-le également:

wget -O hotfix.zip https://sourceforge.net/projects/vtigercrm/files/vtiger%20CRM%207.1.0/Core%20Product/Hotfixes/vtigercrm7.1.0-hotfix2.zip/download

Maintenant, décompressez et déplacez le répertoire vers la racine Web:

tar -xzf vtiger.tgz
rm vtiger.tgz
mv vtigercrm/ /var/www/ 

Appliquez le correctif:

unzip -o -f -d /var/www/vtigercrm hotfix.zip
rm hotfix.zip

Étant donné que les autorisations d'écriture sont nécessaires, nous donnerons à l'utilisateur du processus apache la propriété du répertoire:

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

En raison de ce qui semble être un bogue mineur dans la version open source de Vtiger, il signalera à tort la error_reportingdirective PHP comme NOT RECOMMENDED.

Pour résoudre ce problème, ouvrez le fichier /var/www/vtigercrm/modules/Install/views/Index.php dans un éditeur de texte tel que vim ou nano et recherchez la ligne suivante (32):

version_compare(PHP_VERSION, '5.5.0') <= 0 ? error_reporting(E_ERROR & ~E_NOTICE & ~E_DEPRECATED) : error_reporting(E_ERROR & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT);

Remplacez-le par:

version_compare(PHP_VERSION, '5.5.0') <= 0 ? error_reporting(E_ERROR & ~E_NOTICE & ~E_DEPRECATED) : error_reporting(~E_NOTICE & ~E_DEPRECATED & ~E_STRICT & E_WARNING);

Étape 7: configuration d'Apache

Avant de configurer Apache, obtenons un certificat SSL de «Let's Encrypt» à l'aide de certbot:

apt install -y certbot certbot certonly --webroot --agree-tos -m noreply@slemoal.fr -d vtiger.slemoal.fr Lorsque vous êtes invité à saisir la racine Web de votre domaine, saisissez /var/www/html. Certbot vérifiera que vous possédez votre domaine et qu'il résout correctement l'adresse IP de votre serveur avant de créer et d'enregistrer votre certificat et votre fichier de clé.

Pour garder les choses organisées, créez deux fichiers de configuration pour votre instance VtigerCRM vtigercrm80.conf et vtigercrm443.conf pour HTTP et HTTPS, respectivement. Les deux fichiers doivent être créés au format /etc/apache2/sites-available.

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

Et collez ce qui suit, qui demandera à Apache de rediriger toutes les requêtes HTTP entrantes vers HTTPS:

<VirtualHost *:80>

  DocumentRoot /var/www/vtigercrm
  ServerName vtiger.slemoal.fr

  ErrorLog /var/log/apache2/vtigercrm-error.log
  CustomLog /var/log/apache2/vtigercrm-access.log common

  RewriteEngine on
  RewriteCond %{SERVER_NAME} =vtiger.slemoal.fr
  RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent]

</VirtualHost>

Pour la version HTTPS:

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

Vous trouverez ci-dessous une configuration judicieuse que vous pouvez modifier si vous avez des besoins plus spécifiques:

<VirtualHost *:443> 

  DocumentRoot /var/www/vtigercrm
  ServerName vtiger.slemoal.fr

  SSLEngine on
  SSLCertificateFile /etc/letsencrypt/live/vtiger.slemoal.fr/fullchain.pem
  SSLCertificateKeyFile /etc/letsencrypt/live/vtiger.slemoal.fr/privkey.pem
  SSLProtocol all -SSLv2 -SSLv3
  SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
  SSLHonorCipherOrder on
  SSLCompression off
  SSLOptions +StrictRequire

  <Directory /var/www/vtigercrm>
    Options FollowSymLinks
    AllowOverride All
  </Directory>

  ErrorLog /var/log/apache2/vtigercrm-error.log
  CustomLog /var/log/apache2/vtigercrm-access.log common

</VirtualHost>

Activez les deux fichiers d'hôte virtuel:

a2ensite vtigercrm80.conf
a2ensite vtigercrm443.conf

Et activez les modules apache de réécriture et SSL:

a2enmod rewrite
a2enmod ssl

Enfin, redémarrez le service apache pour appliquer les modifications:

systemctl restart apache2.service

Étape 8: Assistant d'installation Web

Accédez à https://vtiger.slemoal.fr/, vous serez accueilli par l'assistant d'installation.

Cliquez sur «Installer» pour commencer et procédez comme suit:

1 Tout d'abord, vous devrez accepter la licence publique Vtiger avant de continuer.

2 L'assistant vérifiera votre configuration PHP. Tous les tests devraient réussir si vous avez suivi ce guide. Cliquez sur Suivant"

3 Vous serez invité à entrer les informations de votre base de données:

  • Nom d'hôte: localhost
  • Nom d'utilisateur: vtigercrm
  • Mot de passe: le mot de passe que vous avez choisi lors de la création de l'utilisateur dans la console MySQL.
  • Nom de la base de données: vtigercrm
  • Créer une nouvelle base de données: Oui. (Cochez la case. Même si nous créons déjà une base de données, cela est actuellement nécessaire pour que le programme d'installation crée toutes les tables.)
  • Nom d'utilisateur racine: vtigercrm
  • Mot de passe root: le mot de passe que vous avez choisi lors de la vtigercrmcréation de l' utilisateur ( ) dans la console MySQL. N'entrez pas le mot de passe de l'utilisateur root.

Les formulaires d'informations système et d'informations sur les utilisateurs administrateurs doivent être remplis en fonction de vos besoins.

4 Confirmez votre configuration et continuez.

5 Spécifiez votre secteur d'activité et cliquez sur «Suivant». L'assistant commencera le processus de configuration, qui peut prendre un certain temps.

6 Sélectionnez les fonctionnalités que vous souhaitez activer. Le processus d'installation est maintenant terminé.