glpi-latest


Is this Nethserver module helpful to you?
Please consider donating to the author

Thank you kindly!

2019/03/04 11:32 · HF

Available for NS7

The purpose of this RPM is to create a rpm of the latest glpi version (>= 9.5.5) that is not available in EPEL. The last version of GLPI needs a version of php and mariadb not available in NS7 so we need to use nethserver-rh-mariadb105 and nethserver-rh-php73-fpm as dependencies.

GLPI is the Information Resource-Manager with an additional Administration- Interface. You can use it to build up a database with an inventory for your company (computer, software, printers…). It has enhanced functions to make the daily life for the administrators easier, like a job-tracking-system with mail-notification and methods to build a database with basic information about your network-topology.

The principal functionalities of the application are :

1) the precise inventory of all the technical resources. All their characteristics will be stored in a database.

2) management and the history of the maintenance actions and the bound procedures. This application is dynamic and is directly connected to the users who can post requests to the technicians. An interface thus authorizes the latter with if required preventing the service of maintenance and indexing a problem encountered with one of the technical resources to which they have access.

GLPI can be connected with a software agent like fusion inventory or ocs inventory

Stephane de Labrusse at stephdl@de-labrusse.fr

You cannot have on the same server nethserver-glpi and nethserver-glpi-latest, the glpi rpm will conflicts. The script of installation takes into account that you have data and mysql db to migrate to the most recent version of glpi. The plugin might need to be updated manually.

GLPI 10 has been released as a standalone rpm, it does conflict with nethserver-glpi (9.5.x) because the plugins list is not yet fully compatible. You must remove first nethserver-glpi-latest, then install nethserver-glpi-10-latest.

1-You need to install my repository, see how to do it

2- remove glpi if it is installed

rpm -e --nodeps glpi nethserver-glpi

To install glpi 10

rpm -e --nodeps nethserver-glpi-latest

3-You can install glpi

yum install nethserver-glpi-latest

To install glpi 10

yum install nethserver-glpi-10-latest

go to https://IP/glpi

once installed you have some default users

Default logins / passwords are:

  • glpi/glpi for the administrator account
  • tech/tech for the technician account
  • normal/normal for the normal account
  • post-only/postonly for the postonly account
config show glpi 
  glpi=configuration
    Name=glpi    #Change the web alias eg https://IP/othername
    access=private     #restrict the web access to private or public
    status=enabled     #Enabled or disabled the glpi web access

Example

config setprop glpi access public

After a change you must use the event

signal-event nethserver-glpi-latest-update

The config file is in /etc/httpd/conf.d/glpi.conf

The logo image file for the initial login page is located at /usr/share/glpi/pics/login_glpi.png

Please read the user documentation and the system administrator guide, this software must be configured for your needs.

FIXME

Glpi can authenticate users from the mysl database but also with an email server (with imap/pop) or with a LDAP server.

The following example allows to connect to the samba AD containers of the NethServer. You have a documentation from the project, but in French

You must adapt the filter following your needs, below some examples

Connexion filter (all users) : (&(objectClass=user)(objectCategory=person))
Connexion filter (all enabled users) :(&(objectClass=user)(objectCategory=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))

The synchronization between the LDAP and GLPI must be done with cron job and the glpi console

The path to the binary must be used

/opt/rh/rh-php73/root/bin/php /usr/share/glpi/bin/console ldap:sync or use source /opt/rh/rh-php73/enable at the top of your script and php /usr/share/glpi/bin/console ldap:sync

You can authenticate a user through an imap or pop credentials, this authentication method is simplest and you cannot do a mass importation of users. If the credentials are true for the mail server, then the user is allowed to use GLPI.

GLPI needs the latest mariadb available hence it use mariadb 10.5, to connect to the database you must use a linux socket or the port 8105 with the user glpi. It is a specific server instance, there is only the glpi database running on it, the backup of that database is integrated to pre-backup-data and post-restore-data

/opt/rh/rh-mariadb105/root/bin/mysql --socket=/run/rh-mariadb105-mariadb/glpi-mysql.sock 

or

/opt/rh/rh-mariadb105/root/bin/mysql -h127.0.0.1 -P8105 -uglpi -p$(cat /var/lib/nethserver/secrets/glpi)

Glpi comes now with a console that you use to debug and check the health of glpi : see the documentation

[root@ns7loc13 ~]# /opt/rh/rh-php73/root/bin/php /usr/share/glpi/bin/console 
GLPI CLI 9.5.5

Usage:
  command [options] [arguments]

Options:
  -h, --help                     Display this help message
  -q, --quiet                    Do not output any message
  -V, --version                  Display this application version
      --ansi                     Force ANSI output
      --no-ansi                  Disable ANSI output
  -n, --no-interaction           Do not ask any interactive question
      --config-dir[=CONFIG-DIR]  Configuration directory to use
      --no-plugins               Disable GLPI plugins (unless commands forces plugins loading)
      --lang[=LANG]              Output language (default value is existing GLPI "language" configuration or "en_GB")
  -v|vv|vvv, --verbose           Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Available commands:
  help                                        Displays help for a command
  list                                        Lists commands
 glpi
  glpi:build:compile_scss                     [build:compile_scss] Compile SCSS file.
  glpi:config:set                             [config:set] Set configuration value
  glpi:database:check                         [db:check] Check for schema differences between current database and installation file.
  glpi:database:configure                     [db:configure] Define database configuration
  glpi:database:install                       [db:install] Install database schema
  glpi:database:update                        [db:update] Update database schema to new version
  glpi:ldap:synchronize_users                 [ldap:sync] Synchronize users against LDAP server informations
  glpi:maintenance:disable                    [maintenance:disable] Disable maintenance mode
  glpi:maintenance:enable                     [maintenance:enable] Enable maintenance mode
  glpi:migration:appliances_plugin_to_core    Migrate Appliances plugin data into GLPI core tables
  glpi:migration:domains_plugin_to_core       Migrate Domains plugin data into GLPI core tables
  glpi:migration:myisam_to_innodb             Migrate MyISAM tables to InnoDB
  glpi:migration:racks_plugin_to_core         Migrate Racks plugin data into GLPI core tables
  glpi:migration:timestamps                   Convert "datetime" fields to "timestamp" to use timezones.
  glpi:plugin:activate                        [plugin:activate] Activate plugin(s)
  glpi:plugin:deactivate                      [plugin:deactivate] Deactivate plugin(s)
  glpi:plugin:install                         [plugin:install] Run plugin(s) installation script
  glpi:rules:process_software_category_rules  [rules:process_software_category_rules] Process software category rules
  glpi:rules:replay_dictionnary_rules         [rules:replay_dictionnary_rules] Replay dictionnary rules on existing items
  glpi:security:change_key                    Change password storage key and update values in database.
  glpi:system:check_requirements              [system:check_requirements] Check system requirements
  glpi:system:clear_cache                     [system:clear_cache] Clear GLPI cache.
  glpi:system:status                          [system:status] Check system status
  glpi:task:unlock                            [task:unlock] Unlock automatic tasks

Please raise Issues on github