Red Hat 8, Alma Linux 8 : Installer OCS Inventory pour l'inventaire du parc
Table des matières
OCS est une solution de gestion technique de parc informatique. Il permet l'inventaire matériel, logiciel, le télédéploiement et bien d'autres options.
Nous allons voir comment mettre en oeuvre un serveur OCS Inventory.
Nous avons besoin de quelques prérequis sur notre CentOS à savoir :
Le dépôt EPEL :
L'activation du dépôt PowerTools :
L'installation du dépôt de remi pour des modules PHP spécifiques :
Et du dépôt d'OCS :
Dans un premier temps, on va activer la version 7.3 de remi au lieu du PHP fourni par défaut de CentOS :
Puis on installe OCS Inventory avec le paquet qui va bien (cela installera toutes les dépendances nécessaires, apache, php, mariadb, etc...) :
Il n'est nullement nécessaire de désactiver SELinux, ni de créer des exceptions, tout fonctionne sans soucis.
On va démarrer et activer au démarrage le moteur de base de données :
On effectue la première initialisation de MariaDB en définissant un mot de passe à root :
On va ensuite créer une base de données pour OCS (je garderai le nom par défaut ocsweb) et un utilisateur (que j'appellerai ocs) :
Pour information, il faut modifier le mot de passe de l'utilisateur de base de données dans 2 fichiers :
On active le service Apache au démarrage et on le démarre. On fait de même avec php-fpm :
On va ouvrir les ports 80/TCP et 443/TCP, seuls ports nécessaires à l'accès OCS Web ou avec les agents :
Pour accéder à l'installation de l'interface web, on accède à la page http://serveur/ocsreports/ par exemple :
http://192.168.221.123/ocsreports/
On se laisse guider par la seule fenêtre de paramétrage nous demandant de compléter les informations d'identification de la base de données
Pour info, les paramétrages sont placés dans /etc/ocsinventory/ocsinventory-reports/dbconfig.inc.php
On supprimera l'assistant d'installation par précaution :
Une fois l'installation terminée, l'accès se fait avec l'utilisateur et mot de passe par défaut : admin/admin
On créera un utilisateur sadmin puis on désactivera le compte par défaut, pour respecter les bonnes pratiques informatiques.
Par défaut, si on affiche la racine du serveur Web, on arrive sur la page par défaut et on n'accède pas à OCS.
Si sur ce serveur il n'y a que OCS, on pourra créer un fichier index.php à la racine du serveur Web, pour rediriger vers l'interface d'OCS :
L'agent pour Windows se situe ici : https://github.com/OCSInventory-NG/WindowsAgent/releases
L'agent pour UNIX, à compiler, se situe ici : https://github.com/OCSInventory-NG/UnixAgent/releases
Pour Debian et Ubuntu, ajouter, le la clé dans apt (en root) :
Editer les sources :
Ajouter le repo d'OCS, pour Debian Buster :
Pour Ubuntu Focal :
On met à jour les dépôts et on installe l'agent :
Pour CentOS 7, on ajoute EPEL + le repo d'OCS :
Puis on installe l'agent :
Pou CentOS 8, on ajoute EPEL et le repo d'OCS :
On installe l'agent avec activation des dépôts nécessaires :
Pour Fedora, on installe le dépôt d'OCS :
Puis on installe l'agent :
Sous Windows, les informations sont demandées à l'installation, il n'y a rien à faire.
Sous Linux, il est nécessaire de paramétrer le fichier de configuration pour indiquer à quel serveur envoyer l'inventaire :
On commentera la ligne local et on indiquera dans la ligne server le nom du serveur (ou l'adresse complète, même si l'agent converti le nom ou IP directement avec l'URL mentionnée) :
Pour lancer un inventaire de suite :
Introduction
OCS est une solution de gestion technique de parc informatique. Il permet l'inventaire matériel, logiciel, le télédéploiement et bien d'autres options.
Nous allons voir comment mettre en oeuvre un serveur OCS Inventory.
Prérequis
Nous avons besoin de quelques prérequis sur notre CentOS à savoir :
Le dépôt EPEL :
Code BASH :
dnf install epel-release
L'activation du dépôt PowerTools :
Code BASH :
dnf config-manager --set-enabled powertools
L'installation du dépôt de remi pour des modules PHP spécifiques :
Code BASH :
dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm dnf config-manager --set-enabled remi
Et du dépôt d'OCS :
Code BASH :
dnf install https://rpm.ocsinventory-ng.org/ocsinventory-release-latest.el8.ocs.noarch.rpm
Installation
Dans un premier temps, on va activer la version 7.3 de remi au lieu du PHP fourni par défaut de CentOS :
Code BASH :
dnf module reset php dnf module install php:remi-7.3
Puis on installe OCS Inventory avec le paquet qui va bien (cela installera toutes les dépendances nécessaires, apache, php, mariadb, etc...) :
Code BASH :
dnf install ocsinventory
Configuration
SElinux
Il n'est nullement nécessaire de désactiver SELinux, ni de créer des exceptions, tout fonctionne sans soucis.
Base de données
On va démarrer et activer au démarrage le moteur de base de données :
Code BASH :
systemctl enable --now mariadb
On effectue la première initialisation de MariaDB en définissant un mot de passe à root :
Code BASH :
mysql_secure_installation
On va ensuite créer une base de données pour OCS (je garderai le nom par défaut ocsweb) et un utilisateur (que j'appellerai ocs) :
Code BASH :
mysql -u root -p
Code BASH :
CREATE DATABASE ocsweb; GRANT ALL ON ocsweb.* TO 'ocs'@'localhost' IDENTIFIED BY 'hAtdvUQ26aEIjslHmQVy'; FLUSH PRIVILEGES;
Pour information, il faut modifier le mot de passe de l'utilisateur de base de données dans 2 fichiers :
Code BASH :
vi /etc/httpd/conf.d/ocsinventory-server.conf
Code TEXT :
PerlSetVar OCS_DB_PWD hAtdvUQ26aEIjslHmQVy
Code BASH :
vi /etc/httpd/conf.d/ocsinventory-restapi.conf
Code TEXT :
$ENV{OCS_DB_PWD} = 'hAtdvUQ26aEIjslHmQVy';
Serveur Web
On active le service Apache au démarrage et on le démarre. On fait de même avec php-fpm :
Code BASH :
systemctl enable --now httpd systemctl enable --now php-fpm
Pare-feu
On va ouvrir les ports 80/TCP et 443/TCP, seuls ports nécessaires à l'accès OCS Web ou avec les agents :
Code BASH :
firewall-cmd --add-service=http --permanent firewall-cmd --add-service=https --permanent firewall-cmd --reload
Initialisation de l'interface web
Pour accéder à l'installation de l'interface web, on accède à la page http://serveur/ocsreports/ par exemple :
http://192.168.221.123/ocsreports/
On se laisse guider par la seule fenêtre de paramétrage nous demandant de compléter les informations d'identification de la base de données
Pour info, les paramétrages sont placés dans /etc/ocsinventory/ocsinventory-reports/dbconfig.inc.php
On supprimera l'assistant d'installation par précaution :
Code BASH :
rm /usr/share/ocsinventory-reports/ocsreports/install.php
Utiliser OCS
Connexion et création d'un utilisateur
Une fois l'installation terminée, l'accès se fait avec l'utilisateur et mot de passe par défaut : admin/admin
On créera un utilisateur sadmin puis on désactivera le compte par défaut, pour respecter les bonnes pratiques informatiques.
Paramétrer une redirection de la racine du serveur
Par défaut, si on affiche la racine du serveur Web, on arrive sur la page par défaut et on n'accède pas à OCS.
Si sur ce serveur il n'y a que OCS, on pourra créer un fichier index.php à la racine du serveur Web, pour rediriger vers l'interface d'OCS :
Code BASH :
vi /var/www/html/index.php
Code PHP :
<?php header('Location: /ocsreports'); ?>
Installer les agents
Windows
L'agent pour Windows se situe ici : https://github.com/OCSInventory-NG/WindowsAgent/releases
UNIX à compiler
L'agent pour UNIX, à compiler, se situe ici : https://github.com/OCSInventory-NG/UnixAgent/releases
Debian et Ubuntu
Pour Debian et Ubuntu, ajouter, le la clé dans apt (en root) :
Code BASH :
curl -sS http://deb.ocsinventory-ng.org/pubkey.gpg | apt-key add -
Editer les sources :
Code BASH :
vi /etc/apt/sources.list.d/ocsinventory.list
Ajouter le repo d'OCS, pour Debian Buster :
Code BASH :
deb http://deb.ocsinventory-ng.org/debian/ buster main
Pour Ubuntu Focal :
Code BASH :
deb http://deb.ocsinventory-ng.org/ubuntu/ focal main
On met à jour les dépôts et on installe l'agent :
Code BASH :
apt update
apt install ocsinventory-agent
CentOS
Pour CentOS 7, on ajoute EPEL + le repo d'OCS :
Code BASH :
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm yum install https://rpm.ocsinventory-ng.org/ocsinventory-release-latest.el7.ocs.noarch.rpm
Puis on installe l'agent :
Code BASH :
yum install ocsinventory-agent
Pou CentOS 8, on ajoute EPEL et le repo d'OCS :
Code BASH :
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm dnf install https://rpm.ocsinventory-ng.org/ocsinventory-release-latest.el8.ocs.noarch.rpm
On installe l'agent avec activation des dépôts nécessaires :
Code BASH :
dnf --enablerepo=powertools --enablerepo=epel-playground install ocsinventory-agent
Fedora
Pour Fedora, on installe le dépôt d'OCS :
Code BASH :
dnf install https://rpm.ocsinventory-ng.org/ocsinventory-release-latest.fc$(rpm -E %fedora).ocs.noarch.rpm
Puis on installe l'agent :
Code BASH :
dnf install ocsinventory-agent
Paramétrer l'agent
Windows
Sous Windows, les informations sont demandées à l'installation, il n'y a rien à faire.
Linux
Sous Linux, il est nécessaire de paramétrer le fichier de configuration pour indiquer à quel serveur envoyer l'inventaire :
Code BASH :
vi /etc/ocsinventory/ocsinventory-agent.cfg
On commentera la ligne local et on indiquera dans la ligne server le nom du serveur (ou l'adresse complète, même si l'agent converti le nom ou IP directement avec l'URL mentionnée) :
Code BASH :
server = http://192.168.221.123/ocsinventory #local
Pour lancer un inventaire de suite :
Code BASH :
ocsinventory-agent