GLPI & OCS Inventory NG - quentin.cayeux.free.frquentin.cayeux.free.fr/ocs-glpi.pdf · Sur la page...

14
GLPI & OCS Inventory NG

Transcript of GLPI & OCS Inventory NG - quentin.cayeux.free.frquentin.cayeux.free.fr/ocs-glpi.pdf · Sur la page...

GLPI & OCS Inventory NG

1. Installation des pré-requis

#apt-get install make apache2 mysql-server php5 libapache2-mod-php5 php5-mysql php5-gd#apt-get install perl libapache2-mod-perl2 libxml-simple-perl libcompress-zlib-perl libdbi-perl libapache-dbi-perl#apt-get install libdbd-mysql-perl libapache-dbi-perl libnet-ip-perl libsoap-lite-perl libnet-ip-perl libsoap-lite-perl libc6-dev

On installe le module XML::Entities via CPAN pour le serveur de communication.

#cpan

#install XML::Entities

2. Installation du serveur

On récupère les sources et on le décompresse :

#wget https://launchpad.net/ocsinventory-server/stable-2.0/2.0.5/+download/OCSNG_UNIX_SERVER-2.0.5.tar.gz#tar -zxvf OCSNG_UNIX_SERVER-1.3.3.tar.gz#cd OCSNG_UNIX_SERVER-1.3.3

On lance l'installation :

#./setup.sh

On répond de la maniére suivante lors des questions de ce type :

Do you wish to continue ([y]/n)? yWhich host is running database server [localhost] ? (Appuyer sur Entrer)On which port is running database server [3306] ? Where is Apache daemon binary [/usr/sbin/apache2] ? Where is Apache main configuration file [/etc/apache2/apache2.conf] ? Which user account is running Apache web server [www-data] ? Which user group is running Apache web server [www-data] ? Where is Apache Include configuration directory [/etc/apache2/conf.d/] ? Where is PERL Intrepreter binary [/usr/bin/perl] ? Do you wish to setup Communication server on this computer ([y]/n)? yWhere to put Communication server log directory [/var/log/ocsinventory-server] ?Do you allow Setup renaming Communication Server Apache configuration file to 'z-ocsinventory-server.conf' ([y]/n) ? yDo you wish to setup Administration Server (Web Administration Console) on this computer ([y]/n)? yDo you wish to continue ([y]/n)? yWhere to copy Administration Server static files for PHP Web Console [/usr/share/ocsinventory-reports] ? Where to create writable/cache directories for deployement packages and IPDiscover [/var/lib/ocsinventory-reports] ?

Enjoy OCS Inventory NG ;-)

On relance apache :

#/etc/init.d/apache2 restart

3. Finalisation

On doit finaliser l'installation via l'interface Web. Pour cela, on se connecte à l'adresse :

→ http://localhost/ocsreports/install.php.

Sur la page "OCS Inventory installation", on remplit les champs comme suit:

MySQL login = root MySQL password = <mot de passe root MySQL> MySQL hostname = localhost

On clique sur le bouton Send.

Si tout va bien, tout est au vert. L'installation est terminée.

On supprime le fichier install.php :

#cd /var/www/ocsreports/#rm -r install.php

4. Php.ini

On va ajuster le fichier php.ini pour que Apache accepte de gros fichier en téléchargement.

#nano /etc/php5/apache2/php.ini

et on modifie les variables suivantes:

post_max_size = 164Mupload_max_filesize = 164M

Verifier aussi si cette variable « memory_limit » est à 32 pour éviter un message d'erreur.

Décommenter la variable « extension=mysql.so » pour cela enlevez le « ; » devant.

et on relance Apache.

#/etc/init.d/apache2 restart

5. Installation GPLI

#wget https://forge.indepnet.net/attachments/download/1184/glpi-0.83.2.tar.gz#tag -xzvf glpi-0.83.0.tar.gz -C /var/www/

Il est nécessaire d'accorder des permissions à certains répertoires pour que GLPI puisse travailler :

#chown -R www-data /var/www/glpi

Avec votre navigateur saississez cette adresse : http://localhost/glpi

1. Choisissez la langue : « Français »

2. Acceptez les conditions d’utilisations.

3. Choisissez « Installation » pour une première installation.

4. GLPI vérifie, si tout est vert, cliquez sur « Continue ».

5. Entrez l’adresse du serveur (dans notre cas en localhost), le nom d’utilisateur (root) et le mot de passe que vous avez créé auparavant sur MySQL puis cliquez sur « Continue ».

6. Sélectionnez la base de données créée avec OCS (ocsweb) puis cliquez sur « Continue ».

7. Si tout s’est bien passé. Cliquez sur « Continue ». Sinon recommencer.

8. Un dernier récapitulatif avant de cliquez sur « Use GLPI » et de passer à la fenêtre suivante pour se connecter :

9. Entrez le login et le mot de passe par défaut : glpi et glpi.

Ensuite, dans GLPI, dans Configuration, puis Générale, pour finir dans inventaire. De là activer le mode OCSNG.

Maintenant dans Configuration, puis Mode OCSNG, cliquez sur le nom du serveur qui s'affiche (localhost par défaut), puis vérifiez la Connexion à la base de données OCSNG pour cela compléter les champs : Hôte / Nom / Utilisateur / Mot de passe.

Dans l'onglet importation, changer dans les menus déroulant les type d'import, les mettres en global ou unique quand cela est possible :

Vous pouvez vous déconnecter de GPLI.

6. Création du Certificat.Créer les clés SSL publique et privée :

#openssl genrsa -des3 -out nunux.key 1024

Si la commande est bien prise en compte, une passphrase vous est demandée :

Generating RSA private key, 1024 bit long modulus .................++++++ .........++++++ e is 65537 (0x10001) Enter pass phrase for nunux.key: salut Verifying - Enter pass phrase for nunux.key: salut

Fixer la configurationEnregistrer la passphrase dans le fichier pour ne pas avoir à la renseigner à chaque boot :

#mv nunux.key nunux-old.key#openssl rsa -in nunux-old.key -out nunux.key

Si la commande est bien prise en compte, la passphrase vous est demandée :

Enter pass phrase for ardonroyan-old.key: salutwriting RSA key

Créer le certificat

#openssl req -new -key nunux.key -out nunux.csr

Celui-ci génèrera la clé privée, et vous demandera les propriétés du certificat :

le code pays, habituellement requis

le nom de la province ou de l'état, habituellement requis

le nom de la ville, habituellement requis

le nom de votre organisation, habituellement requis

le nom de votre section d'organisation, habituellement requis

le nom commun (le nom DNS ou l'adresse ip de votre serveur), requis

une adresse email, habituellement optionnelle

(optionnelle) un mot-de-passe

Auto-signer le certificat

#openssl x509 -req -days 3650 -in nunux.csr -signkey nunux.key -out nunux.crt

Si la commande est bien prise en compte, ce message apparaît :

Signature oksubject=/C=FR/ST=Region/L=Ville/O=Entreprise/CN=hostname.domaine.local/Getting Private key

Mettre en place le certificatOn place ces 2 fichiers dans le répertoire des certificats :

#cp nunux.crt /etc/ssl/certs/#cp nunux.key /etc/ssl/private/

Activer SSLOn vérifie le fichier default-ssl pour s'assurer que les chemins vers la clé et le certificats sont valides. Dans /etc/apache2/sites-available/default-ssl on doit retrouver ces lignes :

SSLCertificateFile /etc/ssl/certs/nunux.crtSSLCertificateKeyFile /etc/ssl/private/nunux.key

Pour pouvoir déployer des paquets OCS, ou tout simplement déployer l'agent sur des postes Windows via le Packager, il faut autoriser l'upload de gros fichiers. Par défaut, php n'autoriser pas l'upload de fichiers suppérieurs à 4Mo.

Modification de la configuration PHP

Il faut donc modifier le fichier php.ini :

#nano /etc/php5/apache2/php.ini

max_execution_time = 180max_input_time = 180memory_limit = 256Mpost_max_size = 300Mupload_max_filesize = 300M

Interdire http sur download (optionnelle)Par défaut, /download se trouve dans /var/lib/ocsinventory-reports

On peut maintenant interdire les accès en http à /download Pour celà, il faut modifier le fichier ocsinventory-reports.conf Dans /etc/apache2/conf.d/ocsinventory-reports.conf , déclarer l'alias /download et interdit à tous.

################################################################################# Deployment packages download area## Alias to put Deployement package files outside Apache document root directory#Alias /download "/var/lib/ocsinventory-reports/download" <Directory "/var/lib/ocsinventory-reports/download"> deny from all </Directory>

Autoriser https sur download (optionnelle)Modifier /etc/apache2/sites-available/default-ssl pour autoriser l'accès aux répertoires en https.

Alias /download /var/lib/ocsinventory-reports/download <Directory /var/lib/ocsinventory-reports/download> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory>

On peut maintenant activer la configuration SSL.

#a2ensite default-ssl

Et enfin, redémarrer apache.

#/etc/init.d/apache2 restart

7. Création d'un script batch

Pré-requisVous devez vous assurer d'avoir :

7-Zip installé sur un ordinateur équipé de Windows. Windows Installer Wrapper Wizard (WIWW) installé sur un ordinateur équipé de Windows.

Dans le répertoire C:\MSI, créez le dossier OCS Inventory NG, puis le sous-dossier Agent. Copiez-y le fichier cacert.pem que vous avez générer pour la fonction SSL. Le résultat doit être comme sur l'image ci-dessous :

Revenez ensuite dans le dossier C:\MSI. Faites un clic droit sur le dossier OCS Inventory NG. Un menu contextuel apparait. Choisissez 7-Zip, puis Ajouter à l'archive. Une fenêtre s'ouvre, permettant la génération d'un fichier auto-extractible. Réglez uniquement les paramètres suivants :

Archive : mettez cacert.exe

Format de l'archive : sélectionnez 7z Compression : sélectionnez Aucune Options :cochez la case Créer une archive SFX

Votre fenêtre doit ressembler à celle-ci :

Validez avec OK. Votre certificat auto-extractible est prêt. Vous pouvez supprimer le répertoire

→ C:\MSI\OCS Inventory Agent. Récupérez la dernière version de l'Agent OCS disponible sur le site à la rubrique Téléchargements, dézippez uniquement le fichier OCS-NG-Windows-Agent-Setup.exe et copiez-le dans le répertoire C:\MSI. Renommez le ensuite OCSAgent.exe afin d'éviter les noms longs.

Lancez l'application WIWW 0.2.0. Cliquez sur Next. Choisissez l'option Create a new Windows Installer msi file puis cliquez sur Browse. Naviguez jusqu'au répertoire C:\MSI et saisissez dans Nom de fichier OCSAgent. Cliquez sur Enregistrer.

Cliquez sur Next. Ici, nous allons insérer les ordres afin d'installer dans un premier temps le certificat ( si besoin ), puis dans un second temps l'Agent OCS. Cliquez sur Add et remplissez les champs comme suit :

Select a Windows Installer Folder properly : cochez Use [Source Dir] Browse or type the program to run : saisissez exactement cacert.exe Specify any program parameters : saisissez exactement -y -o"[CommonAppDataFolder]"

Validez avec OK.

Votre certificat est listé dans le fichier MSI. Faisons de même avec le fichier OCSAgent.exe. Cliquez sur Add de nouveau et remplissez comme suit :

Select a Windows Installer Folder properly : cochez Use [Source Dir] Browse or type the program to run : saisissez OCSAgent.exe Specify any program parameters : saisissez les options que vous souhaitez passé à l'Agent,

par exemple /S /Server=http://ocsinventory-ng/ocsinventory /NOSPLASH

Validez avec OK. Votre Agent OCS est listé dans le fichier MSI. Vous devez avoir ceci :

Cliquez sur Next à deux reprises. Ici, si vous ne souhaitez pas voir apparaitre le fichier MSI dans le menu Ajout/Suppression de programmes de Windows, vous pouvez cocher la case Prevent application from being displayed, comme ceci :

Cliquez sur Next. Saisissez la version de l'Agent dans le champ Product Version, par exemple 2.00.20. Cliquez sur Next et vérifiez le résumé. Si tout est bon, cliquez sur Next puis Finish Votre fichier MSI est prêt.

Voici un exemple de script batch qui est possible de faire appelle depuis votre script de démarrage avec la commande : call /votre/chemin/script.bat

@echo off

IF %PROCESSOR_ARCHITECTURE%==x86 SET INSTALLDIR=%ProgramFiles%IF %PROCESSOR_ARCHITECTURE%==AMD64 SET INSTALLDIR=%ProgramFiles(x86)%IF EXIST "%INSTALLDIR%\OCS Inventory agent\OCSInventory.exe" goto end

:installmsiexec /i "\\Server\votre\chemin\ocsagent.msi" /quiet

:endclear