Windows Server 2019

Introduction

Suivez ces instructions pour configurer Relution 5 sur Windows Server 2019. Ces instructions utilisent MariaDB comme magasin de données et nginx comme proxy inverse.

Pour plus de sécurité et de performances, nous recommandons d’installer Relution, MariaDB et nginx sur des machines distinctes. L’installation sur une seule machine ou sur une ou plusieurs machines virtuelles est également possible.

Ce guide couvre l’installation et la configuration d’une instance simple de Relution.

La prise en charge de l’installation native sur Windows (serveur) sera terminée à long terme. Nous recommandons l’installation sur Linux dans un environnement Docker.

Prérequis

Avant de commencer, assurez-vous que :

  • Les machines peuvent se connecter à Internet
  • Vous disposez de droits d’administration
  • Vous disposez d’un certificat SSL valide pour votre nom d’hôte externe

Les certificats auto-signés ne fonctionnent pas, car les appareils mobiles ne leur font pas confiance. Vous pouvez installer manuellement votre certificat racine sur un appareil pour qu’il fasse confiance à votre certificat. Cette approche n’est pas recommandée.

Les certificats de [Let’sEncrypt →] (https://letsencrypt.org/) ont été testés et fonctionnent. Notez que les appareils plus anciens peuvent ne pas faire confiance à ces certificats, car Let’s Encrypt n’a été établi que récemment en tant qu’autorité de certification (AC).

Installation de MariaDB

Allez sur MariaDB → et téléchargez MariaDB LTS version minimale 10.11 ou supérieure en 64 bits pour Windows.

Vous pouvez également utiliser la dernière version LTS à la place. Il s’agit de la version 10.11.5, et nous recommandons d’utiliser le package Windows Installer.

Veillez à utiliser un mot de passe racine sécurisé.

Suivez les instructions à l’écran pour l’installation.

Configuration de MariaDB

Mettez à jour la configuration de MariaDB avec les options requises par Relution :

  • Allez dans "%ProgramFiles%\NMariaDB 10.11\Ndata".
  • Ouvrez “my.ini” dans un éditeur de texte en tant qu’administrateur (par exemple Notepad).
  • Trouvez la section “\N[mysqld\N]”.

Ajoutez ces paramètres à la section “\N-[mysqld\N]” :

collation-server=utf8mb4_general_ci
character-set-server=utf8mb4
max_allowed_packet=1G
innodb_file_per_table=1

## N'est plus nécessaire/supporté pour MariaDB >= 10.2.2
## Si vous avez une version plus ancienne, mettez à jour ou activez ceci
#innodb_large_prefix=on
#innodb_file_format=Barracuda

La section “[mysqld]” peut déjà contenir un paramètre “charset server”. Supprimez ce paramètre et remplacez-le par le paramètre ci-dessus.

Si vous mettez à jour une ancienne version de MariaDB, il se peut que vous ayez encore les paramètres innodb_large_prefix et innodb_file_format dans votre fichier my.ini. Ces paramètres ne sont plus nécessaires et leur présence peut empêcher le service MariaDB de démarrer correctement.

Redémarrez le service MariaDB en utilisant le gestionnaire de services (services.msc) ou en utilisant l’invite de commande. Notez que pour des raisons de compatibilité ascendante, le service porte le nom de “MySQL”.

net stop MySQL
net start MySQL

Vérifier l’installation

Vous devriez maintenant pouvoir vous connecter à cette instance de MariaDB. Vous pouvez utiliser le raccourci “MySQL Client (MariaDB 10.11 (x64))”, que le programme d’installation devrait avoir créé dans votre menu démarrer. Une fois la connexion établie, vous devriez obtenir un résultat similaire à celui-ci :

Enter password : ********
Bienvenue sur le moniteur MariaDB.  Les commandes se terminent par ; ou \g.
Votre identifiant de connexion MariaDB est 11
Version du serveur : 10.11.5-MariaDB distribution binaire mariadb.org

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab et autres.

Tapez 'help;' ou '\h' pour obtenir de l'aide. Tapez '\c' pour effacer la déclaration d'entrée actuelle.

MariaDB [(none)]> exit
Bye

Alternativement, vous pouvez utiliser le client HeidiSQL qui est une partie optionnelle de l’installateur, ou le MySQL Workbench pour vous connecter à l’instance.

Créer une base de données

Ensuite, créez la base de données relution et un utilisateur de base de données associé. Cet utilisateur sera utilisé par le service Relution pour se connecter à la base de données.

Connectez-vous à la base de données en utilisant un client SQL. L’utilisation d’une application GUI comme HeidiSQL ou MySQL Workbench est recommandée pour cette tâche. Exécutez les instructions SQL suivantes :

CREATE DATABASE relution CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci' ;
CREATE USER 'relution'@'localhost' IDENTIFIED BY '$PASSWORD' ;
ACCORDER TOUS LES PRIVILÈGES SUR RELUTION.* À 'RELUTION'@'localhost' IDENTIFIÉ PAR '$MOT DE PASSE' ;
CREATE USER 'relution'@'%' IDENTIFIED BY '$PASSWORD' ;
ACCORDER TOUS LES PRIVILÈGES SUR relution.* À 'relution'@'%' IDENTIFIÉ PAR '$MOT DE PASSE' ;
RINCER LES PRIVILÈGES ;

Remplacez $PASSWORD par un mot de passe aléatoire et sécurisé. Nous recommandons l’utilisation d’un gestionnaire de mot de passe pour créer un mot de passe aléatoire long (par exemple, 32 caractères ou plus). Ce mot de passe sera utilisé par le service Relution et n’a pas besoin d’être saisi manuellement par un administrateur. Vous pouvez donc utiliser un mot de passe fort.

Ceci créera une nouvelle base de données nommée relution et un nouvel utilisateur de base de données nommé relution, qui a tous les droits pour cette base de données, sera créé. Cet utilisateur sera utilisé par le service Relution pour accéder à la base de données. Si un accès administratif à la base de données est nécessaire à des fins de maintenance, il est recommandé de créer un utilisateur de base de données distinct à cette fin.

Veillez à sauvegarder le mot de passe. Il sera nécessaire plus tard pour configurer la connexion à la base de données de Relution.

Assurez-vous que vous pouvez vous connecter à la base de données avec cet utilisateur. Ouvrez le raccourci Invite de commande (MariaDB 10.6 (x64)) dans le menu Démarrer et entrez la commande suivante :

mysql -u relution -p relution

Entrez le mot de passe lorsque cela vous est demandé. Vous devriez voir l’invite MariaDB comme celle ci-dessus. Tapez exit et appuyez sur entrée pour terminer la session.

Configuration du pare-feu

Si vous installez Relution sur une autre machine, vous devrez ouvrir le port 3306 sur cette machine pour que Relution puisse communiquer avec MariaDB. Si Relution est installé sur la même machine, vous pouvez sauter ces étapes.

  • Ouvrez Windows Defender Firewall with advanced security.
  • Sélectionnez ‘Incoming rules
  • Cliquez sur Nouvelle règle... sur le côté droit de la page.
  • Sélectionnez Programme
  • Cliquez sur Suivant
  • Sélectionnez “Chemin d’accès à ce programme”.
  • Utilisez Browse... pour sélectionner le fichier exe du service MariaDB (C:\NProgram Files \NMariaDB 10.6\Nbin\Nmysqld.exe) \NCliquez sur \NSuivant \NIl n’y a pas de connexion possible. Sélectionnez Autoriser la connexion \N- Cliquez sur Suivant \N- Activez Domaine et/ou Privé. et/ou Privé - en fonction de votre infrastructure \N- Cliquez sur \N- Suivant \N- Donnez un nom à la règle \N- Cliquez sur \NQuitter \N.

Relution Installation

Installer Java Runtime

Téléchargez et installez une version supportée de Java. Si le programme d’installation demande si le JAVA_HOME doit être configuré, sélectionnez Oui.

Nous recommandons actuellement d’utiliser OpenJDK 17 (JRE). La plupart des fournisseurs considèrent cette version comme une version de support à long terme (LTS). Assurez-vous de lire notre [journal des modifications →] (https://hub.relution.io/changelog/) pour obtenir des informations à jour.

Relution ne fonctionne pas avec Java version 11.0.15 sur Windows

Il existe plusieurs fournisseurs d’OpenJDK, dont Eclipse Temurin, Oracle, RedHat et d’autres. Pour Windows, nous recommandons Eclipse Temurin →.

Configurer l’environnement ####

Les étapes suivantes ne sont nécessaires que si le programme d’installation n’a pas défini le JAVA_HOME`. Le programme d’installation d’AdoptOpenJDK peut le faire pour vous. Si cette option est activée, vous pouvez sauter ces étapes.

  • Cliquez sur Démarrer et cherchez Variables d'environnement.
  • Ouvrez Editer les variables d'environnement du système.
  • Cliquez sur l’onglet “Avancé”.
  • Sélectionnez Variables d'environnement.
  • Cliquez sur Nouveau... dans les Variables système.
  • Entrez JAVA_HOME comme nom de la variable.
  • Entrez le répertoire d’installation du JRE/JDK comme valeur de la variable.
  • Cliquez sur OK

Vérifier si JAVA_HOME est défini

Si une fenêtre d’invite de commande était ouverte auparavant, vous devez la fermer avant que les modifications ne prennent effet. Ouvrez une nouvelle invite de commande Windows et tapez la commande suivante.

echo %JAVA_HOME%

Vous devriez voir apparaître la valeur que vous avez saisie dans les variables d’environnement ci-dessus. Si ce n’est pas le cas, vérifiez vos paramètres.

Installer Relution

Téléchargez le [paquetage Relution actuel →] (https://repo.relution.io/package/latest/relution-package.zip) et extrayez-le.

Notez que Windows crée par défaut un nouveau répertoire pour les fichiers extraits, ainsi relution est situé dans le répertoire relution-package.

Configuration de base de Relution

Ouvrez un éditeur de texte (par exemple Notepad) en tant qu’administrateur et collez-y le contenu suivant :

    relution :
      system :
        admin :
          password : %SYSTEM_ADMIN_PASSWORD% (mot de passe)
          email : %SYSTEM_ADMIN_EMAIL%
      server :
        externalURL : %EXT_HOSTNAME_URL%
      base de données :
        type : mysql
        url : jdbc:mariadb://<db-hostname>/relution?useServerPrepStmts=true
        nom d'utilisateur : relution
        mot de passe : %MYSQL_PASSWORD%

Veillez à modifier le fichier pour l’adapter à votre environnement. Les paramètres suivants doivent être remplacés :

PlaceholderDescription
%EXT_HOSTNAME_URL%L’adresse externe du serveur Relution, par exemple https://mdm.example.com
%MYSQL_PASSWORD%Le mot de passe de l’utilisateur de la base de données Relution
%SYSTEM_ADMIN_PASSWORD%Le mot de passe initial de l’administrateur système. **Le mot de passe initial de l’administrateur système doit être modifié après la première connexion, puis cette ligne doit être supprimée.
%SYSTEM_ADMIN_EMAIL%L’adresse e-mail de l’administrateur système.

Envisagez d’utiliser un générateur de mot de passe pour créer le premier mot de passe de votre compte administratif. Nous vous recommandons de changer le mot de passe après votre première connexion.

Enregistrez le fichier en tant que application.yml dans le répertoire d’installation de Relution (par exemple "%ProgramFiles%\relution\application.yml").

Vérifier l’installation

Pour vérifier que l’installation est correcte jusqu’à ce point, démarrez Relution au premier plan. Ouvrez une fenêtre de console en tant qu’administrateur et exécutez les commandes suivantes :

cd "%ProgramFiles%\relution"
windows-bin\relution-foreground.bat

Attendez que la Relution soit lancée. Dès que la sortie du terminal a cessé de s’actualiser, vous devriez pouvoir vous connecter à Relution à l’aide d’un navigateur :

http://localhost:8080

Si tout fonctionne, vous devriez voir le portail Relution et pouvoir vous connecter avec le compte administratif, qui est défini dans le fichier application.yml. Pour des raisons de sécurité, vous devriez changer le mot de passe de l’administrateur après vous être connecté. Pour des raisons de sécurité, envisagez de supprimer la configuration de l’organisation et de l’administrateur dans le fichier application.yml.

Si vous obtenez des erreurs, vérifiez que vous avez effectué toutes les étapes ci-dessus. Utilisez Ctrl+C" pour arrêter Relution et attendez que Relution s’arrête. Si Relution ne s’arrête pas, utilisez à nouveau “Ctrl+C” pour forcer le service à s’arrêter.

Configurer Relution en tant que service

Installez Relution en tant que service Windows, en utilisant le script batch install_service.bat. Ouvrez une fenêtre de console en tant qu’administrateur et exécutez les commandes suivantes :

cd "%ProgramFiles%\relution".
windows-bin\install_service.bat

Le service devrait démarrer automatiquement après l’installation. Sinon, vous pouvez utiliser le gestionnaire de services ou net start relution. Tapez dans l’invite de commande pour démarrer le service.

Configurer le pare-feu

Si vous installez nginx sur une autre machine, vous devez ouvrir le port 8080 pour permettre à nginx de communiquer avec Relution. Si Relution est installé sur la même machine, vous pouvez sauter ces étapes.

  • Ouvrez Windows Defender Firewall avec sécurité avancée.

  • Cliquez sur ‘Incoming rules

  • Sélectionnez Nouvelle règle... dans le menu d’action

  • Sélectionnez Programme

  • Cliquez sur Suivant

  • Sélectionnez “Chemin d’accès à ce programme”.

  • Parcourez…` et sélectionnez le fichier de service de Relution

    (C:\NProgram Files \NLa Relution \NWindows-bin \Nnssm.exe) \NCliquez sur Suivant. \N- Sélectionnez \NAutoriser la connexion \N- Cliquez sur \NSuivant \N- Sélectionnez \NDomaine \Net/ou \NPrivé \N, et cliquez sur \NSuivant. et/ou Privé , en fonction de votre infrastructure \NCliquez sur Suivant \N- Donnez un nom à la règle \N-Cliquez sur Finir.

Installation de Nginx

Nginx (“engine x”) est utilisé comme proxy inverse pour permettre l’accès à Relution et fournir simultanément un cryptage SSL/TLS. Sans Nginx ou un proxy similaire, l’accès à Relution n’est possible que localement via localhost.

Préparation

Vous avez reçu un certificat SSL valide et une clé de certificat de votre fournisseur SSL (Autorité de certification, CA). Si vous souhaitez utiliser l’agrafage OCSP, vous devez également disposer d’un fichier de chaîne de certificats. Agrafage OCSP →

Conversion de certificats SSL →.

Copiez ces fichiers sur le serveur où vous installerez nginx. Déplacez ces fichiers dans les répertoires appropriés et sauvegardez-les si nécessaire.

La clé privée ne doit être lisible que par l’administrateur. Veillez à conserver ce fichier en lieu sûr. Toute personne ayant accès à cette clé peut signer des données en votre nom et décrypter des informations privées qui vous sont envoyées.

Si vous utilisez Let’s Encrypt, veuillez vous référer à ACME Client Implementations pour connaître les clients disponibles pour Windows. Le Certbot officiel n’est disponible que pour les systèmes d’exploitation de type UNIX. ACME Client Implementations →
Certbot →

Installer nginx

Téléchargez la dernière version stable de nginx for Windows → dans votre répertoire de téléchargement.

Faites un clic droit sur le fichier nginx-x.xx.zip et cliquez sur Extraire tout....

Déplacez le répertoire extrait nginx-x.xx vers %ProgramFiles% et renommez-le en renommez-le en nginx.

move "%HOMEPATH%\Downloads\nginx-1.14.0\nginx-1.14.0" "%ProgramFiles%\nginx"

Personnalisez le répertoire source si nécessaire.

Par défaut, Windows crée un nouveau répertoire pour les fichiers extraits afin que le répertoire nginx-x.xx puisse être situé dans un autre répertoire nginx-x.xx. Assurez-vous de déplacer le répertoire qui contient le fichier nginx.exe.

Configurer nginx pour Relution

Copiez votre certificat SSL et votre clé privée dans %ProgramFiles%\nginx\server.pem et %ProgramFiles%\nginx\server.key.

Copiez %ProgramFiles%\relution\proxy\nginx_windows_sample.conf vers %ProgramFiles%\nginx\conf\nginx.conf (écrase le fichier existant si nécessaire).

copier `%ProgramFiles%\relution\proxy\nginx_windows_sample.conf` `%ProgramFiles%\nginx\conf\nginx.conf`.

Ouvrez le fichier dans un éditeur de texte qui peut travailler avec les fins de ligne Linux (par exemple, Notepad++) et modifiez le fichier pour l’adapter à votre environnement si nécessaire. Si vous avez installé Relution sur un autre serveur, assurez-vous de spécifier l’adresse IP dans proxy_pass http://127.0.0.1:8080; en conséquence.

Vérifiez votre configuration nginx avec la commande suivante :

"%ProgramFiles%\nginx\nginx.exe" -t

Vous devriez obtenir les messages “la syntaxe est correcte” et “le test est réussi”. Si vous obtenez des erreurs, vérifiez que votre configuration nginx ne contient pas de fautes de frappe, etc., comme indiqué dans le message d’erreur.

Installer nginx en tant que service Windows

Copiez nssm.exe et install_service.bat du répertoire proxy de Relution vers le répertoire d’installation de nginx.

cd "%ProgramFiles%\nginx"
copier "%ProgramFiles%\relution\proxy\nssm.exe" .
Copier "%ProgramFiles%\relution\proxy\install_service.bat" .

Exécutez le script batch install_service.bat en tant qu’administrateur pour installer nginx en tant que service Windows.

"%ProgramFiles%\relution\proxy\install_service.bat"

Pare-feu

Ouvrez les ports 80 et 443 dans le pare-feu pour permettre l’accès via HTTP et HTTPS.

  • Ouvrez le “Pare-feu Windows avec sécurité avancée”.
  • Naviguez jusqu’à ‘Règles d’entrée
  • Dans la section “Actions”, cliquez sur “Nouvelle règle…”.
  • Sélectionnez “Programme”.
  • Cliquez sur Suivant
  • Sélectionnez Ce chemin de programme.
  • Utilisez Browse... pour sélectionner le fichier exécutable du service Relution
    • C:\Programmes\nginx\nginx.exe`. Cliquez sur “Next” (Suivant)
    • Sélectionnez Allow connection (Autoriser la connexion). Cliquez sur Suivant
    • Sélectionnez Public. Cliquez sur Suivant
    • Entrez un nom pour la règle et cliquez sur Complete.