SuiteCRM
Révision datée du 24 août 2021 à 14:23 par Admin (discussion | contributions) (→Configuration de SuiteCRM)
LXC Unbuntu 20.04
Installation
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 :
1
- On vérifie que l'environnement est correctement configuré :
2
- Dans la partie suprérieur de la page suivante on configure la base de donnés q`gauche et le compte de l'admin à droite :
3
- Plus bas sur la page diverses options de personnalisation sont proposées, il est préférable de renseigner au minimum le serveur SMTP pour le serveur :
4
- Une fois terminé on valide avec "Next" :
5
- L'installation se lance :
6
- Une fois terminé on accède à la page de connexion :
7
Installation d'un pack de langue
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";
}