Outils pour utilisateurs

Outils du site


install

Post-installation

Paramétrage

Le fichier de configuration de l'instance du serveur EzGED est par défaut:

C:\nchp\etc\nchp\ezged\instance.conf

Sauvegardes

C'est le point le plus important à prendre en compte une fois l'installation terminée. Ne considérez jamais que tout va bien se passer et que cela n'arrive qu'aux autres.

Il y a 2 éléments que vous DEVEZ sauvegarder :

  • La base de données.
  • Les fichiers intégrés dans EzGED.

Base de données

Un travail de sauvegarde de la base de données est créé par le système EzGED au cours de l'installation. Les paramètres de ce travail sont expliqués dans le tableau ci-dessous :

Paramètre Description Valeur par défaut
path Le chemin du répertoire où les sauvegardes sont déposées C:\nchp\var\nchp\instance
rotation Combien de sauvegardes sont conservées (tri décroissant par date) 5

Par défaut donc, EzGED procède à une sauvegarde de la base de données tous les jours à 23h00. Elle dépose chaque nouvelle sauvegarde dans le répertoire C:\nchp\var\nchp\instance et ne conserve que les 5 plus récentes.

Nb: si vous souhaitez ne jamais éliminer de sauvegardes parmi les plus anciennes vous devez affecter la valeur -1 au paramètre rotation.

Si ce travail ne devait pas être mis en place suite à l'installation déclarez-le sans tarder comme suit:

  1. Rendez-vous sur l'interface d'administration, onglet travaux.
  2. Sélectionnez Sauvegarde de base de données dans l'arborescence Assistants de création de travaux.
  3. Choisissez :
    1. Le chemin. Par exemple C:\nchp\var\nchp\instance.
    2. Le nombre de rotations. L'assistant vous propose 2 par défaut. Je vous conseille d'augmenter ce nombre (5 par exemple).
  4. Validez.

Les fichiers

Nous vous conseillons fortement de mettre en place des sauvegardes et réplications des disques sur lesquelles travaillent EzGED et surtout de ceux où se trouvent vos espaces de stockage EzGED.

Rappel : UNE BONNE SAUVEGARDE EST UNE SAUVEGARDE “OFF LINE”, c'est à dire sortie physiquement du système informatique. Elle sera alors à l’épreuve, de toute attaque, quelque soit son origine. Les plus terribles étant les attaques de virus, ou malveillance d'utilisateurs interne, intentionnelles ou accidentelles.

Sécurité

URLs pour whitelist

Services EzDEV

https://ged.ezdev.fr/*
https://ged01.ezdev.fr/*
https://ged02.ezdev.fr/*
https://svn01.ezdev.fr/svn/ezged/compile/*
https://svn02.ezdev.fr/svn/ezged/compile/*
https://ezged-updates-testing.ezdev.fr/svn/ezged/compile/*
https://siren01.ezdev.fr/*
https://siren02.ezdev.fr/*
https://dev.ezdev.fr/*

Python

https://pypi.org/

Pour les connecteurs Office 365:

https://graph.microsoft.com/v1.0/
https://microsoft.com/devicelogin
https://login.microsoftonline.com

MySQL

Avant toute mise en production assurez-vous d'avoir définit un mot de passe pour le compte root du serveur MySQL (d'autant plus nécessaire si vous décidez de laisser l'accès à phpmyadmin depuis une autre machine).

En ligne de commande:

>C:\nchp\mysql\mysql.exe -u root
mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('newpwd') WHERE User = 'root';
mysql> FLUSH PRIVILEGES;

Via phpmyadmin

Pour des raisons de compatibilité avec notre module mysql en python nous utilisons la fonction OLD_PASSWORD plutôt que PASSWORD.

Plus d'informations sur la sécurisation du compte root: http://dev.mysql.com/doc/refman/4.1/en/default-privileges.html

Apache

Nous ne pouvons malheureusement pas garantir la sécurité des outils tiers comme Apache et phpmyadmin. Même en disposant des dernières mises à jour, voir des derniers antivirus, vous n'êtes pas à l'abri du dernier virus à la mode, non encore référencé par les antivirus et exploitant une faille de sécurité de ces logiciels. la seule solution fiable est donc de fermer la porte au net à ces outils.

La première chose que nous voulons faire est de restreindre l'accès à phpmyadmin :

Nous allons modifier la configuration ci-dessous :

Alias "/mysql" "C:/nchp/tools/phpMyAdmin"
<Directory "C:/nchp/tools/phpMyAdmin">
Options Indexes FollowSymLinks Includes
AllowOverride All
Allow from all
</Directory>

Par la suivante :

Alias "/mysql" "C:/nchp/tools/phpMyAdmin"
<Directory "C:/nchp/tools/phpMyAdmin">
Options Indexes FollowSymLinks Includes
AllowOverride All
Deny from all
Allow from 127.0.0.1
</Directory>

Ainsi l'accès au répertoire C:\nchp\tools\phpMyAdmin par l'intermédiaire de l'alias /mysql n'est possible que depuis la machine locale. Vous pouvez le restreindre à une plage locale d'IP également exemple : Allow from 192.168.1.0/24 127.0.0.1 Enfin, nous vous conseillons d'installer un certificat sur le serveur pour réaliser du HTTPS afin que les mots de passe d'accès à EzGED soient cryptés

WEBDAV

Configurer un répertoire d'accès Webdav sur Apache

Créer votre répertoire de configuration Webdav (il recevra les mots de passe et la base de données de verrous sur les fichiers), ici nous utiliserons C:/nchp/var/spool/ezged/instance/webdav (créer donc le répertoire Webdav )

Nous allons maintenant créer un utilisateur pour l'authentification Webdav. En ligne de commande dos, positionnez vous dans ce répertoire. En utilisant un logiciel fournit avec apache2 (htdigest), créer un fichier de mot de passe. Ici je vais créer un utilisateur chorus_user dans le fichier auth.

D:\>C:
C:\>cd \nchp\var\spool\ezged\instance\webdav
C:\nchp\var\spool\ezged\instance\webdav>c:\nchp\apache2\bin\htdigest.exe -c auth webdav chorus_user
Adding password for chorus_user in realm webdav.
New password: ****
Re-type new password: ****

Vous obtenez un fichier auth dans le répertoire cd \nchp\var\spool\ezged\instance\webdav

Ouvrez le fichier httpd.conf dans c:\nchp\apache2\conf Activez les modules suivants en enlevant le # en début de ligne

LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule dav_lock_module modules/mod_dav_lock.so

Ajouter en fin de fichier la configuration suivante :

DavLockDB "C:/nchp/var/spool/ezged/instance/webdav/DavLock"

Alias /webdav "C:/nchp/var/spool/ezged/instance/ocr/wait/adullact"

<Directory "C:/nchp/var/spool/ezged/instance/ocr/wait/adullact">
    Options Indexes FollowSymLinks Includes
    AllowOverride All
    Allow from all
</Directory> 

<Location /webdav>
    DAV On
    DavDepthInfinity on
    AuthType Digest
    AuthName "webdav"
    AuthUserFile "C:/nchp/var/spool/ezged/instance/webdav/auth"
    AuthDigestDomain "C:/nchp/var/spool/ezged/instance/webdav"
    Require valid-user
</Location>

Redémarrer Apache2. Afin de tester votre configuration, essayez de monter un disque réseau sur http://127.0.0.1/webdav, avec l'utilisateur chorus_user et votre mot de passe. testez dans l'explorateur l'ajout de fichier.

EzGED

N'oubliez pas de changer le mot de passe , voir le compte admin d'EzGED. Vous pouvez également dans les sécurités d'EzGED restreindre l'accès à certains comptes de la même manière qu'Apache.

Vous pouvez également changer l'accés à EzGED sur votre routeur pour éviter d'utiliser le port 80 depuis l'extèrieur.

Dans la règle de translation d'adresse NAT de votre routeur vous avez dû configurer

que le port 80 de l'IP Fixe est renvoyée sur le serveur GED sur le port 80 configurez par exemple le port 8023 de l'ip fixe est renvoyé sur le serveur GED sur le port 80

l'adresse d'accès à EzGEd sera alors http://monipfixe:8023/ezged Le port 80 étant attaqué par les hackers systématiquement, alors que les autres le sont beaucoup moins.

Mises-à-jour

Apache (téléchargement)

Pour windows des binaires sont téléchargeables sur https://www.apachelounge.com/download/

Pour d'autres sources voir aussi https://httpd.apache.org/docs/current/platform/windows.html#down

Il est important de télécharger une version compilée avec VC15 (Visual Studio 2017). Prendre également une version 64bits.

PHP (téléchargement)

Binaires pour windows à télécharger sur https://windows.php.net/download#php-7.4

Idem que pour Apache prendre une version 64bits et compilée avec VC15 (Visual Studio 2017).

Préférez toujours rester sur la même version majeure que la version actuelle. Un passage sur une version majeure supérieure (ex: passer de php 7 à php 8) n'est pas recommandé et pourrait entraîner des problèmes

Installation Apache + PHP

1. Arrêter le service ged (facultatif) puis apache
2. Renommer le répertoire C:\nchp\Apache24 pour le sauvegarder (retour arrière éventuel)
3. Extraire le zip apache téléchargé à la place de l'ancien (C:\nchp\Apache24)
4. Récupérer l'ancien "httpd.conf" pour remplacer le nouvellement installé (C:\nchp\Apache24\conf\httpd.conf)
5. Extraire le zip php dans C:\nchp\Apache24\php7
6. Récupérer l'ancien "php.ini" pour remplacer le nouvellement installé (C:\nchp\Apache24\php7\php.ini)
7. Redémarrer le service Apache (et éventuellement GED)
8. Tester

Apache

Accès aux app React

Depuis EzGED 3.5.24808 et l'arrivée du viewer PDF développé via React, il est nécessaire pour que le viewer puisse être servi par Apache d'ajouter la ligne de configuration suivante (au niveau global):

AliasMatch "^/react/([^/]+)(.*)" "D:/nchp/usr/local/nchp/ezged/www3.src/react/$1/build/$2"

Il faut aussi s'assurer d'avoir la directive suivante:

DirectoryIndex index.php index.html

Le contexte où mettre cette directive peut dépendre de votre configuration. Sachant qu'elle peut déjà exister et il faudra juste ajouter index.html Se référer à la documentation: https://httpd.apache.org/docs/2.4/mod/mod_dir.html#directoryindex

Maintenance

Si vous souhaitez effectuer une opération de maintenance de EzGED sans arrêter le service vous devez veiller aux deux éléments suivants:

  • Arrêter le serveur de travaux.
  • Couper l'accès à EzGED.

N.B: après avoir couper l'accès à EzGED veillez bien à supprimer les sessions utilisateurs existantes.

Couper l'accès à EzGED

Couper l'accès aux utilisateurs

Vous pouvez empêcher les utilisateurs de se connecter à EzGED de deux manières.

1/En verrouillant tout les comptes utilisateurs qui ne doivent pas y accéder pendant la maintenance.

2/En configurer la restriction d'IP sur tout les comptes utilisateurs qui doivent être bloqués.

Couper l'accès globalement

Vous pouvez aussi modifier la configuration Apache de telle sorte qu'il ne soit plus possible d'accéder à EzGED en dehors de l'adresse locale.

On utilise la directive Require local.

Selon votre configuration il faudra la mettre en place sur le Directory pointant sur le site EzGED et/ou sur vos virtualhost s'il y en a.

Exemple

Alias "/ezged" "C:/nchp/usr/local/nchp/ezged/www"
<Directory "F:\nchp/usr/local/nchp/ezged/www3.src">
	Allowoverride All
	Options Indexes FollowSymLinks Includes
	Require local

Et dans un virtualhost on peut ajouter une Location avec une restriction pour un accès local

<VirtualHost *:443>
    <Location />
        Require local
    </Location>
</VirtualHost>

Il suffit ensuite de redémarrer Apache. Cette méthode a l'avantage de couper l'accès aussi aux appels vers les services web de EzGED.

Remise à Zéro

Au préalable on arrête bien entendu le service EzGED.

Supprimer la base de données

mysql -u root -p drop database <nom_de_la_base>

C'est faisable bien sûr via PhpMyadmin ou HeidiSQL par exemple.

Supprimer les fichiers

Supprimer les volumes qui sont, par défaut, dans le répertoire C:\nchp\var\nchp\instance\EMDOM\DEFTSA

Si jamais vous rencontrez des problèmes de stockage une fois EzGED redémarré sur la base vierge, peut-être qu'il vous faudra recréer à la main le premier volume 00000001

Si vous avez plusieurs espaces de stockages vous pourrez aussi supprimer les répertoires correspondants à ces espaces de stockage (la racine étant C:\nchp\var\nchp\instance)

Initialiser la base de données

On ouvre un terminal, on se place dans le répertoire C:\nchp\usr\local\nchp\ezged\bin et on exécute le script python d'initialisation de la base de données.

cd C:\nchp\usr\local\nchp\ezged\bin
python init_db.py 1 1 1 1
install.txt · Dernière modification: 2024/06/13 13:42 par florian