Guide d'installation Windows
Vous trouverez dans ce guide les instructions d'installation et de configuration sous Windows.
- Terminologie
- Protocole d’installation
- Versions supportées
- Installations
- Configuration DigDash après installation
Ce document décrit comment installer DigDash sur Windows.
Pour l'installation sur Linux, se reporter au document Guide d'Installation Linux.
Pour une mise à jour d'une installation existante, se reporter au document Guide de mise à jour.
Terminologie
Acronymes
Digdash | <DD Install> : dossier à avoir ( exemple : digdash_enterprise_2022R2_p20230103_64) qui permet l'installation Digdash |
Protocole d’installation
Listes des modules en dehors de DigDash
L’ensemble des serveurs doit avoir à minima les installations suivantes :
- Système de fichier
- Installation Microsoft JDK 11
- Tomcat 9
- WebApps DigDash
Liste des composants de production:
- Remplacer ADSWRAPPER par OpenDJ ( Pour les environnements de production)
- Remplacer H2 par une Base de données: PostGres ou MariaDB
Liste des composants optionnels:
- Reverse Proxy : Apache pour Windows
Versions supportées
Les versions supportées sont les suivantes :
- Tomcat 9 : dernier patch
- OpenDJ (recommandé) : version 4.6.2 et ultérieure
- OpenLDAP (non recommandé) : dernier patch 2.5.x au dernier patch 2.6.x par défaut du gestionnaire de package
- MariaDB : version de l'OS ou dernière version LTS dernier patch
- Apache2 : dernier patch
Installations
Système de fichiers
- Créer un répertoire “logs” à la racine du répertoire souhaité (L):
- logs : héberge les fichiers de log des applications qui tourne sur le serveur en local
- Créer un répertoire “digdash” à la racine du E.
- Dans le répertoire digdash, créer 4 répertoires :
- tools : héberge les outils livrés par DigDash qui peuvent interagir avec lui (import tool, backup tools)
- webapps : les modules DigDash applicatifs: (studio, adminconsole, dashboard, ddenterpriseapi)
- ldapdigdash : héberge la configuration et les données du LDAP
- appdata : héberge les données DigDash
- Dans chaque répertoire créé aux étapes précédentes, créer un répertoire default
- Copier le fichier digdash.properties à la racine du répertoire digdash du E:
digdash.properties
- Ouvrir le fichier digdash.properties et rajouter les lignes suivantes :
Créer les fichiers de logs à la racine du répertoire digdash :E
log4j2_api.properties
Créer le fichier log4j2_api.properties à la racine du répertoire.
Copier le code suivant :
log4j2_dash.properties
Créer le fichier log4j2_dash.properties à la racine du répertoire.
Copier le code suivant:
log4j2_studio.properties
Créer le fichier log4j2_studio.properties à la racine du répertoire.
Copier le code suivant:
Déploiement des WebApps
- Aller dans <DD Install>\apache-tomcat\webapps et copier les webapps de DigDash et le répertoire ROOT dans E:/digdash/webapps/default.
- Supprimer le war adswrapper.war
Installation Microsoft JDK 11 (optionnel si déjà installé)
- Télécharger Microsoft JDK 11 : https://docs.microsoft.com/fr-fr/java/openjdk/download ou utiliser le binaire disponible dans le Zip d’installation partenaire_installation_initial.zip.
- Lancer l’installation.
Installation de Tomcat 9
- Télécharger TomCat 9 : https://tomcat.apache.org/download-90.cgi (Binary Distributions - > Core -> 32-bit/64-bit Windows Service Installer).
- Lancer apache-tomcat-9.X.XX.exe.
- Accepter le contrat de licence.
- Choisir le composant Tomcat (Service Startup & Native) et le Start Menu Item.
- Laisser les paramètres de configuration par défaut.
- Renseigner le chemin de l’installation de l’openjdk installé à l’étape 1.
- Définir le répertoire d’installation de TomCat 9.
- Lancer l’installation de TomCat 9.
- Lancer la page http://localhost:8080 afin de vérifier le bon fonctionnement de TomCat.
- Aller dans le répertoire d’installation de TomCat 9 puis dans le répertoire bin et lancer tomcat9w.exe.
Modifier les paramètres dans l’onglet Java.
*- Adapter les chemins aux futurs répertoires digdash :
Ddigdash.properties.path=E:\digdash\digdash.properties
Pour que les caractères spéciaux soient bien pris en compte, ajouter le paramètre -Dfile.encoding=UTF-8 à la fin de la variable JAVA_OPTS comme ci-dessous :
- Adapter les chemins aux futurs répertoires digdash :
server.xml
- Ouvrir le fichier server.xml présent dans le répertoire \Apache Software Foundation\Tomcat 9.0\conf.
- Remplacer le chemin des webapp à déployer.
- Ajouter la valve de log et la valve sécurisation à la suite.
context.xml
- Ouvrir le fichier context.xml présent dans le répertoire \Apache Software Foundation\Tomcat 9.0\conf.
- Ajouter la balise XML suivante dans la section Context :
Installation d'OpenDJ (recommandé)
Paramétrage initial
- Télécharger le fichier d'installation (opendj-4.x.x.msi) de OpenDJ à l’adresse suivante : https://github.com/OpenIdentityPlatform/OpenDJ/releases
- Lancer l’installation en double-cliquant sur le fichier opendj-4.x.x.msi.
- Pour le répertoire d’installation, conserver l’emplacement par défaut (C:/Program Files (x86)/opendj).
- Aller dans le repertoire d’installation C:\Program Files (x86)\OpenDJ et lancer le “setup.bat” en tant qu’administrateur.
- Remplir les Paramètres serveur en veillant à enregistrer le mot de passe saisi.
- Dans les Options de topologie, laisser la valeur par défaut Il s’agira d’un serveur autonome.
- Remplir les Données de répertoire et cocher la case Créer uniquement une entrée de base (dc=digdash,dc=com).
- Vérifier les valeurs saisies et cocher Exécuter le serveur en tant que service Windows.
- Cliquez sur Terminer.
Quand l’installation est finie, vérifier si le service est lancé puis lancer un terminal en administrateur pour le paramétrage supplémentaire.
Paramétrage supplémentaire
- Se placer dans le répertoire d’installation d’openDJ
cd C:\Program Files (x86)\OpenDJ\bat - Les fichiers LDIF peuvent être téléchargés en cliquant sur le lien suivant .
- Créer les organisations grâce au fichier “neworganisation.ldif” ci-dessous
ldapmodify.bat --port 389 --bindDN "cn=Directory Manager" --bindPassword adminOpenDJ1 "C:\Users\digdash\Downloads\neworganisation.ldif" dn: ou=default,dc=digdash,dc=com
objectClass: organizationalUnit
ou: default
- Pour créer un vérificateur de mot de passe :
- Utiliser la commande dsconfig.bat, puis se connecter avec les identifiants du Directory Manager et accepter les certificats.
- Aller dans le menu 29 puis sélectionner “create a new Password Validator” > sélectionner “Character Set Password Validator” > saisir “Custom Character-set Password Validator” > “true” > “true” > puis configurer 4 character-set comme suit :
1:abcdefghijklmnopqrstuvwxyz
1:ABCDEFGHIJKLMNOPQRSTUVWXYZ
1:0123456789
1:!"#$%&'()*+,-./:;\<=>?@[]^_`{|}~➡ Le résultat doit ressembler à cela :
- Une fois la configuration terminée, faire “finish” puis quitter le “dsconfig”.
- Pour le second vérificateur de mot de passe, nous pouvons utiliser une ligne de commande car celle-ci ne contient pas de caractères spéciaux :
dsconfig create-password-validator --bindDN "cn=Directory Manager" --bindPassword adminOpenDJ1 --validator-name "Custom length Password Validator" --set min-password-length:12 --set enabled:true --type length-based --no-prompt
- Appliquer les deux vérificateurs de mot de passe :
dsconfig set-password-policy-prop --bindDN "cn=Directory Manager" --bindPassword adminOpenDJ1 --policy-name "Default Password Policy" --set password-validator:"Custom Character-set Password Validator" --set password-validator:"Custom length Password Validator" --no-prompt
- Définir la politique de mot de passe pour les utilisateurs grâce au fichier “ppolicy.ldif” ci-dessous
ldapmodify.bat --port 389 --bindDN "cn=Directory Manager" --bindPassword adminOpenDJ1 "C:\Users\digdash\Downloads\ppolicy.ldif" dn: cn=ppolicy,ou=default,dc=digdash,dc=com
objectClass: top
objectClass: subentry
objectClass: pwdPolicy
cn: ppolicy
pwdAttribute: userPassword
pwdAllowUserChange: TRUE
pwdCheckQuality: 1
pwdExpireWarning: 600
pwdFailureCountInterval: 30
pwdGraceAuthNLimit: 5
pwdInHistory: 5
pwdLockout: TRUE
pwdLockoutDuration: 900
pwdMaxAge: 0
pwdMaxFailure: 5
pwdMinAge: 0
pwdMustChange: FALSE
pwdSafeModify: FALSE
subtreeSpecification: {base "ou=users", specificationFilter "!(uid=admin)" }
- Définir une seconde politique de mot de passe pour l’admin grâce au fichier “ppolicy-admin.ldif” ci-dessous
ldapmodify.bat --port 389 --bindDN "cn=Directory Manager" --bindPassword adminOpenDJ1 "C:\Users\digdash\Downloads\ppolicy-admin.ldif" dn: cn=ppolicy-admin,ou=default,dc=digdash,dc=com
objectClass: top
objectClass: subentry
objectClass: pwdPolicy
cn: ppolicy-admin
pwdAttribute: userPassword
pwdAllowUserChange: TRUE
pwdCheckQuality: 1
pwdFailureCountInterval: 30
pwdGraceAuthNLimit: 5
pwdInHistory: 5
pwdLockout: FALSE
pwdMaxAge: 0
pwdMinAge: 0
pwdMustChange: FALSE
pwdSafeModify: FALSE
subtreeSpecification: {base "ou=users", specificationFilter "(uid=admin)" }
- Modifier la politique de mot de passe pour autoriser les mots de passe pré encodés (utile pour les restaurations dans digdash).
dsconfig.bat set-password-policy-prop --policy-name "Default Password Policy" --set allow-pre-encoded-passwords:true --hostname localhost --trustAll --bindDN "cn=directory manager" --bindPassword adminOpenDJ1 --no-prompt - Créer un utilisateur admin pour digdash via le fichier “create_user_admin.ldif” ci-dessous :
ldapmodify.bat --port 389 --bindDN "cn=Directory Manager" --bindPassword adminOpenDJ1 "C:\Users\digdash\Downloads\create_user_admin.ldif" dn: uid=admin,ou=default,dc=digdash,dc=com
objectClass: shadowAccount
objectClass: inetOrgPerson
cn: Admin Domain Default
sn: Default
uid: admin_default
- Lui affecter les droits nécessaires en utilisant les fichiers “add_admin_right.ldif” et “add_admin_right2.ldif” ci-dessous
ldapmodify.bat --port 389 --bindDN "cn=Directory Manager" --bindPassword adminOpenDJ1 "C:\Users\digdash\Downloads\add_admin_right.ldif" dn: ou=default,dc=digdash,dc=com
changetype: modify
add: aci
aci: (target ="ldap:///ou=default,dc=digdash,dc=com")(targetattr = "userpassword || shadowlastchange")(version 3.0; acl "allow write on userpassword and shadowlastchange for admin"; allow(write) (userdn = "ldap:///uid=admin,ou=default,dc=digdash,dc=com");)
aci: (target ="ldap:///ou=default,dc=digdash,dc=com")(targetattr = "userpassword || shadowlastchange")(version 3.0; acl "allow read,write on userpassword and shadowlastchange for auth users"; allow(read) (userdn = "ldap:///all");)
aci: (target ="ldap:///ou=default,dc=digdash,dc=com")(targetattr = "userpassword || shadowlastchange")(version 3.0; acl "allow read on userpassword and shadowlastchange for anonymous"; allow(selfwrite) (userdn = "ldap:///anyone");)
aci: (target ="ldap:///ou=default,dc=digdash,dc=com")(targetattr = "*")(version 3.0; acl "allow write on * for admin"; allow(all) (userdn = "ldap:///uid=admin,ou=default,dc=digdash,dc=com");)
aci: (target ="ldap:///ou=default,dc=digdash,dc=com")(targetattr = "*")(version 3.0; acl "allow read on * for anonymous"; allow(read) (userdn = "ldap:///all");)
ldapmodify.bat --port 389 --bindDN "cn=Directory Manager" --bindPassword adminOpenDJ1 "C:\Users\digdash\Downloads\add_admin_right2.ldif" dn: uid=admin,ou=default,dc=digdash,dc=com
changetype: modify
add: ds-privilege-name
ds-privilege-name: config-read
ds-privilege-name: password-reset
ds-privilege-name: unindexed-search
- Générer un mot de passe pour l’administrateur et le conserver en mémoire pour plus tard
ldappasswordmodify.bat --port 389 --bindDN "cn=Directory Manager" --bindPassword adminOpenDJ1 --authzID "uid=admin,ou=default,dc=digdash,dc=com"
Fonction utile
L'opération ci-dessous ne fait pas partie de l'installation.
Il peut néanmoins être utile de la connaître pour une utilisation ultérieure.
Étendre la limite pour les recherches LDAP
Il est possible d'étendre la limite de recherche du LDAP à plus de 1000 utilisateurs avec le fichier “extend_search_limit.ldif” ci-dessous
ldapmodify.bat --port 389 --bindDN "cn=Directory Manager" --bindPassword adminOpenDJ1 "C:\Users\digdash\Downloads\extend_search_limit.ldif" |
dn: uid=admin,ou=default,dc=digdash,dc=com changetype: modify add: ds-rlim-size-limit ds-rlim-size-limit: 10000 |
Installation de OpenLDAP (Non recommandé)
Exécution de l’installer
Télécharger le fichier : https://www.maxcrc.de/en/download-en/
Documentation de référence : https://www.maxcrc.de/en/openldap-for-windows-installation-en/
- Lancer le .exe.
- Accepter la licence.
- Sélectionner le répertoire de destination.
- Laisser la personnalisation de la configuration sélectionnée par défaut.
- Définir l’adresse du server name/IP Address en 127.0.0.1
Définir un mot de passe fort pour le Password : éviter les coats (“; “) dans le mot de passe
- Choisir le format BDB.
- Définir un mot de passe ROOT fort : éviter les coats (“; “) dans le mot de passe.
- Lancer l’installation.
- Vérifier si le service est bien lancé.
- Arrêter le service OpenLDAP.
- Accéder au dossier d’installation.
- Ouvrir le fichier slapd.conf.
- Récupérer le mot de passe ROOT.
- Récupérer le dossier des fichiers OpenLDAP ici :
- Ouvrir le fichier slapd.
- Remplacer le mot de passe ROOT par celui sauvegardé à l’étape précédente.
- Copier le fichier slapd et le dossier ldifdata dans le répertoire d’installation de l’OPENLDAP.
- Relancer le service LDAP.
Vérification du fonctionnement de l’OpenLDAP et création du domaine digdash et du compte admin
- Ouvrir une console Windows en mode administrateur
- Accéder au répertoire d'installation en ligne de commande ( cd MonRepertoireDinstallation)
- Vérifier le lancement du OpenLDAP :
- Créer l’organisation digdash
- Définir la politique de password
- Créer le user admin
- Créer le mot de passe admin
- Relancer OPENLDAP pour s’assurer du bon fonctionnement.
Fonction utile
L'opération ci-dessous ne fait pas partie de l'installation.
Il peut néanmoins être utile de la connaître pour une utilisation ultérieure.
Étendre la limite pour les recherches LDAP
- Accéder au dossier d’installation.
- Ouvrir le fichier slapd.conf.
- Ajouter la ligne :
sizelimit 10000
Installation de MariaDB
PostgreSQL et MySQL sont aussi compatibles.
Exécution de l’installer
- Accéder au site https://mariadb.com/downloads/ et télécharger la dernière version du logiciel en choisissant comme OS : MS Windows (64-bit)
- Exécuter le fichier .msi pour lancer l’installation et cliquer sur suivant
- Choisir le mot de passe root de la base de données :
- Cliquer sur suivant et installer MariaDB
- Vérifier la sécurité du dossier C:/Program Files/MariaDB 10.10 pour ne donner que les droits : Lecture et exécution; affichage du contenu du dossier; lecture aux utilisateurs.
Configuration des bases de données
- Ouvrir l’invite de commande en tant qu’administrateur et lancer MariaDB
mariadb.exe -u root -p
- Créer les bases de données nécessaires domaine_module (exemple de domaine : default, dev, prod)
CREATE DATABASE default_comment;
CREATE DATABASE default_ddentry;
Création des utilisateurs et assignation des droits
- Créer un utilisateur pour chaque base de données domaine_user_module
CREATE USER 'default_user_ddaudit'@'localhost' IDENTIFIED BY 'mynewpassword';
CREATE USER 'default_user_comment'@'localhost' IDENTIFIED BY 'mynewpassword';
CREATE USER 'default_user_ddentry'@'localhost' IDENTIFIED BY 'mynewpassword';
- Attribuer les droits aux utilisateurs sur les bases de données
GRANT ALL PRIVILEGES ON default_ddaudit.* TO 'default_user_ddaudit'@'localhost';
GRANT ALL PRIVILEGES ON default_ddentry.* TO 'default_user_ddentry'@'localhost';
Mise à jour de MariaDB
Pour une mise à jour mineure (10.10.1 vers 10.10.2 par exemple), il faut :
- S’assurer via la release note de la nouvelle version, qu’il n’ y pas à se préoccuper des données
- Télécharger la nouvelle version (exemple : 10.10.2) et l’exécuter, la mise à jour devrait se faire automatiquement
- Redémarrer le serveur MariaDB
Configuration DigDash après installation
Lancement de Digdash
- Redémarrer le Service Tomcat.
- Ouvrir le répertoire d'installation de Tomcat (\Apache Software Foundation\Tomcat 9.0\bin\Tomcat9w.exe), puis double cliquer sur le fichier Tomcat9w.exe, cliquer sur Stop et Start.
- Vérifier le déploiement des war dans le dossier d’installation E:/digdash/webapps/default.
- Accéder à DigDash sur l’adresse suivante : http://localhost:8080/adminconsole
Le login/ mot de passe sera admin/ admin.
Branchement de Digdash au serveur OpenDJ (ou OpenLDAP) installé
- Aller dans http://localhost:8080/adminconsole/, Configuration -> Paramètres serveur -> Serveurs -> LDAP.
- Port : 389
- Utilisateur : uid=admin, ou=default,dc=digdash,dc=com
- Mot de passe : mot de passe admin de OpenDJ (ou OpenLDAP)
- Cliquer ensuite sur Requêtes LDAP, et renseigner les champs comme ci-dessous :
Modification du mot de passe superviseur et création du compte LDAP
Modification du mot de passe superviseur
Aller dans Configuration -> Paramètres serveur > Serveurs -> Serveur Enterprise et entrer un nouveau mot de passe dans le champ Mot de passe du Superviseur.
Création du compte LDAP
- Aller dans Configuration -> Gestion des utilisateurs -> Utilisateurs.
- Créer un nouvel utilisateur admin et lui attribuer tous les rôles et groupes d'autorisation.
- Dans le champ Mot de passe, entrer le nouveau mot de passe du superviseur défini ci-dessus.
Configuration des bases de données
Base de données Données d'audit
Aller dans Configuration -> Paramètres serveur -> Base de données -> Données d'audit et renseigner ici l’URL, l’utilisateur et le mot de passe.
URL : jdbc:mariadb://localhost:3306/default_ddaudit
Cette solution permet de sécuriser l’accès à la base de données d'audit.
Base de données Commentaires
Aller dans Configuration -> Paramètres serveur -> Base de données -> Commentaires et renseigner ici l’URL, l’utilisateur et le mot de passe.
URL : jdbc:mariadb://localhost:3306/default_comment
Cette solution permet de sécuriser l’accès à la base de données de commentaires.
Base de données Saisie de données
Aller dans Configuration -> Paramètres serveur -> Base de données -> Saisie des données.
Cocher la case Activer la saisir de données et sélectionner une base de données dans la liste déroulante.
Il faut, au préalable, avoir créé une connexion à la base de données depuis le Gestionnaire des connexions aux de données dans le Studio. Consultez la page Gestionnaire des connexions aux bases de données pour plus de détails.
Entrer default.user.ddentry pour l'utilisateur et le mot de passe défini à l'étape précédente.
Le nom défini dans le champ Nom de connexion est celui qui apparaîtra dans la liste déroulante de sélection de la base de données.
Services DigDash
Vérifier que les services DigDash sont activés et que la mémoire maximale est bien adaptée à la capacité du serveur, il faut laisser au moins 4 Go pour le système.