Basculer le menu
Changer de menu des préférences
Basculer le menu personnel
Non connecté(e)
Votre adresse IP sera visible au public si vous faites des modifications.

SuiteCRM

De Le Wiki de Lug

LXC Unbuntu 20.04

Installation

Source

On installe l'ensemble LAMP et autres dépendances :

# apt update && apt upgrade
# apt install apache2 apache2-utils mariadb-server mariadb-client unzip php-imagick php7.4-fpm php7.4-mysql php7.4-common php7.4-gd php7.4-imap php7.4-json php7.4-curl php7.4-zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl php7.4-gmp

Archive SuiteCRM

On se rend à cette adresse pour récupérer et déployer la dernière verion de SuiteCRM :

# wget https://suitecrm.com/files/162/SuiteCRM-7.11/560/SuiteCRM-7.11.21.zip
# unzip SuiteCRM-7.11.21.zip -d /var/www/
# mv /var/www/SuiteCRM-7.11.21 /var/www/suitecrm
# rm SuiteCRM-7.11.21.zip

On attribue les droits et permissions :

# chown -R www-data. /var/www/suitecrm
# cd /var/www/suitecrm
# chmod -R 755 .
# chmod -R 775 cache custom modules themes data upload
# chmod 775 config_override.php 2>/dev/null

Configuration de MariaDB

On sécurise la base de données :

# mysql_secure_installation
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
... Success!

Ensuite on crée la base de données pour SuiteCRM et son utilisateur :

# sudo mysql -u root
> CREATE DATABASE suitecrm;
> GRANT ALL ON suitecrm.* TO 'suitecrm'@'localhost' IDENTIFIED BY 'monsupermotdepasse';
> FLUSH PRIVILEGES;
> EXIT;

Configuration de Apache et PHP

On configure les modules nécessaires :

# a2dismod php7.4 mpm_prefork
# a2enmod mpm_event proxy_fcgi setenvif
# systemctl restart apache2

On active SSL :

# a2enmod ssl
# a2ensite default-ssl
# systemctl reload apache2

(Optionnel) On supprime l'écoute sur le port 80 :

 # vi /etc/apache2/ports.conf
...
# /etc/apache2/sites-enabled/000-default.conf

#Listen 80
...
# systemctl reload apache2

On créé l'alias du site :

# vi /etc/apache2/sites-available/suitecrm.conf
Alias /suitecrm "/var/www/suitecrm/"

<Directory /var/www/suitecrm/>
  Options FollowSymLinks MultiViews
  AllowOverride All
  Order allow,deny
  allow from all
</Directory>

Include /etc/apache2/conf-available/php7.4-fpm.conf

On active le site et on recharge Apache :

# a2ensite suitecrm.conf
# systemctl reload apache2

On augmente la limite de téléversement de fichier de PHP :

# sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 20M/g' /etc/php/7.4/fpm/php.ini
# systemctl restart php7.4-fpm && systemctl restart apache2

Configuration de SuiteCRM

On se rend à l'adresse "https://ADRESSE_IP_SERVEUR/suitecrm" pour accéder à la procédure d'installation.

  • On accepte la Licence :

On accepte la Licence..

  • On vérifie que l'environnement est correctement configuré :

Tout doit être "ok"..

  • Dans la partie suprérieur de la page suivante on configure la base de donnés àgauche et le compte de l'admin à droite :

On configure la BDD et le compte admin..

  • Plus bas sur la page diverses options de personnalisation sont proposées, il est préférable de renseigner le serveur SMTP de l'application :

On configure le SMTP de SuiteCRM..

  • Une fois terminé on valide avec "Next" :

On continue..

  • L'installation se lance :

On patiente..

  • Une fois terminé on accède à la page de connexion :

Installation terminé !

Installation de base terminée !

Installation d'un pack de langue

Télécharger un pack de traduction

  • On se rend à cette adresse et on clique sur la langue désirée :

Ici on choisit le plus divine des langues!

  • Et on lance le téléchargement sur sont poste :

Et on télécharge le pack..

Installation pack de traduction

  • On se rend dans le menu "admin" du compte "admin" :

On accède au menu d'administration..

  • Dans la section "Developer Tools" on sélectionne "Module Loader" :

blabla

  • On clique sur "Choisir un fichier" et on sélectionne le pack de traduction précédement téléchargé sur son poste :

blabla

  • On téléverse le pack de traduction sur le serveur avec le bouton "UPLOAD" :

blabla

  • Puis une fois le pack téléverser on passe à son installation avec le bouton "INSTALL" :

blabla

  • On confirme l'installation en cliquant sur "COMMIT" :

blabla

  • Terminé, la langue du pack de traduction est maintenant disponible sur l'écran de connexion :

blabla

Changement de la devise

Vhost pour reverse-proxy Nginx

listen 80;
    listen [::]:80;
    server_name     crm.exemple.net;
   # return 404;
    return 301 https://$host$request_uri;
}

server {
server_name     crm.exemple.net;
    error_page 403  https://crm.exemple.net;

    location / {
            proxy_set_header Upgrade           $http_upgrade;
            proxy_set_header Connection        "upgrade";
            proxy_set_header Host              $host;
            proxy_set_header X-Real-IP         $remote_addr;
            proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header X-Forwarded-Host  $host;
            proxy_set_header X-Forwarded-Port  $server_port;
            proxy_pass https://ADRESSE_IP_SERVEUR/suitecrm/;
            proxy_buffering off; #pour desactiver le "buffering"
    }

    listen [::]:443 ssl; # managed by Certbot
    listen 443 ssl; # managed by Certbot


    ssl_certificate /etc/letsencrypt/live/crm.exemple.net/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/crm.exemple.net/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
    add_header Strict-Transport-Security "max-age=31536000" always;
    ssl_trusted_certificate /etc/letsencrypt/live/crm.exemple.net/chain.pem;
    ssl_stapling on;
    ssl_stapling_verify on;

server_tokens off;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options "nosniff";

}