How to install iGestis » History » Version 1
Olivier Bitsch, 03/09/2020 10:33 AM
1 | 1 | Olivier Bitsch | # How to install iGestis |
---|---|---|---|
2 | |||
3 | Introduction |
||
4 | ------------ |
||
5 | |||
6 | iGestis is an ERP designed for small companies. iGestis can support the account creation for employees, |
||
7 | customers and providers with account access. iGestis can also manage multiple companies with one instance. |
||
8 | You can also connect iGestis to a directory of your choice (OpenLDAP, Active Directory,...). |
||
9 | |||
10 | iGestis needs to have a working database installation to store all information. For the moment, |
||
11 | only Mysql is supported. |
||
12 | |||
13 | Installation with Debian package (version 2) |
||
14 | -------------------------------------------- |
||
15 | |||
16 | We provide ready package for Debian/Ubuntu. The installation is straigh forward. |
||
17 | |||
18 | Add the ready source list for the apt repository |
||
19 | |||
20 | wget http://open.iabsis.com/iabsis.list -O /etc/apt/sources.list.d/iabsis.list |
||
21 | |||
22 | Add the repository certificate |
||
23 | |||
24 | wget http://open.iabsis.com/open.iabsis.com.asc -O- | apt-key add - |
||
25 | |||
26 | Refresh the package list |
||
27 | |||
28 | apt-get update |
||
29 | |||
30 | And finally install iGestis |
||
31 | |||
32 | apt-get install igestis |
||
33 | |||
34 | iGestis will ask you some question. |
||
35 | |||
36 | * Choose the wanted authentication method: choose your actual directory (OpenLDAP or Active Directory). If none, choose **Internal** |
||
37 | * Choose the admin account name: only change if you don't like the default one. This account must exists within your directory. |
||
38 | * Specify the uris for the directory: replace here the address of your server. In case of Samba4 usage, keep the proposed ldapi url. |
||
39 | * Specify the directory base tree: type the FQDN domain name (example: *domain.local*) |
||
40 | * Specify the directory admin account for the directory : The bind dn of the Administrator account. By example **dc=admin,dc=domain,dc=local** for OpenLDAP or **Administrator@domain.local** for Samba4 or Active Directory. |
||
41 | * Please specify the admin password for the directory : Your Administrator password. |
||
42 | * Create a user in iGestis when present in the directory ? Prefered **Yes** |
||
43 | * Configure database for igestis with dbconfig-common? Yes |
||
44 | * Password of the database's administrative user: Your Mysql Root password |
||
45 | * MySQL application password for igestis: Keep empty for a random password. |
||
46 | * Web server to reconfigure automatically : Keep *apache2* for an automated Apache2 configuration. |
||
47 | |||
48 | Open your browser and type the server url and happend **/igestis**, by example |
||
49 | |||
50 | > http://my_ip_server/igestis |
||
51 | |||
52 | Installation with Debian package (version 3) |
||
53 | -------------------------------------------- |
||
54 | |||
55 | We provide ready package for Debian/Ubuntu. The installation is straigh forward. |
||
56 | |||
57 | Add the ready source list for the apt repository |
||
58 | |||
59 | wget http://open.iabsis.com/iabsis.list -O /etc/apt/sources.list.d/iabsis.list |
||
60 | |||
61 | Edit the file just downloaded with |
||
62 | |||
63 | nano /etc/apt/sources.list.d/iabsis.list |
||
64 | |||
65 | And uncomment the following line |
||
66 | |||
67 | deb http://open.iabsis.com/debian testing main |
||
68 | |||
69 | Add the repository certificate |
||
70 | |||
71 | wget http://open.iabsis.com/open.iabsis.com.asc -O- | apt-key add - |
||
72 | |||
73 | Refresh the package list |
||
74 | |||
75 | apt-get update |
||
76 | |||
77 | And finally install iGestis |
||
78 | |||
79 | apt-get install igestis |
||
80 | |||
81 | iGestis will ask you some question. |
||
82 | |||
83 | * Choose the wanted authentication method: choose your actual directory (OpenLDAP or Active Directory). If none, choose **Internal** |
||
84 | * Choose the admin account name: only change if you don't like the default one. |
||
85 | * Specify the uris for the directory: replace here the address of your server. In case of Samba4 usage, keep the proposed ldapi url. |
||
86 | * Specify the directory base tree : type the FQDN domain name (example: *domain.local*) |
||
87 | * Specify the directory admin account for the directory : The bind dn or the Administrator account. By example **dc=admin,dc=domain,dc=local** for OpenLDAP or **Administrator@domain.local** for Samba4 or Active Directory. |
||
88 | * Please specify the admin password for the directory : Your Administrator password. |
||
89 | * Create a user in iGestis when present in the directory ? Prefered Yes |
||
90 | * Configure database for igestis with dbconfig-common? Yes |
||
91 | * Password of the database's administrative user: Your Mysql Root password |
||
92 | * MySQL application password for igestis: Keep empty for a random password. |
||
93 | * Web server to reconfigure automatically : Keep *apache2* for an automated Apache2 configuration. |
||
94 | |||
95 | Open your browser and type the server url and happend **/igestis**, by example |
||
96 | |||
97 | > http://my_ip_server/igestis |
||
98 | |||
99 | Manual Installation |
||
100 | ------------------- |
||
101 | |||
102 | You can get iGestis on https://github.com/olivierb2/igestis/releases. This guide assume you have at least |
||
103 | iGestis version 3.0 from the branche master. |
||
104 | |||
105 | Once copied to your server, extract the file with your prefered archive manager, or use the command |
||
106 | `tar xfz igestis-xx.tar.gz` or `unzip igestis-xx.zip`. Move the extracted folder somewhere not accessible |
||
107 | by apache, by example **/usr/share/** or **/opt**. Then configure apache with an alias or make a symbolic link |
||
108 | to let the **public** folder accessible by apache. By example `ln -s /usr/share/igestis/public/ /var/www/igestis`. |
||
109 | Apache alias can be **Alias /igestis /usr/share/igestis/public**. |
||
110 | |||
111 | You can already use your prefered web browser and access to the folder something like **http://your_server/igestis**. |
||
112 | The first time you open this page, you will get an install check page, to check your server settings. |
||
113 | |||
114 | ### Configuration |
||
115 | |||
116 | During the configuration, you can anytime refresh the webpage to check what you done. |
||
117 | |||
118 | #### Fix permission right |
||
119 | |||
120 | First off all, make the folder **document** and **cache** writeable for Apache username. Depending of your |
||
121 | distribution, let do a `chown www-data documents cache` or `chown apache documents cache`. |
||
122 | |||
123 | #### Create the database in MySQL |
||
124 | |||
125 | Create an empty database under MySQL. From command line, you can access to the prompt with the command. |
||
126 | |||
127 | mysql -uroot -p |
||
128 | |||
129 | Then create an empty database and user dedicated for iGestis. |
||
130 | |||
131 | create database igestis; |
||
132 | create user 'igestis'@'localhost' identified by 'igestis1234'; |
||
133 | grant all privileges on igestis.* to 'igestis'@'localhost'; |
||
134 | quit |
||
135 | |||
136 | Replace igestis1234 by the password you want. |
||
137 | |||
138 | #### Create the config.ini file. |
||
139 | |||
140 | Then create a `config.ini` file by copying the `config.ini-template.ini` with the command |
||
141 | `cp config/igestis/config.ini-template.ini config/igestis/config.ini`. Use your prefered text |
||
142 | editor and edit the file, by example `nano config/igestis/config.ini`. Change the value for the fourth |
||
143 | first lines to adapt the MYSQL configuration you defined before. |
||
144 | |||
145 | MYSQL_HOST = "localhost" |
||
146 | MYSQL_DATABASE = "igestis" |
||
147 | MYSQL_LOGIN = "igestis" |
||
148 | MYSQL_PASSWORD = "" |
||
149 | |||
150 | Also change the **ENCRYPT_KEY** value by defining a random key. This key will be used to |
||
151 | encrypt all sensitive data in the database that must be decipherable. |
||
152 | |||
153 | ENCRYPT_KEY = "TBXvZGkFMiKoCsMY1AjlEuexFR6XMo" |
||
154 | |||
155 | In the case of the database is stollen without the configuration file, it will be no way to recover |
||
156 | the encrypted data. |
||
157 | |||
158 | #### Install MySQL database. |
||
159 | |||
160 | Go back to the check install web page, check at least everything are green or orange, and then click |
||
161 | on **Launch database update**. |
||
162 | |||
163 | #### Ldap configuration (optionnal). |
||
164 | |||
165 | In the of you would like to let user use their **Active directory** or **OpenLDAP** account, you can |
||
166 | configure iGestis to use and manage the Users LDAP information. |
||
167 | |||
168 | Uncomment the values you want to use. The minimum that you need to define are : |
||
169 | |||
170 | USE_LDAP = true |
||
171 | LDAP_URIS = "ldap://localhost:389" |
||
172 | LDAP_BASE = "dc=example,dc=local" |
||
173 | LDAP_ADMIN = "cn=admin,dc=example,dc=local" |
||
174 | LDAP_PASSWORD = "" |
||
175 | LDAP_USERS_OU = "ou=Users,dc=example,dc=local" |
||
176 | LDAP_CUSTOMERS_OU = "ou=Customers,dc=example,dc=local" |
||
177 | LDAP_SUPPLIERS_OU = "ou=Suppliers,dc=example,dc=local" |
||
178 | |||
179 | * **LDAP_ADMIN** must be a LDAP account with write privilage on the directory. Don't forgot to define the |
||
180 | **LDAP_PASSWORD** as well. |
||
181 | |||
182 | * **LDAP\_USERS\_OU** is the location in the directory where the new employee will be written **LDAP\_CUSTOMERS\_OU** |
||
183 | is for new customers and **LDAP\_SUPPLIERS\_OU** is for new suppliers. |
||
184 | |||
185 | Others optionnal values can be configured : |
||
186 | |||
187 | * **LDAP\_AUTO\_IMPORT\_USER** allow a user existing in the directory but not in iGestis to be created on fly in |
||
188 | iGestis when the user tries to login in iGestis. Note the employee will be automatically assigned to the first company available. |
||
189 | |||
190 | * **LDAP_READONLY** (not implemented yet) restricts iGestis for writting in the directory. The only way to |
||
191 | create new employees will be using a third party tool. |
||
192 | |||
193 | * **LDAP_SCHEMA** (not implemented yet) lets you choose the schema you want to enable and use with your |
||
194 | directory. |
||
195 | |||
196 | * **LDAP\_AD\_MODE** (deprecated) define if the directory is directory is an **Active Directory** or not. |
||
197 | |||
198 | * **LDAP\_USER\_RDN** by default, iGestis create an employee with "uid=%username%". |
||
199 | But Active Directory use the convention "cn=%username%". |
||
200 | |||
201 | |||
202 | Modules installation (version 3) |
||
203 | -------------------------------- |
||
204 | |||
205 | iGestis is provided with few optional modules. |
||
206 | |||
207 | | | iGestis v2 | iGestis v3 | Package name | |
||
208 | |-------------------------------------------------------------------------------|-----------------------|------------|--------------------| |
||
209 | | Commercial: let you manage your quotation, invoicing, orders and accounting | Yes (but not updated) | Yes | igestis-commercial | |
||
210 | | Ajaxplorer: Access remotely to your files (not available for iGestis 3 yet | Yes | Not yet | igestis-ajaxplorer | |
||
211 | | Roundcube: Display and manage your mail within iGestis | Yes | Yes | igestis-roundcube | |
||
212 | | OpenChange: Extend Active Directory attributes to manage OpenChange. | Yes | Not yet | igestis-roundcube | |
||
213 | | Samba: Extend OpenLDAP attributes to manage Samba 3/4. | Yes | Yes | igestis-roundcube | |
||
214 | | ServerMgmt: Easily setup your folder access right within iGestis. | No | Yes | igestis-roundcube | |
||
215 | |||
216 | Troubleshooting |
||
217 | --------------- |
||
218 | |||
219 | In the case of you encounter an issue with iGestis, follow this process. |
||
220 | |||
221 | ### iGestis v2 |
||
222 | |||
223 | Enable the debug mode with the following command : |
||
224 | |||
225 | nano /usr/share/igestis/index.php |
||
226 | |||
227 | And then change the line |
||
228 | |||
229 | define("DEBUG_MODE", false); |
||
230 | |||
231 | Into |
||
232 | |||
233 | define("DEBUG_MODE", true); |
||
234 | |||
235 | Open the web page and try again the failed step, you should now have a more detail error of the issue. |
||
236 | |||
237 | ### iGestis v3 |
||
238 | |||
239 | Enable the debug mode with the following command: |
||
240 | |||
241 | nano /etc/igestis/config.ini |
||
242 | |||
243 | And then add the line |
||
244 | |||
245 | DEBUG_MODE=true |
||
246 | |||
247 | Open the web page and try again the failed step, you should now have a more detail error of the issue. |