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. |