====== La collecte d'informations ====== ===== Présentation ===== La collecte automatisée d'informations passe par l'installation sur les postes clients de l'agent **ocs**. Il existe un (ou plusieurs) agent(s) pour chaque système d'exploitation. L’installation de l’agent peut être automatisé notamment si cela doit être fait sur de nombreux postes. Ce déploiement de l’agent peut se faire avec une stratégie de groupe (**GPO**) dans un domaine **Active Directory** de Microsoft. La suite de ce document détaille l’installation manuelle pour un client Windows. ===== Installation de l'agent sous Windows ===== ==== Présentation ==== L'agent OCS Inventory NG pour Windows peut fonctionner : * en tant que **service** Windows automatiquement au démarrage ; * en tant qu'**application** qui peut être lancée à l'aide d'un script de login, d'une GPO sous Active Directory, d'une tâche planifiée, ou d'un raccourci dans le menu Démarrer. Il est **recommandé d’utiliser l'agent en tant que service**, notamment pour la fonctionnalité de déploiement de paquets. **Téléchargez** depuis le dossier partagé **Progs** la dernière version de l'agent Windows **OCSNG-Windows-Agent-2.0.5.zip**. Ce fichier est disponible depuis la section de téléchargement du site web http://www.ocsinventory-ng.org/. Ce paquet contient 2 fichiers : * **OCS-NG_Windows_Agent_Setup.exe** : installe l'agent Windows, soit en tant que service Windows, soit en tant qu'application tierce. C’est l’agent que vous allez utiliser. * **OcsLogon.exe** : installe l'agent en téléchargeant les binaires depuis le serveur de communication (ocsagent.exe), ou lance l'agent si ce dernier est déjà installé sans utilisation du service Windows. OcsLogon installera l'agent en tant que service ou en tant qu'application en se basant sur les commutateurs de ligne de commande. ==== Installation==== **Décompressez** l’archive pour extraire et exécuter **OCS-NG-Windows-Agent-Setup.exe**. Un fichier de **log** (OcsAgentSetup) rendant compte de l'installation (à consulter en cas de problème ou par curiosité) est créé dans le répertoire où se trouve l'exécutable OCS-NG-Windows-Agent-Setup.exe que l'on vient de lancer. Après validation de la licence, vous choisissez le type d’installation : * **Network inventory** : l'ordinateur client peut joindre via le réseau le serveur OCS Inventory NG, et de ce fait, il est possible de lancer régulièrement l'agent via un service Windows, ou une GPO, voire une script de login. * **Local inventory** : l'ordinateur n'est pas connecté au réseau ou ne pourra jamais communiquer avec le serveur OCS Inventory NG. Vous pouvez manuellement générer un fichier d'inventaire et l'importer plus tard sur le serveur (voir le chapitre Génération d'inventaire de machines non connectées au réseau ci-dessous). Choisissez le type d’installation **Network inventory** : {{ :reseau:ocs:ocs01.png |}} Puis configurez le client de votre ordinateur Windows : * Précisez l'URL de votre serveur de communication OCS Inventory NG, c'est à dire http://rubix.btssio.local/ocsinventory. * Vous pouvez aussi spécifier une adresse en **https** si SSL est activé et configuré sur votre serveur afin de sécuriser les communications. {{ :reseau:ocs:ocs02_2.png |}} * Ne précisez pas de proxy : {{ :reseau:ocs:ocs03.png |}} Par défaut, l'agent OCS Inventory écrit quelques informations dans les fichiers de log. Vous pouvez améliorer la verbosité des logs en activant l'option “**Verbose log”.** Précisez aussi comme **TAG** le type d’OS de votre ordinateur client : Windows7. Pour finir, indiquez de lancer immédiatement l’inventaire. {{ :reseau:ocs:ocs04.png |}} Le répertoire d'installation est, par défaut, "**C:\Program Files\OCS Inventory Agent\**". Une fois l'agent installé sur le client, le **service OCSinventory** est configuré pour être lancé automatiquement en tant que service au démarrage. ===== Visualiser les remontées d'informations ===== La gestion du parc se réalise via la **console web d'administration** à l'URL suivante : http://rubix.btssio.local/ocsreports/. **OCS Inventory-NG** propose sa propre gestion des utilisateurs et, lors de son installation, un compte administrateur d'Ocs (**admin**) a été créé avec un mot de passe par défaut qui a été modifié pour des raisons de sécurité. Il existe également **3 profils pré-créés** : ^Profil pré-créé ^Description ^ |Administrateur |tous les droits | |Utilisateur |Accès en lecture seule | |Utilisateur local | | **OCS Inventory-NG** n'est pas configuré pour permettre l'authentification à partir d'un compte du domaine BTSSIO. Le compte **btssio** (PWD **btssio**) a été créé avec le profil **Utilisateur** pour permettre de **consulter** les informations collectées par **OCS Inventory-NG** et faire des recherches dans l'inventaire. Connectez-vous à l’interface d’administration (console d’administration) http://rubix.btssio.local/ocsreports/ avec le compte **btssio** pour vérifier que la remontée d'information s'est correctement effectuée. {{ :reseau:ocs:ocs05.png |}} La page d'accueil de l'administration est la suivante (avec le profil Administrateur): {{ :reseau:ocs:ocs06.png |}} Cliquez sur l’icône {{:reseau:ocs:ocs07.png|}} pour visualiser l’inventaire et voir votre nouvel ordinateur client : {{ :reseau:ocs:ocs08.png |}} A chaque fois qu'un inventaire est effectué, l'agent utilise et écrit dans les fichiers stockés dans le répertoire “**%ProgramData%\OCS Inventory NG\Agent**”. Il s'agit en général du répertoire : * **C:\Documents and Settings\All Users\Application Data\OCS Inventory NG\Agent** sous Win-dows 2000, XP et 2003. * **C:\ProgramData\OCS Inventory NG\Agent** sous Windows Vista, 2008, Seven et 2008 R2. Pour accéder à ce dossier, il faut modifier les options des dossiers afin de permettre l'affichage des fichiers, des dossiers et des lecteurs cachés. Ce dossier contient au minimum les fichiers suivants : * **ocsinventory.ini**: tous les paramètres de configuration de l'agent (l'adresse du serveur et ses paramètres d'authentification, l'adresse du proxy et ses paramètres d'authentification, les propriétés du service...), * ocsinventory.dat : le fichier d'identité unique de l'ordinateur, basé sur l'adresse MAC et le nom d'hôte, * **last_state** : l'état du dernier inventaire afin de détecter les changements entre deux inventaires, * **history** : l'historique des paquets déployés, * Tous les fichiers de log créés par l'agent OCS Inventory NG. **Note**: Vous devez arrêter le service “**OCS Inventory Service**” pour effectuer des modifications dans ces fichiers car ils sont protégés en écriture durant leur exécution. ===== Exemple de fichier ocsinventory.ini d’un client Windows 7===== [OCS Inventory Agent] ComProvider=ComHTTP.dll Debug=1 Local= NoSoftware=0 HKCU=0 NoTAG=1 IpDisc= [HTTP] Server=http://rubix.btssio.local/ocsinventory SSL=1 CaBundle=cacert.pem AuthRequired=0 User= Pwd= ProxyType=0 Proxy= ProxyPort=0 ProxyAuthRequired=0 ProxyUser= ProxyPwd= [OCS Inventory Service] PROLOG_FREQ=24 OLD_PROLOG_FREQ=24 TTO_WAIT=19657 * **PROLOG_FREQ** contient la valeur synchronisée à chaque connexion au serveur. * **OLD_PROLOG_FREQ** contient la valeur par défaut puis ensuite même valeur que **PRO-LOG_FREQ**. * La variable **TTO_WAIT** représente en secondes le nombre d'heures d'attente ; elle est décrémentée de "1" à chaque seconde par le service (le fichier **service.ini** est réécrit toutes les minutes). Lorsqu'elle arrive à "0", l'agent exécute la commande **OCSinventory.exe** suivi des options contenues dans le fichier **ocsinventory.ini**. Cet agent va générer un fichier de log "**OCSInventory.log**" dans le répertoire **C:\Documents and Settings\All Users\Application Data\OCS Inventory NG\Agent** ou **C:\ProgramData\OCS Inventory NG\Agent** (selon le système d’exploitation) et transmettre la remontée d'inventaire au serveur si l'inventaire est plus vieux que le nombre de jours spécifiés dans la variable **FREQUENCY**. Une fois que le service a lancé l'agent, il recalcule de manière aléatoire le **TTO_WAIT** compris entre 1 et la valeur de **PROLOG_FREQ** (convertie en secondes) synchronisée avec la variable correspondante sur le serveur **OCSinventory**. À chaque installation, le contenu de la variable **TTO_WAIT** est différent mais inférieur à **3 600 secondes** (correspondant à 1 h qui est le contenu par défaut de la variable **PROLOG_FREQ**). ===== Forcer un inventaire ===== Pour forcer l'inventaire d'une machine immédiatement, il suffit d'exécuter la commande : OCSInventory.exe /SERVER=http://192.168.1.27/ocsinventory Pour forcer l'inventaire d'une machine dans un temps défini : * Arrêt du service OCS INVENTORY SERVICE * Édition du fichier C:\ProgramData\OCS Inventory NG\Agent\ocsinventory.ini * Affectation d'une faible valeur à TTO_WAIT (30 par exemple). * Redémarrage du service OCS INVENTORY SERVICE Ainsi, après 30 secondes le client doit être mis à jour dans l'inventaire. Vous avez utilisé la procédure d'installation interactive de l'agent. Cette méthode oblige à effectuer ce processus sur chaque poste de votre réseau. ===== Scripter l'installation de l'agent OCS Inventory-NG ===== Il est possible de scripter cette installation avec les options de la ligne de commande d'installation de l'agent **OCS Inventory NG** en mode **service**. Voici quelques paramètres qui peuvent être appelés en ligne de commande : * **/S** pour lancer l'installeur en mode silencieux, sans interaction de l'utilisateur * **/NOSPLASH** désactive les fenêtres d'affichage lorsque l'installeur est lancé * **/NO_SYSTRAY** Pour ne pas créer un raccourci dans le dossier de démarrage "All Users" pour démarrer l'applet du systray quand l'utilisateur ouvre une session. * **/NOW** pour lancer un premier 'inventaire à la fin de l'installation * **/NOSOFTWARE** pour ignorer les logiciels installés Vous pouvez aussi passer les paramètres de ligne de commande suivants à l'installeur * **/SERVER=** (adresse IP ou nom DNS du serveur de Communication OCS Inventory) * **/PROXY_TYPE=** * **/PROXY=** * **/DEBUG=** (un fichier de log au nom de la machine est créé dans le répertoire d'installation à chaque remontée d'inventaire) * **/TAG=** Voici un lien vers des informations sur la liste des arguments et leur signification : http://wiki.ocsinventory-ng.org/index.php/Documentation.