OCS "Open Computers and Software Inventory Next Generation" est une solution open source de gestion des actifs qui vous permet d'inventorier les actifs informatiques. Il fonctionne en collectant les informations matérielles et logicielles de la machine distante exécutant le programme client OCS et en visualisant l'inventaire via une interface Web. Il utilise le protocole SNMP pour collecter des informations à partir des imprimantes réseau, des commutateurs, de l'ordinateur, etc.
Dans ce tutoriel, nous expliquerons comment installer l'inventaire OCS sur le serveur CentOS 8.
Prérequis
- Un serveur exécutant CentOS 8.
- Un nom de domaine valide pointant vers l'IP de votre serveur. Dans ce didacticiel, nous utiliserons le domaine ocs.example.com.
- Un mot de passe root est configuré sur le serveur.
Mise en route
Avant de commencer, vous devrez installer le référentiel EPLE et REMI sur votre serveur. Vous pouvez installer les deux en exécutant la commande suivante :
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
Une fois les deux packages installés, vous devrez également installer le package dnf-utils et activer le référentiel PowerTools. Vous pouvez le faire en exécutant la commande suivante :
dnf install dnf-utils -y
dnf config-manager --set-enabled PowerTools
Après avoir installé les deux packages, vous pouvez passer à l'étape suivante.
Installer Apache, MariaDB et PHP
OCS s'exécute sur le serveur Web, utilise MariaDB comme backend de base de données et est écrit en PHP. Vous devrez donc installer le serveur Web Apache, le serveur de base de données MariaDB, PHP et les autres extensions PHP requises sur votre serveur.
Tout d'abord, installez le serveur Apache et MariaDB avec la commande suivante :
dnf install httpd mariadb-server -y
Après avoir installé les deux packages, vous devrez installer PHP version 7.3 sur votre serveur. Par défaut, PHP 7.3 n'est pas disponible dans le référentiel par défaut de CentOS. Vous devrez donc activer le référentiel REMI et installer PHP 7.3 à partir du référentiel REMI.
Tout d'abord, activez le référentiel PHP REMI en exécutant la commande suivante :
yum-config-manager --enable remi
Ensuite, réinitialisez le module PHP par défaut et activez le module REMI PHP 7.3 en exécutant la commande suivante :
dnf module reset php
dnf module install php:remi-7.3
Une fois le module PHP version 7.3 activé, vous pouvez installer PHP version 7.3 avec les autres extensions requises en exécutant la commande suivante :
dnf install php php-curl php-zip php-gd php-soap php-xml php-mbstring php-fpm mod_perl unzip curl -y
Après avoir installé tous les packages, vous devrez modifier le fichier php.ini et apporter les modifications souhaitées. Vous pouvez le modifier avec la commande suivante :
nano /etc/php.ini
Modifiez les valeurs suivantes selon vos besoins :
upload_max_filesize = 10M post_max_size = 10M max_execution_time = 300 max_input_time = 300 memory_limit = 256M
Enregistrez et fermez le fichier lorsque vous avez terminé, puis démarrez les services Apache, MariaDB et PHP-FPM et autorisez-les à démarrer au redémarrage du système avec la commande suivante :
systemctl start httpd
systemctl start php-fpm
systemctl start mariadb
systemctl enable httpd
systemctl enable php-fpm
systemctl enable mariadb
Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.
Configurer la base de données MariaDB
Par défaut, le mot de passe root MariaDB n'est pas défini dans CentOS 8. Vous devrez donc le définir en premier. Vous devrez également sécuriser l'installation de MariaDB. Vous pouvez le définir en exécutant la commande suivante :
mysql_secure_installation
Il vous sera demandé de définir votre mot de passe root MariaDB, de supprimer l'utilisateur anonyme, d'interdire la connexion root à distance, de tester la base de données à distance et de recharger les privilèges comme indiqué ci-dessous :
Enter current password for root (enter for none): OK, successfully used password, moving on... Set root password? [Y/n] Y Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
Une fois le mot de passe root MariaDB défini, connectez-vous au shell MariaDB avec la commande suivante :
mysql -u root -p
Fournissez votre mot de passe root lorsque vous y êtes invité, puis créez une base de données et un utilisateur avec la commande suivante :
MariaDB [(none)]> CREATE DATABASE ocsweb;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON ocsweb.* TO [email protected] IDENTIFIED BY "password";
Ensuite, videz les privilèges et quittez le shell MariaDB avec la commande suivante :
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
À ce stade, MariaDB est sécurisée et la base de données est configurée pour OCS. Vous pouvez maintenant passer à l'étape suivante.
Installer l'inventaire OCS
Par défaut, le package OCS n'est pas disponible dans le référentiel par défaut de CentOS 8. Vous devrez donc installer le dépôt OCS sur votre système. Vous pouvez l'installer avec la commande suivante :
dnf install https://rpm.ocsinventory-ng.org/ocsinventory-release-latest.el8.ocs.noarch.rpm -y
Une fois le référentiel OCS installé, installez OCS avec la commande suivante :
dnf install ocsinventory -y
Après avoir installé OCS, vous devrez importer la base de données OCS. Vous pouvez l'importer avec la commande suivante :
mysql -u root -p ocsweb < /usr/share/ocsinventory-reports/ocsreports/files/ocsbase.sql
Il vous sera demandé de fournir votre mot de passe root MariaDB pour importer la base de données.
Ensuite, vous devrez activer le module de réécriture pour apache. Vous pouvez l'activer en éditant le fichier /etc/httpd/conf/httpd.conf :
nano /etc/httpd/conf/httpd.conf
Ajoutez la ligne suivante à la fin du fichier :
LoadModule rewrite_module modules/mod_rewrite.so
Enregistrez et fermez le fichier lorsque vous avez terminé, puis redémarrez le service Apache pour appliquer les modifications de configuration.
systemctl restart httpd
Vous pouvez maintenant vérifier l'état du service Apache avec la commande suivante :
systemctl status httpd
Vous devriez obtenir le résultat suivant :
? httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled) Drop-In: /usr/lib/systemd/system/httpd.service.d ??php-fpm.conf Active: active (running) since Tue 2020-10-27 04:40:05 EDT; 6min ago Docs: man:httpd.service(8) Main PID: 10742 (/usr/sbin/httpd) Status: "Total requests: 150; Idle/Busy workers 100/0;Requests/sec: 0.386; Bytes served/sec: 11KB/sec" Tasks: 278 (limit: 12523) Memory: 150.2M CGroup: /system.slice/httpd.service ??10742 /usr/sbin/httpd -DFOREGROUND ??10744 /usr/sbin/httpd -DFOREGROUND ??10745 /usr/sbin/httpd -DFOREGROUND ??10746 /usr/sbin/httpd -DFOREGROUND ??10747 /usr/sbin/httpd -DFOREGROUND ??10959 /usr/sbin/httpd -DFOREGROUND Oct 27 04:40:05 centos8 systemd[1]: Starting The Apache HTTP Server...
À ce stade, l'inventaire OCS est installé et configuré sur votre serveur. Vous pouvez maintenant passer à l'étape suivante.
Configurer Selinux et le pare-feu
Par défaut, SELinux est activé dans CentOS 8. Vous devrez donc le configurer pour votre inventaire OCS.
Vous pouvez configurer le SELinux avec la commande suivante :
setsebool httpd_can_network_connect on -P
chcon -R -t httpd_sys_rw_content_t /usr/share/ocsinventory-reports
Ensuite, autorisez les ports 80 et 443 à traverser le pare-feu avec la commande suivante :
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.
Accéder à l'interface Web d'inventaire OCS
Maintenant, ouvrez votre navigateur Web et accédez à l'interface Web OCS en utilisant l'URL http://your-server-ip/ocsreports/install.php . Vous serez redirigé vers l'écran suivant :
Fournissez vos informations de connexion à la base de données MariaDB et cliquez sur Envoyer bouton. Vous devriez voir l'écran suivant :
Maintenant, cliquez sur Cliquez ici pour accéder à l'interface graphique OCS-NG . Il vous sera demandé d'effectuer la mise à jour de la base de données comme indiqué ci-dessous :
Cliquez sur Exécuter le mettre à jour bouton. Une fois la base de données mise à jour, vous devriez voir l'écran suivant :
Cliquez sur Cliquez ici pour accéder à l'interface graphique OCS-NG . Vous serez redirigé vers l'écran de connexion OCS :
Indiquez le nom d'utilisateur par défaut en tant qu'administrateur et le mot de passe en tant qu'administrateur, puis cliquez sur Envoyer bouton. Vous devriez voir le tableau de bord OCS dans l'écran suivant :
Cliquez sur Tous les ordinateurs menu. Vous devriez voir l'écran suivant :
Ensuite, il est recommandé de supprimer le script d'installation. Vous pouvez le supprimer avec la commande suivante :
rm -rf /usr/share/ocsinventory-reports/ocsreports/install.php
Conclusion
Toutes nos félicitations! vous avez installé et configuré avec succès le serveur d'inventaire OCS sur CentOS 8. Vous pouvez maintenant installer les agents d'inventaire OCS sur les machines distantes et commencer à collecter des informations sur les logiciels et le matériel. N'hésitez pas à me demander si vous avez des questions.