Skip to content

Foire aux questions

Comment créer une catégorie ?

L'objectif de créer des catégories est de classer vos tickets.

Exemple : Serveur, PC ....

Paramétrage :
Avec un compte possédant les droits d'administration, allez dans le menu "Administration" > "Listes" puis cliquez dans les listes disponibles sur "Catégorie". Dans la partie de droite "Ajouter une entrée", tapez le nom de la catégorie que vous souhaitez créer.

Comment utiliser les vues personnelles ?

Cette fonctionnalité à pour but d'afficher tous les tickets associés à une catégorie, une sous-catégorie, ou un technicien.
L'utilité est, d'avoir un accès direct aux tickets, le paramétrage est à réaliser par utilisateur.

Exemple : Le technicien réseau voit tous les tickets de la catégorie réseau, même ceux qui ne lui sont pas attribués.

Paramétrage :
Allez sur la fiche de l'utilisateur à qui ajouter la vue, "Administration > Utilisateurs", dans l'onglet paramètre vous trouverez la section "Vues personnelles", sélectionnez une catégorie ou sous-catégorie, puis entrez le nom de la vue et valider. Lors de la connexion avec cet utilisateur, un nouvel item apparait, dans le menu de gauche nommé "Vues personnelles", regroupant toutes les vues de cet utilisateur. Une icône permet de distinguer une vue par catégorie et une vue par technicien. Des sous-menus par états de tickets sont également disponibles.

Comment utiliser les modèles de ticket ?

Cette fonction a pour but de dupliquer un ticket, à partir d'un ticket existant.
Cela permet notamment de créer rapidement des tickets quand ils sont récurrents, afin d'avoir une trace dans les statistiques.

Exemple : Une application plante suite à une mise à jour, afin d'apprécier que c'est un problème général, création d'un modèle de ticket.

Paramétrage :
Créez un ticket qui servira de modèle.
Définissez ce ticket en tant que modèle :
Allez dans "Administration > Listes > Modèles", entrez le nom du modèle puis le numéro du ticket modèle et valider.
Créez un nouveau ticket à partir de ce modèle :
Allez dans "Nouveau ticket", puis cliquez en haut à droite sur l'icône violette et sélectionnez le nom du modèle dans la liste déroulante et cliquez sur "Utiliser".

Comment activer la liaison LDAP ?

Cette fonction à un double objectif : Récupérer la liste des utilisateurs de l'entreprise et utiliser les identifiants et mots de passe présents dans l'annuaire LDAP pour se connecter à GestSup.
Elle est compatible avec un Active Directory Microsoft et Open LDAP.

Exemple : Une entreprise possède un Active Directory et ne souhaite pas rentrer tous ses utilisateurs manuellement dans l'application, alors elle active le connecteur.

Prérequis :
Autorisez dans votre firewall, les ports 389 ou 636 entre le serveur LDAP et le serveur GestSup.
Avoir activé l'extension "php_ldap" dans la configuration PHP de votre serveur GestSup.
Linux Debian :

apt-get install php-ldap

Windows : Dé-commenter la ligne "extension=php_ldap.dll" du fichier C:\wamp\bin\php\phpXXX\php.ini
Le serveur LDAP doit être joignable avec son nom FQDN depuis le serveur GestSup ex: dc.gestsup.local (si ce n'est pas le cas modifiez le fichier "/etc/hosts" ou "C:\Windows\System32\Drivers\etc\host" en ajoutant "192.168.x.x dc.gestsup.local".

Paramétrage :
Activer la fonction LDAP dans "Administration > Paramètres > Connecteurs" en cochant la case.
Dans "Serveur LDAP" mettez le nom NetBIOS sans suffixe. (ex : SRVDC1)
Dans emplacement des utilisateurs mettez "CN=users" si vos utilisateurs sont présents dans le container USER pour un Active Directory.
Saisissez un compte d'accès au domaine, ayant les droits d'accès à l'annuaire. Un compte ayant les droits administrateur n'est pas nécessaire.
Enfin utilisez le bouton de test afin de valider vos paramétrages.
Pour utiliser le connecteur, aller dans "Administration > Utilisateurs", un bouton "Synchronisation LDAP" doit apparaitre, qui vous laissera le choix entre effectuer une simulation ou exécuter la synchronisation.
Cette opération peut être automatisée tous les jours en créant une tâche planifiée sur le fichier "php /var/www/html/core/ldap.php"

Comment automatiser la synchronisation LDAP ?

Exemple de planification pour synchroniser tous les jours à 1h00 du matin :
Linux:

echo "0 1 * * * root php /var/www/html/core/ldap.php > /dev/null" >> /etc/crontab && service cron reload

Windows:

schtasks /create /tn "MAJ" /tr "C:\wamp\bin\php\php7.X.X\php.exe c:\wamp\www\core\ldap.php" /sc daily /st 01:00:00

Comment activer le connecteur IMAP ?

Cette fonctionnalité a pour but de créer des tickets de manière automatique en interrogeant une boite mail spécifiée.
L'utilité est d'éviter la saisie du ticket par le technicien.

Exemple : Un service disposant d'une adresse mail pour le service support@gestsup.fr, tous les mails envoyés cette adresse seront créés en tant que ticket dans l'application.

Prérequis :
Avoir activé l'extension PHP "php_imap" :
Linux Debian :

apt-get install php-imap

Windows : Dé-commenter la ligne "extension=php_imap.dll" du fichier C:\wamp\bin\php\phpXXX\php.ini

Paramétrage :

  • Allez dans "Administration" > "Paramètres" > Connecteurs", cliquez sur "Activer la liaison IMAP"
  • Renseigner l'adresse IP ou le nom du serveur de messagerie à interroger
  • Renseigner le protocole à utiliser, par défaut IMAP sur le port 993
  • Renseigner le dossier racine, si les messages n'arrivent pas à la racine de la boite
  • Enfin renseigner l'adresse de messagerie et le mot de passe d'accès
  • Vous pouvez réaliser un test cliquant sur le bouton "Lancer la récupération de messages"

Cette opération est automatisable par tâche planifiée pour que le contrôle s'effectue régulièrement, cf question suivante.

Comment automatiser la réception des mails IMAP ?

Exemple de planification pour relever la boite aux lettres toutes les 5 minutes :

Linux:

echo "*/5 * * * * root php /var/www/html/mail2ticket.php > /dev/null" >> /etc/crontab && service cron reload

Windows:

schtasks /create /tn "MAJ" /sc minute /mo 5 /tr "C:\wamp\bin\php\php7.X.X\php.exe c:\wamp\www\mail2ticket.php"

À noter : Si vous ne pouvez planifier la tâche via le système d'exploitation, vous pourrez utiliser la clé privée du serveur disponible dans Administration > Système, dans l'URL (exemple : https://serveur?key=MaCléPrivée)

Comment personnaliser le timeout de l'application ?

Ce paramétrage permet de définir un temps de déconnexion automatique des utilisateurs, il permet de renforcer la sécurité de l'application.

Paramétrage :
Éditez votre fichier php.ini et cherchez la ligne "session.gc_maxlifetime". Le temps associé est en secondes, passez-le à "1440" afin d'avoir une déconnexion de l'application au bout de 24 minutes.
Le redémarrage de votre serveur Apache est nécessaire pour appliquer les modifications.
Il est également possible de réaliser le paramétrage directement depuis la section Administration > Paramètres > Général.

Comment installer un relai de messagerie sous Linux ?

L'objectif de la mise en place d'un relai de messagerie sur votre serveur Linux est d'éviter les latences qui peuvent être occasionnées par votre serveur de messagerie. Ainsi les envois de messages seront plus fluides dans l'application.

Paramétrage :
Installation de PostFix : (sans configuration)

apt-get install postfix

Paramétrage du serveur de messagerie :

cp /usr/share/postfix/main.cf.debian /etc/postfix/main.cf
nano /etc/postfix/main.cf

Ajouter la ligne :

relayhost=10.0.0.1

ou l'adresse IP correspond à votre serveur de messagerie
Redémarrage du service:

service postfix restart

Configuration de GestSup: Dans "Administration > Paramètres > Connecteurs", dans "Serveur SMTP" écrire "localhost".
Vous devrez également vérifier que votre serveur de messagerie autorise ce type de connexion, sous exchange cous pourrez crée un relai anonyme ouvert sécurisé avec une étendue IP correspondant à l'adresse de votre serveur GestSup.

Comment configurer le connecteur SMTP GMail avec authentification par identifiant et mot de passe ?

  • Vérifier dans "Administration" > "Système" que l'extension "php_openssl" est bien activée
  • Dans "Administration" > "Paramètre" > "Connecteur" cocher "Activer la liaison SMTP"
  • Dans le champ "Serveur SMTP" tapez "smtp.gmail.com"
  • Dans le champ "Port" sélectionner "587"
  • Dans le champ "Verification SSL" sélectionner "Activée"
  • Dans le "Préfixe" sélectionnez "Aucun"
  • Cochez "Serveur SMTP authentifié"
  • Dans type d'authentification sélectionner "LOGIN"
  • Renseigner votre adresse mail Google
  • Dans vos paramètres de sécurité GMail https://myaccount.google.com/security?hl=fr , verifier que la "Validation en deux étapes" est activée
  • Dans vos paramètres de sécurité Gmail, sélectionner "Mot de passe des applications", sélectionner "Autre", puis "Générer"
  • Dans l'application GestSup, coller le mot de passe dans le champ du connecteur, valider la page et tester le connecteur.

Comment configurer le connecteur IMAP avec GMail avec authentification par identifiant et mot de passe ?

  • Vérifier dans "Administration" > "Système" que l'extension "php_openssl" est bien activée
  • Dans "Administration" > "Paramètres" > "Connecteur" cocher "Activer la liaison IMAP"
  • Dans le champ "Serveur de Messagerie POP/IMAP" tapez "imap.gmail.com"
  • Dans le champ "Protocole" sélectionner "Sécurisé 993"
  • Dans le "Dossier racine" sélectionnez "INBOX"
  • Renseigner votre adresse mail.
  • Sur votre compte Gmail dans les paramètres, vérifiez que le transfert IMAP est activé: https://mail.google.com/mail/u/0/#settings/fwdandpop
  • Dans vos paramètres de sécurité GMail https://myaccount.google.com/security?hl=fr , verifier que la "Validation en deux étapes" est activée
  • Dans vos paramètres de sécurité Gmail, sélectionner "Mot de passe des applications", sélectionner "Autre", puis "Générer"
  • Dans l'application GestSup, coller le mot de passe dans le champ du connecteur, valider la page et tester le connecteur.

Comment configurer le connecteur SMTP GMail avec authentification par XOAUTH2 ?

Sans utiliser la connexion XOAUTH2 avec Google, vous pouvez utiliser les mots de passes d'application :
https://support.google.com/accounts/answer/185833

Si vous utilisez un serveur Windows bien que non recommandé, il sera nécessaire de configurer les certificats CURL dans votre php.ini

Prérequis :

  • Disposer d'une version 3.2.30 ou supérieure.
  • Le serveur GestSup doit avoir un nom de domaine https://exemple.fr et non une adresse IP uniquement
  • Le serveur doit être accèssible en HTTPS

Procédure :

  • Vérifier dans "Administration" > "Système" que l'extension "php_openssl" est bien activée
  • Dans "Administration" > "Paramètre" > "Connecteur" cocher "Activer la liaison SMTP"
  • Dans le champ "Serveur SMTP" tapez "smtp.gmail.com"
  • Dans le champ "Port" sélectionner "465"
  • Dans le champ "Verification SSL" sélectionner "Activée"
  • Dans le "Préfixe" sélectionnez "Aucun"
  • Cochez "Serveur SMTP authentifié"
  • Dans type d'authentification sélectionner "XOAUTH2 Google"
  • Dans "Adresse de messagerie" renseigner votre adresse mail Google
  • Connectez-vous à la console développeur de Google https://console.cloud.google.com/apis/dashboard

  • Cliquer sur la liste des projets :

  • Cliquer sur Nouveau projet :

  • Définir un nom :

  • Sélectionner le projet nouvellement crée :

  • Sélectionner Bibliothèque :

  • Activer Gmail :

  • Sélectionner Écran de consentement :

  • Sélectionner Externe :

  • Définir un nom et renseigner l'adresse mail :

  • Sélectionner Add users :

  • Ajouter l'adresse mail :

  • Passer le projet en production :

  • Sélectionner Identifiants :

  • Sélectionner Créer des identifiants Oauth :

  • Sélectionner Application Web :

  • Renseigner l'URL du serveur GestSup suffixé de get_auth_token.php :

  • Copier l'ID Client et le secret dans les paramètres du connecteur GestSup :

  • Cliquer sur Générer Token :

  • Sélectionner le compte Gmail :

  • Continuer :

  • Cocher et continuer :

  • Cliquer sur le lien :

  • Tester le connecteur :

Comment configurer le connecteur SMTP Entra ID (Azure AD) avec authentification par XOAUTH2 ?

Avant-propos :
Microsoft déprécie l'authentification basique pour les protocoles SMTP et IMAP, il est nécessaire d'utiliser l'authentification XOAUTH2 si l'authentification basique a été désactivée sur votre tenant. Référence Microsoft

Prérequis :

  • Disposer d'une version 3.2.30 ou supérieure
  • Ne pas disposer d'une licence KIOSK
  • Votre serveur doit être accèssible en HTTPS ou vous devez avoir une interface graphique sur le serveur pour utiliser l'adresse localhost
  • Votre serveur GestSup doit pouvoir communiquer avec login.microsoftonline.com sur le port 443

Si vous utilisez un serveur Windows bien que non recommandé, il sera nécessaire de configurer les certificats CURL dans votre php.ini

Procédure :

  • Avec votre navigateur, se déconnecter de tous les comptes Microsoft puis se connecter sur votre compte Microsoft avec l'adresse mail à définir sur le connecteur https://outlook.live.com/
  • Dans l'application vérifier dans "Administration" > "Paramètres" que l'URL du serveur est correctement défini
  • Vérifier dans "Administration" > "Système" que l'extension "php_openssl" est bien activée
  • Dans "Administration" > "Paramètre" > "Connecteur" cocher "Activer la liaison SMTP"
  • Dans le champ "Serveur SMTP" tapez "smtp.office365.com"
  • Dans le champ "Port" sélectionner "587"
  • Dans le champ "Verification SSL" sélectionner "Activée"
  • Dans le "Préfixe" sélectionnez "Aucun"
  • Cochez "Serveur SMTP authentifié"
  • Dans type d'authentification sélectionner "XOAUTH2 Entra ID (Azure AD)"
  • Dans "Adresse de messagerie" renseigner votre adresse mail Office 365
  • Connectez-vous sur le portail Microsoft Azure avec l'adresse mail à configurer sur le connecteur https://portal.azure.com/
  • Dans le menu sélectionner "Microsoft Entra ID" :

  • Puis "Inscription d'application" :

  • Puis "Nouvelle inscription" :

  • Renseigner un nom d'application, multilocataire, Web, URL de votre serveur :

  • Cliquez sur "API autorisées" :

  • Cliquez sur "Ajouter une autorisation" :

  • Cliquez sur "Microsoft Graph" :

  • Cliquez sur "Autorisations déléguées" :

  • Rechercher et ajouter "offline_access" et "SMTP.Send" :

  • Accorder le consentement de l'administrateur :

  • Cliquez sur "Ajouter un certificat ou un secret" :

  • Cliquez sur "Nouveau secret" :

  • Définir une description et une durée de validité de 24 mois :

  • Copier la valeur du secret :

  • Dans l'application coller la valeur du secret :

  • Copier l'ID du client et du locataire dans les paramètres de l'application et définir l'adresse mail:

  • Enregistrer la page, patientez 5 minutes puis cliquer sur Générer Refresh Token, en vérifiant que le compte Microsoft connecté au navigateur est bien l'adresse mail configurée sur le connecteur.

  • Un nouvel onglet vous demandera d'autoriser l'application puis une page avec les tokens s'affichera, fermer la ensuite

  • Sur le connecteur rafraîchir la page puis tester le connecteur

Comment configurer le connecteur IMAP Entra ID (Azure AD) avec authentification par XOAUTH2 ?

Avant-propos :
Microsoft déprécie l'authentification basique pour les protocoles SMTP et IMAP, il est nécessaire d'utiliser l'authentification XOAUTH2 si l'authentification basique a été désactivée sur votre tenant. Référence Microsoft

Prérequis :

  • Disposer d'une version 3.2.30 ou supérieure.
  • Votre serveur doit être accèssible en HTTPS ou vous devez avoir une interface graphique sur le serveur pour utiliser l'adresse localhost
  • Votre serveur GestSup doit pouvoir communiquer avec login.microsoftonline.com sur le port 443

Si vous utilisez un serveur Windows bien que non recommandé, il sera nécessaire de configurer les certificats CURL dans votre php.ini

Procédure :

  • Avec votre navigateur, se déconnecter de tous les comptes Microsoft puis se connecter sur votre compte Microsoft avec l'adresse mail à définir sur le connecteur https://outlook.live.com/
  • Dans l'application vérifier dans "Administration" > "Paramètres" que l'URL du serveur est correctement défini
  • Vérifier dans "Administration" > "Système" que l'extension "php_openssl" est bien activée
  • Dans "Administration" > "Paramètre" > "Connecteur" cocher "Activer la liaison IMAP"
  • Dans le champ "Serveur" tapez "outlook.office365.com"
  • Dans le champ "Port" sélectionner "993"
  • Dans le champ "Verification SSL" sélectionner "Activée"
  • Dans le champ "Dossier racine" sélectionner "INBOX"
  • Dans "Adresse de messagerie" renseigner votre adresse mail
  • Dans "Type d'authentification" sélectionner "XOAUTH2 Entra ID (Azure AD)"
  • Connectez-vous sur le portail Microsoft Azure avec l'adresse mail à configurer sur le connecteur https://portal.azure.com/
  • Dans le menu sélectionner "Microsoft Entra ID" :

  • Dans le menu sélectionner "Inscription d'application" :

  • Puis sélectionner "Nouvelle inscription" :

  • Renseigner le nom, les comptes, l'URI WEB avec l'URL de votre serveur :

  • Sélectionner "API autorisées" :

  • Sélectionner "Ajouter une autorisation" :

  • Dans Microsoft Graph ajouter "offline_access" et "IMAP.AccessAsUser.All" :

  • Accorder le consentement :

  • Avec consentement accordé :

  • Ajouter l'URL de mail2ticket.php :

  • Ajouter un secret :

  • Copier la valeur :

  • La coller dans l'application :

  • Copier également l'Id du client et du locataire :

  • Patientez 5 minutes puis cliquer sur générer Refresh Token en vérifiant que le compte Microsoft connecté au navigateur est bien l'adresse mail configurée sur le connecteur, puis autoriser l'application :

  • Une fois autorisée, la page suivante s'affiche, vous pouvez fermer cet onglet :

  • Vous pouvez désormais lancer un import manuel :

Comment configurer le connecteur IMAP GMail avec authentification par XOAUTH2 ?

Sans utiliser la connexion XOAUTH2 avec Google, vous pouvez utiliser les mots de passes d'application :
https://support.google.com/accounts/answer/185833

Si vous utilisez un serveur Windows bien que non recommandé, il sera nécessaire de configurer les certificats CURL dans votre php.ini

Prérequis :

  • Disposer d'une version 3.2.30 ou supérieure.
  • Le serveur GestSup doit avoir un nom de domaine https://exemple.fr et non une adresse IP uniquement
  • Le serveur doit être accèssible en HTTPS

Procédure :

  • Vérifier dans "Administration" > "Système" que l'extension "php_openssl" est bien activée
  • Dans "Administration" > "Paramètre" > "Connecteur" cocher "Activer la liaison IMAP"
  • Dans le champ "Serveur" tapez "imap.gmail.com"
  • Dans le champ "Port" sélectionner "993"
  • Dans le champ "Verification SSL" sélectionner "Activée"
  • Dans le champ "Dossier racine" sélectionner "INBOX"
  • Dans "Adresse de messagerie" renseigner votre adresse mail
  • Dans "Type d'authentification" sélectionner "XOAUTH2 Google"
  • Connectez-vous à la console développeur Google https://console.cloud.google.com/apis/dashboard

  • Créer un nouveau projet :

  • Entrer un nom :

  • Sélectionner le projet :

  • Sélectionner API et service :

  • Sélectionner Bibliothèque :

  • Sélectionner Gmail :

  • Activer :

  • Sélectionner Écran de consentement :

  • Sélectionner Externe :

  • Renseigner les informations :

  • Enregistrer :

  • Enregistrer :

  • Ajouter l'adresse mail :

  • Passer le projet en production :

  • Sélectionner Identifiants :

  • Créer des identifiants Oauth :

  • Ajouter les URI autorisés :

  • Copier le client ID et le secret dans les paramètres du connecteur GestSup puis enregistrer la page:

  • Cliquer sur générer Token

  • Sélectionner le compte Google

  • Continuer

  • Cocher la case et valider

  • Cliquer sur le lien

  • Lancer l'import depuis l'application

Comment réinitialiser le mot de passe de mon compte administrateur ?

Il s'agit d'une procédure à utiliser si vous avez perdu le mot de passe de votre compte administrateur, cette procédure sera à exécuter directement en base de données. À partir de la version 3.1.40 accéder à l'URL : https://monserveur/admin/pwd_recovery.php puis suivez les étapes, pour les versions antérieures utiliser cette procédure :

  • Lancer PHPmyAdmin sur votre serveur GestSup pour accéder à la base de données du logiciel. (exemple : http://monserveur/phpmyadmin)
  • Dans la colonne de gauche, sélectionnez le nom de votre base de données (par défaut bsup)
  • Dans la colonne de gauche dans la liste des tables sélectionner la table tusers
  • Une fois la table sélectionnée aller sur l'onglet rechercher
  • Dans le champ login, tapez votre identifiant puis valider (par défaut admin)
  • Une ligne de résultat doit apparaitre.
  • Dans la colonne password double cliquer sur la valeur actuelle et remplacer par le nouveau mot de passe password
  • Dans la colonne salt double cliquer sur la valeur actuelle et supprimer le contenu
  • Dans la colonne disable vérifier que la valeur est bien à 0.
  • Vous pouvez à présent vous connecter à l'application en utilisant votre identifiant et le mot de passe password
  • Pour information, les utilisateurs qui ne disposent pas d'un accès PHPmyAdmin, peuvent exécuter en SQL la requête suivante et se connecter avec les identifiants admin/password: INSERT INTO tusers (login, password, salt,profile,disable) VALUES ('admin', 'password', '','4', '0');

Attention ! n'oubliez pas de vous connecter au moins une fois avec cet utilisateur afin que le mot de passe soit automatiquement recrypté en base de données.

Comment migrer de la 2.9 à la 3.0.10 ?

  • Réalisez une sauvegarde de votre application, fichiers et base de données (cf Chapitre Sauvegarde et Restauration)
  • Téléchargez la version 3.0.10 depuis la section Téléchargements du site
  • Depuis votre serveur WEB supprimez le contenu du répertoire où est localisée l'application
  • Depuis votre serveur WEB extraire les fichiers de la version 3.0.10 sur le répertoire de votre serveur WEB
  • Recopiez le fichier "./connect.php" depuis votre sauvegarde vers le répertoire de votre serveur WEB
  • Depuis PhpMyAdmin, importez le script "./_SQL/update_2.9_to_3.0.10.sql", sur votre base de données
  • Depuis votre client, videz le cache de votre navigateur web, l'application est désormais disponible

Les nouvelles mises à jour se feront depuis l'interface logiciel dans la section "Administration" > "Mise à jour".

Comment migrer de la 3.0.10 à la 3.0.11 ?

  • Réalisez une sauvegarde de votre application, fichiers et base de données
  • Depuis le menu "Administration" > "Mise à jour" de l'application sélectionner "le canal stable"
  • Cliquez sur Vérifier, un message avec la disponibilité du patch 11 pour la version 3.0.10 doit s'afficher
  • Cliquer sur Télécharger puis Installer
  • Depuis votre client, videz le cache de votre navigateur web, l'application est désormais disponible

Comment migrer de la 3.0.11 à la 3.2.10 ?

Suite a un changement majeur dans la méthode de connexion à la base de données, voici les étapes manuelles de migration à réaliser.

  • Réalisez obligatoirement une sauvegarde de votre application : copier les fichiers et sauvegarder votre base de données obligatoirement par phpmyadmin en vérifiant le jeu de caractères UTF-8.
    • Depuis votre serveur web, copier l'ensemble des fichiers du répertoire de l'application dans votre emplacement de sauvegarde
    • Depuis votre un navigateur, accéder à PhpMyAdmin de votre serveur (exemple : http://monserveur/phpmyadmin)
    • Dans le panel de gauche, sélectionnez votre base de données GestSup nommée par défaut bsup
    • Sélectionner l'onglet "Export", puis exécuter
    • Enregistrer le fichier de base de données dans votre répertoire de sauvegarde
  • Téléchargez la version 3.2.10 depuis la section "Downloads" du site
  • Depuis votre serveur WEB supprimez le contenu du répertoire où est localisée l'application par défaut /var/www/html
  • Depuis votre serveur WEB extraire les fichiers de la version 3.2.10 sur le répertoire de votre serveur WEB
  • Recopier le répertoire "./upload" depuis votre sauvegarde sur le serveur WEB
  • Modifier le fichier "./connect.php", en ajoutant, le nom du serveur, le nom de la base de données, l'utilisateur et le mot de passe de la base de données
  • Supprimer le répertoire "install" à la racine de l'application
  • Depuis PhpMyAdmin, sélectionnez votre base de données dans la liste du menu de gauche, puis importez le script "./_SQL/update_3.0.11_to_3.2.10.sql via l'onglet "Import" et vérifier le jeu de caractères UTF-8
  • Vérifier les droits d'écriture sur le répertoire de l'application
  • Depuis votre client, videz le cache de votre navigateur web, l'application est désormais disponible
  • Connectez-vous à l'application et vérifiez dans la section Administration > Système qu'aucun voyant n'est de couleur rouge.

Les nouvelles mises à jour se feront depuis l'interface logiciel dans la section "Administration" > "Mise à jour".

Comment migrer de la 3.1.X à la 3.2.10 ?

La mise à jour de votre serveur GestSup 3.2.10, est à réaliser comme l'ensemble des patchs de l'application, elle est réalisée automatiquement dans le cadre des procédures d'installation automatique et semi-automatique.
Si vous souhaitez réaliser une installation manuelle de la version 3.2.10 depuis votre serveur en version 3.1.X, vous pourrez suivre la procédure ci-après.

  • Réaliser une sauvegarde de votre base de données via PhpMyAdmin, et de l'ensemble des fichiers de l'application
  • Téléchargez la version 3.2.10 depuis la section "Downloads" du site
  • Extraire le contenu du fichier gestsup_3.2.10.zip
  • Transférez l'ensemble des fichiers sur votre serveur GestSup, à l'exception du fichier "connect.php" et du répertoire "/install"
  • Connectez-vous à votre base de données via PhpMyAdmin, sélectionner votre base de données, puis sur l'onglet "Importer" puis importer les patch un à un exemple : "./_SQL/update_3.1.49_to_3.1.50.sql" puis "./_SQL/update_3.1.50_to_3.2.0.sql" puis "./_SQL/update_3.2.0_to_3.2.1.sql" etc...
  • Sur votre navigateur, supprimez le cache.
  • Connectez-vous à l'application et vérifiez dans la section Administration > Système qu'aucun voyant n'est de couleur rouge.

Comment automatiser l'installation de nouvelles mises à jour ?

Afin de faciliter l'installation de nouvelles versions de l'application ou de nouveaux patchs, vous pouvez installer de manière automatique ces dernières.
Vous conservez le canal de mises à jour paramétré, Bêta ou Stable. Attention veillez à bien réaliser une sauvegarde automatique avant la planification des mises à jour automatique.
Vous allez dans cette procédure voir comment créer une tâche planifiée sur votre serveur GestSup qui exécutera une URL qui mettra l'application à jour.
Dans l'application aller dans le menu "Administration" > "Système" puis sélectionner et copier la clé privée.
Crée une tâche planifiée sur votre serveur d'application :

Pour Linux :

echo "0 0 * * 0 root php /var/www/html/admin/update.php autoinstall YOURPRIVATEKEY > /dev/null" >> /etc/crontab && service cron reload

Pour Windows :

schtasks /create /tn "GS_UPDATE" /sc weekly /tr "C:\wamp64\bin\php\phpX.X.X\php

Comment remonter l'état de connectivité des équipements IP ?

Afin de remonter des équipements obsolètes il est possible de planifier un ping de l'ensemble des équipements IP.
Une fois la tâche lancée les fiches de chaque équipement seront mises à jour, en faisant apparaitre dans le titre un drapeau vert, orange ou rouge. La couleur rouge signifie que l'équipement n'a jamais répondu sur le réseau, orange l'équipement n'a pas répondu dans les 60 derniers jours. Enfin la couleur verte signifie que l'équipement a répondu sur le réseau il y a moins de 60 jours.
La date où l'équipement a répondu pour la dernière fois est consultable soit en passant la souris devant le drapeau, soit lors de l'export des matériels.
Pour remonter cette information, vous pouvez soit manuellement aller sur une fiche d'équipement et cliquer sur ping, soit planifier un ping de tous les équipements à la fréquence que vous souhaitez. C'est ce dernier point que nous allons détailler, à noter que les pings sont envoyés avec un intervalle d'une seconde pour ne pas surcharger le réseau.
Dans l'application aller dans le menu "Administration" > "Système" puis sélectionner et copier la clé serveur.
Créer une tâche planifiée sur votre serveur d'application :
Pour Linux :

echo "0 0 * * 0 root php /var/www/html/core/ping.php globalping YOURPRIVATEKEY > /dev/null" >> /etc/crontab && service cron reload

Pour Windows :

schtasks /create /tn "GS_UPDATE" /sc weekly /tr "C:\wamp64\bin\php\phpX.X.X\php.

Comment activer le SSO ?

L'objectif de la fonction SSO (Single Sign-On) est de supprimer la phase d'authentification pour les utilisateurs connectés sur un PC Windows raccordé à un domaine Active Directory.
L'application récupère automatiquement l'identifiant de l'utilisateur connecté, si ce dernier dispose d'un compte GestSup alors il est automatiquement redirigé sur ses tickets.
Pour cette configuration vous devrez disposer: d'un serveur Windows 2kX contrôleur de domaine, d'un serveur GestSup avec Apache sous Debian 11, d'un client Windows 10.
Pour l'exemple nous utiliserons les noms suivants: dc1.gestsup.local (192.168.0.1), web.gestsup.local (192.168.0.2), w10.gestsup.local.

  • Sur le serveur DC : Créer un enregistrement DNS de type A correspondant à votre serveur WEB (web.gestsup.local > 192.168.0.2)
  • Sur le serveur DC : Créer un enregistrement DNS de type PTR correspondant à votre serveur WEB (192.168.0.2 > web.gestsup.local)
  • Sur le serveur WEB : Mettre à jour l'OS

    Tapez la commande

    apt-get update && apt-get upgrade -y
    
  • Sur le serveur WEB : Configurer le serveur DNS pour pointer vers votre DC

    Tapez la commande

    nano /etc/resolv.conf
    

    Ajouter les lignes

    nameserver 192.168.0.1
    search gestsup.local
    
  • Sur le serveur WEB :

    Installer les paquets suivants

    apt install libapache2-mod-auth-gssapi krb5-user -y
    

    Laisser vide si l'interface vous pose des questions

  • Sur le serveur WEB : Configurer le client Kerberos

    Tapez la commande

    nano /etc/krb5.conf
    

    Ajouter les lignes

    [libdefaults]
        default_realm = GESTSUP.LOCAL
        kdc_timesync = 1
        ccache_type = 4
        forwardable = true
        proxiable = true
        fcc-mit-ticketflags = true
    [realms]
        GESTSUP.LOCAL = {
            kdc = dc1.gestsup.local
            admin_server = dc1.gestsup.local
        }
    [domain_realm]
        .gestsup.local = GESTSUP.LOCAL
    [logging]
        kdc              = SYSLOG:NOTICE
        admin_server     = SYSLOG:NOTICE
        default          = SYSLOG:NOTICE
    
  • Sur le serveur WEB: Configurer le client Kerberos

    Tapez les commandes suivantes et vérifier les résultats et les éventuelles erreurs

    ping dc1
    ping dc1.gestsup.local
    kinit administrateur@GESTSUP.LOCAL
    klist
    
  • Sur le serveur DC: Créer un utilisateur dédié à l'authentification exemple "kerb".

  • Sur le serveur DC: Sur la fiche de l'utilisateur "kerb"

    Cocher "L'Utilisateur ne peut pas changer de mot de passe"

    Cocher "Le mot de passe n'expire jamais"

    Cocher "Ce compte prend en charge le chiffrement AES 128 bits via Kerberos."

    Cocher "Ce compte prend en charge le chiffrement AES 256 bits via Kerberos."

  • Sur le serveur DC: Ouvrir une fenêtre Powershell en tant qu'administrateur

    Tapez la commande

    ktpass -princ HTTP/web.gestsup.local@GESTSUP.LOCAL  -mapuser kerb@GESTSUP.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL  -pass PasswordDeKerb  -out C:\web.keytab
    
  • Sur le serveur WEB: Copier le fichier "c:\web.keytab" dans "./etc/apache2/"

  • Sur le serveur WEB: chown www-data:root /etc/apache2/web.keytab
  • Sur le serveur WEB: chmod 640 /etc/apache2/web.keytab

  • Sur le serveur WEB réaliser un test

    Tapez les commandes

    kvno HTTP/web.gestsup.local@GESTSUP.LOCAL
    klist -e
    klist -e -k -t /etc/apache2/web.keytab
    kinit -k -t /etc/apache2/web.keytab HTTP/web.gestsup.local
    klist
    
  • Sur le serveur WEB: Configurer Apache avec les directives suivantes

    Ajouter au vhost

    < Location />
        AuthType GSSAPI
        AuthName "GestSup"
        GssapiCredStore keytab:/etc/apache2/web.keytab
        Require valid-user
    </Location>
    
  • Sur le serveur WEB: Relancer Apache

    service apache2 restart
    
  • Sur le client: Pour Internet Explorer et Chrome, ajouter l'URL FQDN du serveur web dans les sites de la zone de sécurité "Intranet Local"

  • Sur le client: Pour Firefox tapez dans la barre d'adresse, "about:config" puis ajouter l'URL au paramètre "network.automatic-ntlm-auth.trusted-uris" et "network.negotiate-auth.trusted-uris"
  • Sur le client: Configurer l'application GestSup, dans "Administration" > "Connecteur" > "LDAP" cochez "Activer SSO" et valider via le bouton de test
  • Sur le client: Connectez-vous à l'application via son nom FQDN: http://web.gestsup.local

Comment passer au HTTP2 ?

Si vous disposer d'un serveur accessible en HTTPS, vous pouvez passer sur le protocole HTTP2 plus rapide et plus sûr.
Pour vérifier le protocole actuellement utilisé sur votre serveur, vous pouvez utiliser Chrome via F12 > Onglet Network, et afficher la colonne protocole.
Les étapes décrites ci-après sont à réaliser si vous avez utilisé la procédure d'installation Debian 10 présente sur cette page.

apt-get install php-fpm
a2dismod php8.2
a2enconf php8.2-fpm
a2enmod proxy_fcgi
a2dismod mpm_prefork
a2enmod mpm_event
a2enmod ssl
a2enmod http2
systemctl restart apache2

Il sera nécessaire de reconfigurer les paramètres PHP via le fichier suivant :

nano /etc/php/8.2/fpm/php.ini

Vous pouvez modifier le pm.max_children à 10 dans le fichier suivant :

nano nano /etc/php/8.2/fpm/pool.d/www.conf

Afin de prendre en compte les changements :

/etc/init.d/php8.2-fpm restart

Comment migrer un serveur Windows vers un serveur Linux ?

Si vous disposer d'un serveur sur Windows que vous avez utilisé pendant vos tests, et que vous souhaitez migrer l'application vers un serveur Linux pour le passer en production, vous pourrez alors suivre les étapes ci-après.
Les opérations sont à réaliser après avoir installé l'ensemble des prés requis sur le serveur Linux cf "Installation Linux"

  • Étape 1 : Arrêtez le service apache sur le serveur Windows
  • Étape 2 : Sur le serveur Windows, exporter la base de données via PhpMyAdmin
  • Étape 3 : Transférer l'ensemble des fichiers de l'application du serveur Windows vers le répertoire /var/www/html du serveur Linux
  • Étape 4 : Sur le serveur Linux, modifiez le fichier connect.php avec les paramètres de votre base de données
  • Étape 5 : Sur le serveur Linux, importez la base de données en ligne de commande ou via PhpMyAdmin
  • Étape 6 : Vous pourrez également vérifier les droits des fichiers de l'application.
  • Étape 7 : Contrôlez dans l'application, via la section Administration > Système, que tous les voyants sont vert.

Comment installer et configurer Fail2ban ?

Si vous possédez un serveur exposé sur Internet, il est nécessaire de le protéger des attaques externes.
Pour se faire l'outil Fail2ban, permet de bloquer automatiquement les adresses IP qui tente de vous attaquer.
Les étapes décrites ci-après sont à réaliser si vous disposez d'un serveur Debian 11.

Installation

apt-get install fail2ban

Configuration

Éditer le fichier de configuration

nano /etc/fail2ban/jail.d/defaults-debian.conf

Ajouter les éléments suivants, en modifiant les paramètres liés au mail et en vérifiant l'emplacement des logs d'accès et d'erreur Apache. À noter : si vous ne souhaitez pas avoir d'alerte par mail, il est possible de commenter avec des # chaque ligne de la section DEFAULT.

[DEFAULT]
destemail = dest@domain.com
sender = from@domain.com
sendername = Fail2Ban
mta = sendmail
action = %(action_mwl)s
ignoreip = 127.0.0.1/8

[sshd]
enabled = true

[apache-auth]
enabled = true
port = http,https
logpath  = /var/log/apache2/error*.log

[apache-noscript]
enabled = true
logpath = /var/log/apache2/error*.log

[apache-badbots]
enabled = true
port = http,https
logpath = /var/log/apache2/access*.log
bantime = 48h
maxretry = 1

[apache-overflows]
enabled  = true
port = http,https
logpath = /var/log/apache2/error*.log
maxretry = 2

[apache-nohome]
enabled  = true
port = http,https
logpath = /var/log/apache2/error*.log
maxretry = 2

[php-url-fopen]
enabled = true
port = http,https
logpath = /var/log/apache2/access*.log

Afin de prendre en compte les changements :

service fail2ban restart

Test et vérifications

Vérifier l'activation des jails :

fail2ban-client status

Tester avec votre navigateur d'accéder à l'URL suivante à 6 reprises :

https://monserveur/test.php

Consulter les logs :

tail -f /var/log/fail2ban.log

Suppression d'une IP bannie :

fail2ban-client set apache-noscript unbanip ADRESSE_IP

Comment installer CrowdSec ?

Si vous possédez un serveur exposé sur Internet, il est nécessaire de le protéger des attaques externes.
Pour se faire l'outil CrowdSec, permet de bloquer automatiquement les adresses IP qui tente de vous attaquer.
Les étapes décrites ci-après sont à réaliser si vous disposez d'un serveur Debian.

Installation des dépôts CrowdSec :

curl -s https://packagecloud.io/install/repositories/crowdsec/crowdsec/script.deb.sh | bash

Mise à jour des dépots :

apt update && apt upgrade

Installation de CrowdSec :

apt install crowdsec

Installation d'un bouncer iptables pour le blocage :

apt install crowdsec-firewall-bouncer-iptables

Installation de collections additionnelles :

cscli collections install crowdsecurity/mysql
cscli collections install crowdsecurity/iptables
cscli collections install crowdsecurity/mariadb

Rechargement de CrowdSec :

systemctl reload crowdsec

Vérifications :

cscli bouncers list
cscli decisions list
cscli collections list
cscli metrics

Comment installer un certificat SSL autosigné sur Debian pour avoir un accès HTTPS local ?

Si vous disposez d'un serveur Debian non exposé sur Internet et que vous souhaitez bénéficier d'un accès HTTPS sur votre réseau local, vous pourrez suivre cette procédure

Génération d'un certificat autosigné valide pendant 1 an, spécifiez l'adresse IP du serveur dans "Common Name" :

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt

Si vous disposez d'une autorité de certification locale, vous pourrez générer une demande de certificat via la commande suivante :

openssl req -new -newkey rsa:2048 -nodes -keyout /etc/ssl/private/private.key -addext "subjectAltName = DNS:*.domain.local" -out /etc/ssl/certs/request.csr

Sauvegarder le fichier de configuration Apache par défaut SSL :

cp /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-available/default-ssl.conf.bak

Remplacer le contenu du fichier de configuration avec les valeurs, ci-après, en modification l'adresse IP :

nano /etc/apache2/sites-available/default-ssl.conf

<IfModule mod_ssl.c>
    <VirtualHost _default_:443>
            ServerAdmin your_email@example.com
            ServerName MON_IP
            DocumentRoot /var/www/html
            ErrorLog ${APACHE_LOG_DIR}/error.log
            CustomLog ${APACHE_LOG_DIR}/access.log combined
            SSLEngine on
            SSLCertificateFile      /etc/ssl/certs/apache-selfsigned.crt
            SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key
            <FilesMatch "\.(cgi|shtml|phtml|php)$">
                            SSLOptions +StdEnvVars
            </FilesMatch>
            <Directory /usr/lib/cgi-bin>
                            SSLOptions +StdEnvVars
            </Directory>
    </VirtualHost>
</IfModule>

Activer les modules Apache :

a2enmod ssl
a2enmod headers

Activer le site ssl :

a2ensite default-ssl

Vérifier et redémarrer Apache :

apache2ctl configtest
systemctl restart apache2

Comment configurer le connecteur Entra ID (Azure AD) ?

Prérequis :

  • Disposer d'une version 3.2.32 ou supérieure de l'application
  • Le serveur GestSup doit disposer d'un certificat SSL pour un accès en HTTPS, ou bien vous devez avoir un navigateur sur le serveur afin de vous connecter en localhost.

Si vous utilisez un serveur Windows bien que non recommandé, il sera nécessaire de configurer les certificats CURL dans votre php.ini

  • Dans "Administration" > "Paramètre" > "Connecteur" cocher "Activer la liaison Entra ID (Azure AD)"
  • Connectez-vous sur le portail Microsoft Azure avec l'adresse mail à configurer sur le connecteur https://portal.azure.com/
  • Dans le menu sélectionner "Microsoft Entra ID" :

  • Puis "Inscription d'application" :

  • Puis "Nouvelle inscription" :

  • Renseigner un nom d'application, multilocataire, Web :

  • Cliquez sur "API autorisées" :

  • Cliquez sur "Ajouter une autorisation" :

  • Cliquez sur "Microsoft Graph" :

  • Cliquez sur "Autorisations déléguées" :

  • Rechercher et ajouter "User.Read.All" :

  • Accorder le consentement de l'administrateur :

  • Cliquez sur "Accueil" :

  • Cliquez sur "Entra ID (Azure AD)" :

  • Cliquez sur "Rôle et administrateur" :

  • Cliquez sur "Lecteur général" :

  • Cliquez sur "Ajout des affections" :

  • Tapez le nom de l'application Entra ID (Azure AD) :

  • Revenir via l'accueil à la section "Inscription d'application"

  • Sélectionnez votre application :

  • Cliquez sur "Ajout un secret" :

  • Copiez la valeur du secret :

  • Collez dans l'application :

  • Copiez également l'ID client et l'ID du locataire :

  • Testez le connecteur :

  • Lancez une synchronisation :

Comment régler un problème d'incohérence de versions ?

Si une différence est trouvée entre la version de l'application au niveau fichiers et base de données, alors un message d'erreur dans la section Administration > Système.

Cela peut résulter d'une erreur lors de la mise à jour de l'application, soit la base de données a été mise à jour soit les fichiers, mais pas les deux.

Pour corriger ce défaut, vous pourrez suivre l'une des procédures suivantes :

  • Cas 1 : Base de données en version 3.2.33 et fichiers en 3.2.32

    Dans ce cas il est nécessaire de télécharger le patch "patch_3.2.33.zip" depuis la section téléchargement du site, puis d'extraire son contenu à la racine de votre serveur Web (/var/www html) en écrasant les fichiers.

  • Cas 2 : Base de données en version 3.2.32 et fichiers en 3.2.33

    Dans ce cas il est nécessaire de mettre à jour la base de données, avec PhpMyadmin importer le script "update_3.2.32_to_3.2.33.sql" présent dans le répertoire "_SQL" de votre serveur.