Project

General

Profile

Comment installer iGestis » History » Version 9

Olivier Bitsch, 09/18/2023 06:15 AM

1 3 Olivier Bitsch
Comment installer iGestis
2
=========================
3
4 1 Olivier Bitsch
Introduction
5
------------
6
7
iGestis vous permet :
8 2 Olivier Bitsch
9 1 Olivier Bitsch
 * d'implémenter un PGI (Progiciel de Gestion Intégré) conçu et adapté pour les petites entreprises, collectivités, artisans, ...
10
 * d'utiliser un annuaire de votre choix (OpenLDAP, Active Directory,...)
11
 * de créer rapidement des comptes d'employés, de clients et de founisseurs avec des comptes d'accès à l'aide de son interface conviviale
12
 * de centraliser la gestion de plusieurs sociétés avec une seule instance d'installation.
13
14
iGestis a besoin d'une base de données fonctionnelle pour stocker toutes les informations.
15
Pour le moment, seul Mysql est supporté.
16
17 6 Olivier Bitsch
Installation du Debian Buster
18
-----------------------------
19 1 Olivier Bitsch
20 7 Olivier Bitsch
> iGestis vient d'être mis à niveau pour être compatible avec Debian Buster et PHP 7.3 !!
21 4 Olivier Bitsch
22 1 Olivier Bitsch
Nous fournissons une installation simplifiée d'iGestis grâce au paquet Debian.
23
24 6 Olivier Bitsch
Créez le fichier (attention, si vous aviez déjà ce fichier, il sera écrasé)
25 4 Olivier Bitsch
26 6 Olivier Bitsch
    echo "deb http://open.iabsis.com/debian buster main" | tee > /etc/apt/sources.list.d/iabsis.list
27 1 Olivier Bitsch
28 5 Olivier Bitsch
Si vous souhaitez récupérer les sources
29
30 6 Olivier Bitsch
    echo "deb-src http://open.iabsis.com/debian/archives igestis main" | tee >> /etc/apt/sources.list.d/iabsis.list
31 5 Olivier Bitsch
32 4 Olivier Bitsch
Ajoutez le certificat (si nécessaire)
33 1 Olivier Bitsch
34
    wget http://open.iabsis.com/open.iabsis.com.asc -O- | apt-key add -
35
36
Rafraichissez la liste des paquets
37
38
    apt-get update
39
40
Et finalement installez iGestis
41
42
    apt-get install igestis
43
44
iGestis va vous poser quelques questions.
45
46
 * Choose the wanted authentication method: choose your actual directory (OpenLDAP or Active Directory). If none, choose **Internal**
47
 * Choose the admin account name : changez ce compte uniquement si celui proposé ne vous plait pas. Ce compte doit exister dans annuaire le cas échéant.
48
 * Specify the uris for the directory : remplacez ici par l'adresse de votre serveur. En cas d'utilisation de Samba4, gardez l'url ldapi proposée.
49
 * Specify the directory base tree : saisissez le nom de domaine FQDN (exemple: *domain.local*)
50
 * Specify the directory admin account for the directory : Le bind dn du compte Administrator. Par exemple **dc=admin,dc=domain,dc=local** pour OpenLDAP ou **Administrator@domain.local** pour Samba4 ou Active Directory.
51
 * Please specify the admin password for the directory : Le mot de passe de votre compte administrateur.
52
 * Create a user in iGestis when present in the directory ? Préférez **Yes**
53
 * Configure database for igestis with dbconfig-common? Yes
54
 * Password of the database's administrative user: Votre mot de passe Root pour Mysql.
55
 * MySQL application password for igestis: Laissez vide pour générer un mot de passe aléatoire
56
 * Web server to reconfigure automatically : Gardez coché *apache2* pour une configuration automatique de Apache2.
57
58
Ouvrez votre navigateur, saisissez l'adresse de votre serveur et ajoutez **/igestis**, par exemple : http://ip_de_votre_serveur/igestis
59
60
Installation Manuelle
61
---------------------
62
63
Vous pouvez télécharger iGestis sur l'adresse https://github.com/olivierb2/igestis/releases
64
Ce guide vous permet de configurer iGestis version 3.
65
66
Une fois copié sur le serveur, extraire le fichier avec votre gestionnaire d'archive préféré ou utilisez la commande
67
`tar xfz igestis-xx.tar.gz` ou `unzip igestis-xx.zip`
68
Déplacez le dossier extrait dans un emplacement non accessible par apache, par example **/usr/share/** ou **/opt**.
69
Configurez apache avec un alias ou créez un lien symbolique afin de rendre le dossier **public** accessible par apache.
70
Par exemple `ln -s /usr/share/igestis/public/ /var/www/igestis`
71
Un Alias pour apache pourrait être **Alias /igestis /usr/share/igestis/public**
72
73
Vous pouvez désormais utiliser votre navigateur préféré afin d'accéder à l'interface web de votre serveur : **http://ip_de_votre_serveur/igestis**
74
Lors de cette première connexion, vous accéderez à une page de vérification de l'installation permettant de consulter les paramètres de votre serveur.
75
76
### Configuration
77
78
Pendant la configuration, vous pourrez rafraichir la page afin de vérifier ce que vous avez modifié.
79
80
#### Correction des problèmes de permissions
81
82
Dans un premier temps, autorisez les droits en écriture par le compte Apache sur les répertoires **documents** et **cache**.
83
En fonction de votre distribution Linux, faites un `chown www-data documents cache` ou `chown apache documents cache`.
84
85
#### Créez une base MySQL
86
87
Créez une base de données vide sous MySQL. Depuis la ligne de commande, vous pouvez accéder au shell de Mysql avec :
88
89
	mysql -uroot -p
90
91
Et créez une base pour iGestis :
92
93
	create database igestis;
94
	create user 'igestis'@'localhost' identified by 'igestis1234';
95
	grant all privileges on igestis.* to 'igestis'@'localhost';
96
	quit
97
98
Remplacez igestis1234 par un mot de passe de votre choix (ou aléatoire).
99
100
#### Créez le fichier config.ini.
101
102
Créez ensuite un fichier `config.ini` en copiant le fichier `config.ini-template.ini` grâce à la commande
103
`cp config/igestis/config.ini-template.ini config/igestis/config.ini`. Utilisez votre éditeur de texte préféré
104
et modifiez le fichier, comme par exemple `nano config/igestis/config.ini`. Changez les valeurs des quatre premières lignes
105
afin de l'adapter à votre configuration définie précédemment.
106
107
	MYSQL_HOST = "localhost"
108
	MYSQL_DATABASE = "igestis"
109
	MYSQL_LOGIN = "igestis"
110
	MYSQL_PASSWORD = ""
111
112
Pensez également à changer la variable **ENCRYPT_KEY** en générant une clef aléatoire. Cette clef sera utilisée pour stocker
113
les données sensibles dans votre base de données tout en restant déchiffrable.
114
115
	ENCRYPT_KEY = "TBXvZGkFMiKoCsMY1AjlEuexFR6XMo"
116
117
Dans ce cas, même si la base de données est volée, ces données resteront cryptées et indéchiffrables sans la clef de décryptage.
118
119
#### Installer la base de données Mysql.
120
121
De retour dans la page de vérification, vérifiez une dernière fois que tout est vert ou orange et cliquez sur **Launch database update**.
122
123
#### Configuration Ldap (optionnelle).
124
125
In the of you would like to let user use their **Active directory** or **OpenLDAP** account, you can 
126
configure iGestis to use and manage the Users LDAP information.
127
128
Uncomment the values you want to use. The minimum that you need to define are :
129
130
	USE_LDAP = true
131
	LDAP_URIS = "ldap://localhost:389"
132
	LDAP_BASE = "dc=example,dc=local"
133
	LDAP_ADMIN = "cn=admin,dc=example,dc=local"
134
	LDAP_PASSWORD = ""
135
	LDAP_USERS_OU = "ou=Users,dc=example,dc=local"
136
	LDAP_CUSTOMERS_OU = "ou=Customers,dc=example,dc=local"
137
	LDAP_SUPPLIERS_OU = "ou=Suppliers,dc=example,dc=local"
138
139
* **LDAP_ADMIN** must be a LDAP account with write privilage on the directory. Don't forgot to define the 
140
**LDAP_PASSWORD** as well.
141
142
* **LDAP\_USERS\_OU** is the location in the directory where the new employee will be written **LDAP\_CUSTOMERS\_OU** 
143
is for new customers and **LDAP\_SUPPLIERS\_OU** is for new suppliers.
144
145
Others optionnal values can be configured :
146
147
* **LDAP\_AUTO\_IMPORT\_USER** allow a user existing in the directory but not in iGestis to be created on fly in 
148
iGestis when the user tries to login in iGestis. Note the employee will be automatically assigned to the first company available.
149
150
* **LDAP_READONLY** (not implemented yet) restricts iGestis for writting in the directory. The only way to 
151
create new employees will be using a third party tool.
152
153
* **LDAP_SCHEMA** (not implemented yet) lets you choose the schema you want to enable and use with your 
154
directory.
155
156
* **LDAP\_AD\_MODE** (deprecated) define if the directory is directory is an **Active Directory** or not.
157
158
* **LDAP\_USER\_RDN** by default, iGestis create an employee with "uid=%username%". 
159
But Active Directory use the convention "cn=%username%".
160
161
Installation de module (version 3)
162
----------------------------------
163
164
iGestis est fourni avec plusieurs modules optionnels
165
166
|                                                                               | iGestis v2            | iGestis v3 | Package name       |
167
|-------------------------------------------------------------------------------|-----------------------|------------|--------------------|
168
| Commercial: let you manage your quotation, invoicing, orders and accounting   | Yes (but not updated) | Yes        | igestis-commercial |
169
| Ajaxplorer: Access remotely to your files (not available for iGestis 3 yet    | Yes                   | Not yet    | igestis-ajaxplorer |
170
| Roundcube: Display and manage your mail within iGestis                        | Yes                   | Yes        | igestis-roundcube  |
171 8 Olivier Bitsch
| OpenChange: Extend Active Directory attributes to manage OpenChange.          | Yes                   | Not yet    | igestis-openchange |
172
| Samba: Extend OpenLDAP attributes to manage Samba 3/4.                        | Yes                   | Yes        | igestis-samba      |
173
| ServerMgmt: Easily setup your folder access right within iGestis.             | No                    | Yes        | igestis-servermgmt |
174 1 Olivier Bitsch
175
Dépannage
176
---------
177
178
Dans le cas ou vous rencontreriez un problème avec iGestis, suivez la procédure suivante.
179
180
iGestis v2
181
----------
182
183
Activez le mode debuggage avec la commande suivante :
184
185
    nano /usr/share/igestis/index.php
186
187
Et modifiez la ligne
188
189
    define("DEBUG_MODE", false);
190
191
En 
192
193
    define("DEBUG_MODE", true);
194
195
Ouvrez la page web et tentez à nouveau l'étape ayant échouée, vous devriez avoir maintenant un message plus détaillé du problème.
196
197
### iGestis v3
198
199
Activez le mode debuggage avec la commande suivante :
200
201
    nano /etc/igestis/config.ini
202
203
Et ensuite ajoutez la ligne suivante :
204
205
    DEBUG_MODE=true
206
207
Ouvrez la page web et tentez à nouveau l'étape ayant échouée, vous devriez avoir maintenant un message plus détaillé du problème.