OCS Inventory et GLPI sont deux outils Open-Source pour la gestion d’un parc informatique. Le premier sert à réaliser un inventaire d’un parc informatique qui permet au travers d’un client installé sur les postes de faire remonter des information hardware et logicielles. Le second est un outil qui se couple avec OCS pour récupérer les informations des postes mais aussi il intègre des fonctions de helpdesk.
1 – Installation des pré-requis
Ocs Inventory et GLPI s’appuie sur un serveur LAMP. Je vais donc commencer par installer les paquets nécessaires.
apt-get install make apache2 apache2-doc mysql-server php5 libapache2-mod-php5 php5-mysql php5-gd perl libapache2-mod-perl2 libxml-simple-perl libcompress-zlib-perl libdbi-perl libapache-dbi-perl libdbd-mysql-perl libapache-dbi-perl libnet-ip-perl libsoap-lite-perl libnet-ip-perl libsoap-lite-perl libc6-dev php5-cgi php-net-ldap
1-2 Configuration de PHP
Éditer le fichier /etc/apache2/mods-enabled/php5.conf
nano /etc/apache2/mods-enabled/php5.conf
Ajouter la ligne suivante :
AddType application/x-httpd-php .php5
Control + X pour quitter nano
Il demande si l’on sauve, dire Oui en pressant la touche
O
Il demande comment le fichier doit s’appeler, faire Entrée pour ne toucher à rien.
Éditer le fichier /etc/apache2/mods-enabled/dir.conf
nano /etc/apache2/mods-enabled/dir.conf
Ajouter la ligne suivante :
DirectoryIndex index.php5
Pour prendre en compte les modifications un petit redémarrage du service Apache
/etc/init.d/apache2 restart
Pendant l’installation, le serveur Apache2 sera redémarré et vous allez sûrement rencontrer une erreur de ce genre :
apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
Ceci n’est absolument pas gênant et vous pouvez régler le problème en ajoutant la directive « ServerName » dans le fichier de configuration principal : /etc/apache2/apache2.conf
nano /etc/apache2/apache2.conf
Ajouter la ligne suivante :
ServerName ServeurFTP
Vérification du bon fonctionnement de PHP 5
Création d’un fichier php dans /var/www/phpinfo.php
nano /var/www/phpinfo.php
Ajouter les lignes suivantes :
<?php
phpinfo();
?>
Control + X pour quitter nano
Il demande si l’on sauve, dire Oui en pressant la touche
O
Il demande comment le fichier doit s’appeler, faire Entrée pour ne toucher à rien.
Une fois le fichier créé (et enregistré), il devrait apparaitre sur la page d’index de votre serveur (vu tout à l’heure). Cliquer alors dessus ou entrer directement l’URL dans votre navigateur
http://[votreserveur]/phpinfo.php,
Si jamais le navigateur vous demande d’enregistrer le fichier php, cela vient peut être d’un problème de module mal initialisé :
a2enmod php5
/etc/init.d/apache2 restart
Si tout se passe correctement vous devriez voir apparaître une page avec toutes les infos concernant PHP
2 – Installation de OCS Inventory NG
2-1 Téléchargement d’OCS
wget http://launchpad.net/ocsinventory-server/stable-1.3/server-release-1.3.1/+download/OCSNG_UNIX_SERVER-1.3.1.tar.gz
2-2 Décompression
tar –xvf OCSNG_UNIX_SERVER-1.3.1.tar.gz
2-3 Installation
Se placer dans le répertoire décompressé
cd
OCSNG_UNIX_SERVER-1.3.1.tar.gz
Lancer l’installation
./setup.sh
Répondre Y puis [Entrée]
+———————————————————-+
| |
| Welcome to OCS Inventory NG Management server setup ! |
| |
+———————————————————-+
CAUTION: If upgrading Communication server from OCS Inventory NG 1.0 RC2 and
previous, please remove any Apache configuration for Communication Server!
Do you wish to continue ([y]/n)? Y
Saisir localhost puis [Entrée]
+———————————————————-+
| Checking for database server properties… |
+———————————————————-+
Your MySQL client seems to be part of MySQL version 5.0.
Your computer seems to be running MySQL 4.1 or higher, good 😉
Which host is running database server [localhost] ?localhost
Saisir 3306
OK, database server is running on host localhost 😉
On which port is running database server [3306] ? 3306
Appuyer sur [Entrée]
+———————————————————-+
| Checking for Apache web server daemon… |
+———————————————————-+
Where is Apache daemon binary [/usr/sbin/apache2] ?
Appuyer sur [Entrée]
+———————————————————-+
| Checking for Apache main configuration file… |
+———————————————————-+
Where is Apache main configuration file [/etc/apache2/apache2.conf] ?
Appuyer sur [Entrée]
+———————————————————-+
| Checking for Apache user account… |
+———————————————————-+
Which user account is running Apache web server [www-data] ?
Appuyer sur [Entrée]
+———————————————————-+
| Checking for Apache group… |
+———————————————————-+
Which user group is running Apache web server [www-data] ?
Appuyer sur [Entrée]
+———————————————————-+
| Checking for Apache Include configuration directory… |
+———————————————————-+
Setup found Apache Include configuration directory in
//etc/apache2/conf.d/.
Setup will put OCS Inventory NG Apache configuration in this directory.
Where is Apache Include configuration directory [//etc/apache2/conf.d/] ?
Appuyer sur [Entrée]
+———————————————————-+
| Checking for PERL Interpreter… |
+———————————————————-+
Found PERL Intrepreter at </usr/bin/perl> 😉
Where is PERL Intrepreter binary [/usr/bin/perl] ?
Saisir Y
Do you wish to setup Communication server on this computer ([y]/n)? Y
Appuyer sur [Entrée]
Communication server can create detailled logs. This logs can be enabled
by setting interger value of LOGLEVEL to 1 in Administration console
menu Configuration.
Where to put Communication server log directory [/var/log/ocsinventory-server] ?
Saisir Y
—————————————————-+
| Checking for optional Perl Modules… |
+———————————————————-+
Checking for SOAP::Lite PERL module…
Found that PERL module SOAP::Lite is available.
Checking for XML::Entities PERL module…
*** Warning: PERL module XML::Entities is not installed !
This module is only required by OCS Inventory NG SOAP Web Service.
Do you wish to continue ([y]/n] ? Y
Saisir Y
+———————————————————-+
| OK, Communication server log directory created 😉 |
| |
| Now configuring Apache web server… |
+———————————————————-+
To ensure Apache loads mod_perl before OCS Inventory NG Communication Server,
Setup can name Communication Server Apache configuration file
‘z-ocsinventory-server.conf’ instead of ‘ocsinventory-server.conf’.
Do you allow Setup renaming Communication Server Apache configuration file
to ‘z-ocsinventory-server.conf’ ([y]/n) ? Y
Saisir Y
+———————————————————-+
| OK, Communication server setup sucessfully finished 😉 |
| |
| Please, review //etc/apache2/conf.d//z-ocsinventory-server.conf
| to ensure all is good. Then restart Apache daemon. |
+———————————————————-+
Do you wish to setup Administration Server (Web Administration Console)
on this computer ([y]/n)? Y
Saisir Y
+———————————————————-+
| Checking for Administration Server directories… |
+———————————————————-+
CAUTION: Setup now install files in accordance with Filesystem Hierarchy
Standard. So, no file is installed under Apache root document directory
(Refer to Apache configuration files to locate it).
If you’re upgrading from OCS Inventory NG Server 1.01 and previous, YOU
MUST REMOVE (or move) directories ‘ocsreports’ and ‘download’ from Apache
root document directory.
If you choose to move directory, YOU MUST MOVE ‘download’ directory to
Administration Server writable/cache directory (by default
/var/lib/ocsinventory-reports), especialy if you use deployement feature.
Do you wish to continue ([y]/n)? Y
Appuyer sur [Entrée]
Where to copy Administration Server static files for PHP Web Console
[/usr/share/ocsinventory-reports] ?
Appuyer sur [Entrée]
Where to create writable/cache directories for deployement packages and
IPDiscover [/var/lib/ocsinventory-reports] ?
Rédémarrer Apache
/etc/init.d/apache2 restart
2-3 Configuration
Une fois OCS installé, je vais procéder à la configuration de celui-ci. Pour cela avec un navigateur se rendre à l’adresse suivante :
http://adresseduserveur/ocsreports/install.php
Mysql login : Identifiant de connexion à la base SQL
Mysqlpassword : Mot de passe de connexion à la base SQL
Mysql HostName : Nom d’hôte de la base
Si les informations saisie au dessus sont correctes, les informations suivantes doivent apparaître.
3 – Installation de GLPI
3-1 Création de la base SQL
Je vais commencer par créer la base de données pour GLPI via phpmyadmin. Avec un navigateur ouvrir la page http://adresseduserveur/phpmyadmin
Saisir l’identifiant et le mot de passe de connexion à la base SQL
Inscrire le nom de la base dans mon cas glpi puis cliquer sur Créer
3-2 Téléchargement de GLPI
wget –no-check-certificate https://forge.indepnet.net/attachments/download/597/glpi-0.72.4.tar.gz
3-3 Décompression
Je vais maintenant extraire le fichier directement dans /var/www
tar -xzf glpi-0.72.4.tar.gz -C /var/www/
3-4 Ajout des droits
Le module de gestion de documents a besoin des droits d’écriture. Pour cela faire la commande suivante :
chown -R www-data /var/www/glpi
3-4 Configuration
Je vais finir l’installation via un navigateur. Saisir l’adresse suivante http://adresseduserveur/glpi/install/install.php
La page suivante apparaît, sélectionner votre langue. Dans mon cas Français.
Cocher J’ai lu et ACCEPTE les termes de la licence énoncés ci-dessus puis Continuer
Cliquer sur Installation
Cliquer sur Continuer
Saisir l’identifiant, le mot de passe et le serveur de la base de donnée
Sélectionner la base créée précédemment puis cliquer sur Continuer
Cliquer sur Continuer
Cliquer sur Utiliser GLPI
4 – Configuration du couple GLPI / OCS
4-1 Téléchargement du plugin OCS pour GLPI
wget –no-check-certificate https://forge.indepnet.net/attachments/download/433/glpi-massocsimport-1.3.0.tar.gz
4-2 Décompression
Je vais maintenant extraire le fichier directement dans /var/www
tar -xzf glpi-massocsimport-1.3.0.tar.gz -C /var/www/glpi/plugins
4-3 Installation du plugin
Positionner la souris sur Configuration et cliquer sur Plugins
Cliquer sur Installer
Cliquer sur Activer
Positionner la souris sur Configuration et cliquer sur Plugins
Cliquer sur l’onglet Restrictions et activer le mode OCSNG
5 – Liaison avec Active Directory
Je vais maintenant lier AD avec GLPI. Cela va permettre aux utilisateurs du domaine de pouvoir se connecter et de pouvoir poster des tickets d’intervention grâce à leur compte classique
Positionner la souris sur Configuration et cliquer sur Authentification
Cliquer LDAP
Cliquer sur Active directory pour pré-remplir certains champs.
Par la suite saisir les informations suivantes
Nom :
Nom d’affichage pour GLPI
Serveur :
LDAP://nomduserveur.domaine
Basedn :
DC=votredomaine
Rootdn :
CN=Administrateur,CN=Users,DC=votredomaine
5–1 Importation des utilisateurs
Positionner la souris sur Administration et cliquer sur Utilisateurs
Cliquer sur Liaison LDAP
Cliquer sur Importation de nouveaux utilisateurs
Cocher les utilisateurs que vous souhaitez importer et cliquer sur importer
Auteur : POMENTE Guillaume
Partager la publication "[TUTO] INSTALLATION ET CONFIGURATION GLPI ET OCS INVENTORY Liaison Active Directory GESTION PARC INFORMATIQUE Sous Debian 5"
Bonjour,
J’ai suivi ton tuto et ça fonctionne tres bien merci. Par contre j aimerais le publier via un reverse proxy en apache. Pourrais tu m expliquer comment bien configurer mon proxy stp ?
Merci d avance
Bonjour,
Que voulez-vous faire exactement ?
Sinon pour un reverse proxy sur apache il faut commencer par activer les modules suivants.
mod_proxy
mod_proxy_http
mod_proxy_connect
Ensuite créer un fichier virtualhost
Ex :
ServerName glpi.mondomaine.com
ServerAlias glpi.mondomaine.com
ProxyPass / http://gestion-parc.local/
ProxyPassReverse / http://gestion-parc.local/
Order deny,allow
Allow from all
Tu pourras trouver plus de renseignements a l’adresse suivante :
http://httpd.apache.org/docs/2.0/mod/mod_proxy.html
En espérant que cela puisse vous aider.
Cordialement,
Bonjour,
Merci pour votre réponse. En fait la configuration est déja faite. Mon reverse proxy fonctionne déja pour Zimbra et Z-Push mais quand j essaye de me connecter a glpi, j’ai une page de login avec aucun fond (c est tout blanc, j ai juste les champs de login password) et apres j’ai une erreur « Not found /glpi/login.php ».
Merci de votre aide.
Cordialement,
Marc
Bonjour,
J’ai enfin résolu mon probleme. En fait dans mon reverse proxy j’avais créer une « Location » « helpdesk ». je l ai modifié en « glpi » et ça fonctionne !!!
Voila.
Merci encore pour ton aide
Marc
Bonjour,
Tout dabord merci pour ton tuto, il est très complet et facile a comprendre.
J’ai eu un probleme lors de l’instalation de « OCSNG_UNIX_SERVER-1.3.1.tar.gz »
En enffet lorsque j’arrive ici:
—————————————————-+
| Checking for optional Perl Modules… |
+———————————————————-+
Checking for SOAP::Lite PERL module…
Found that PERL module SOAP::Lite is available.
Checking for XML::Entities PERL module…
*** Warning: PERL module XML::Entities is not installed !
This module is only required by OCS Inventory NG SOAP Web Service.
Do you wish to continue ([y]/n] ? Y
Saisir Y
Je saisis Y et il me dit « Installation aborted »
aurai tu une solution a ce porblème?
merci d’anvance.
pierre