Cómo instalar OCS Inventory NG en Fedora 31

En esta entrada veremos cómo instalar OCS Inventory NG en Fedora 31, de modo que puedas trabajar con el servidor y la interfaz web OCS Reports de esta popular aplicación de gestión de inventario de sistemas informáticos desde tu servidor o VPS Fedora.

Antes de instalar OCS Inventory NG en Fedora 31

Para poder completar los pasos de esta guía de instalación de OCS Inventory NG en Fedora 31 es importante satisfacer estos requerimientos básicos:

  • Un sistema Fedora 31 actualizado.
  • Un entorno o pila tipo LAMP (servicio web con PHP y bases de datos MariaDB/MySQL).
  • Acceso a línea de comandos con un usuario con permisos de sudo, o el propio usuario root.
  • Conexión a Internet.

Si no dispones del entorno mínimo aún, puedes consultar nuestra guía de instalación de la pila LAMP en Fedora 31.

Además, como necesitaremos algunas herramientas que se obtienen desde los repositorios de Fedora 31, actualizamos las listas de paquetes:

~$ sudo yum update

E instalamos dichas herramientas:

~$ sudo yum install -y tar wget

Cómo descargar OCS Inventory NG para Fedora 31

Vamos a descargar OCS Inventory NG para Fedora 31 desde la sección de lanzamientos del sitio web del proyecto:

como descargar ocs inventory ng server para fedora 31

Podemos descargar el paquete .tar.gz desde el navegador o, como vamos a hacer en este tutorial, desde consola con la herramienta wget:

~$ wget -q https://github.com/OCSInventory-NG/OCSInventory-ocsreports/releases/download/2.8/OCSNG_UNIX_SERVER_2.8.tar.gz

Cómo instalar OCS Inventory NG en Fedora 31

Para instalar OCS Inventory NG en Fedora 31 es necesario realizar una serie de tareas con el fin de preparar el sistema y lanzar con éxito el instalador. Veamos con detalle estos pasos.

Pre-requisitos

Instalamos las dependencias y herramientas que se necesitan para compilar OCS Inventory NG en Fedora 31:

~$ sudo yum install -y make mod_perl perl-Apache-DBI perl-Archive-Extract-Z-Compress-Zlib perl-DBI perl-Net-IP perl-Mojolicious perl-Plack perl-Switch perl-XML-Simple php-gd

Archivos de OCS Inventory NG Server

Descomprimimos el paquete que acabamos de descargar en el directorio de trabajo:

~$ tar xf OCSNG_UNIX_SERVER_2.8.tar.gz

Cambiamos el directorio de trabajo al nuevo subdirectorio que se acaba de crear:

~$ cd OCSNG_UNIX_SERVER_2.8

Y lanzamos el instalador:

$ sudo ./setup.sh

Un script interactivo se encargará de comprobar que el sistema cumple los requisitos necesarios, haciéndonos confirmar cada paso:

+----------------------------------------------------------+
|                                                          |
|  Welcome to OCS Inventory NG Management server setup !   |
|                                                          |
+----------------------------------------------------------+

Trying to determine which OS or Linux distribution you use
+----------------------------------------------------------+
| Checking for Apache web server binaries !                             |
+----------------------------------------------------------+

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)?
Assuming Communication server 1.0 RC2 or previous is not installed
on this computer.

Starting OCS Inventory NG Management server setup from folder /home/chacho/OCSNG_UNIX_SERVER_2.8
Storing log in file /home/chacho/OCSNG_UNIX_SERVER_2.8/ocs_server_setup.log

+----------------------------------------------------------+
| Checking for database server properties...                      |
+----------------------------------------------------------+

Your MySQL client seems to be part of MySQL version 10.3.
Your computer seems to be running MySQL 4.1 or higher, good ;-)

Which host is running database server [localhost] ?
OK, database server is running on host localhost ;-)

On which port is running database server [3306] ?
OK, database server is running on port 3306 ;-)


+----------------------------------------------------------+
| Checking for Apache web server daemon...                              |
+----------------------------------------------------------+

Where is Apache daemon binary [/usr/sbin/httpd] ?
OK, using Apache daemon /usr/sbin/httpd ;-)


+----------------------------------------------------------+
| Checking for Apache main configuration file...                  |
+----------------------------------------------------------+

Where is Apache main configuration file [/etc/httpd/conf/httpd.conf] ?
OK, using Apache main configuration file /etc/httpd/conf/httpd.conf ;-)


+----------------------------------------------------------+
| Checking for Apache user account...                                    |
+----------------------------------------------------------+

Which user account is running Apache web server [apache] ?
OK, Apache is running under user account apache ;-)


+----------------------------------------------------------+
| Checking for Apache group...                                                  |
+----------------------------------------------------------+

Which user group is running Apache web server [apache] ?
OK, Apache is running under users group apache ;-)


+----------------------------------------------------------+
| Checking for Apache Include configuration directory...   |
+----------------------------------------------------------+

Setup found Apache Include configuration directory in
/etc/httpd/conf.d.
Setup will put OCS Inventory NG Apache configuration in this directory.
Where is Apache Include configuration directory [/etc/httpd/conf.d] ?
OK, Apache Include configuration directory /etc/httpd/conf.d found ;-)


+----------------------------------------------------------+
| Checking for PERL Interpreter...                                              |
+----------------------------------------------------------+

Found PERL interpreter at </usr/bin/perl> ;-)
Where is PERL interpreter binary [/usr/bin/perl] ?
OK, using PERL interpreter /usr/bin/perl ;-)


Do you wish to setup Communication server on this computer ([y]/n)?


+----------------------------------------------------------+
|             Checking for Make utility...                 |
+----------------------------------------------------------+

OK, Make utility found at </usr/bin/make> ;-)

+----------------------------------------------------------+
|        Checking for Apache mod_perl version...           |
+----------------------------------------------------------+

Checking for Apache mod_perl version 1.99_22 or higher
Found that mod_perl version 1.99_22 or higher is available.
OK, Apache is using mod_perl version 1.99_22 or higher ;-)

+----------------------------------------------------------+
|    Checking for Communication server log directory...    |
+----------------------------------------------------------+

Communication server can create detailed logs. This logs can be enabled
by setting integer value of LOGLEVEL to 1 in Administration console
menu Configuration.
Where to put Communication server log directory [/var/log/ocsinventory-server] ?
OK, Communication server will put logs into directory /var/log/ocsinventory-server ;-)

+----------------------------------------------------------------------------+
|    Checking for Communication server plugins configuration directory...    |
+----------------------------------------------------------------------------+

Communication server need a directory for plugins configuration files.
Where to put Communication server plugins configuration files [/etc/ocsinventory-server/plugins] ?
OK, Communication server will put plugins configuration files into directory /etc/ocsinventory-server/plugins ;-)

+-------------------------------------------------------------------+
|   Checking for Communication server plugins perl directory...     |
+-------------------------------------------------------------------+

Communication server need a directory for plugins Perl modules files.
Where to put Communication server plugins Perl modules files [/etc/ocsinventory-server/perl] ?
OK, Communication server will put plugins Perl modules files into directory /etc/ocsinventory-server/perl ;-)


+----------------------------------------------------------+
| Checking for required Perl Modules...                                 |
+----------------------------------------------------------+

Checking for DBI PERL module...
Found that PERL module DBI is available.
Checking for Apache::DBI PERL module...
Found that PERL module Apache::DBI is available.
Checking for DBD::mysql PERL module...
Found that PERL module DBD::mysql is available.
Checking for Compress::Zlib PERL module...
Found that PERL module Compress::Zlib is available.
Checking for XML::Simple PERL module...
Found that PERL module XML::Simple is available.
Checking for Net::IP PERL module...
Found that PERL module Net::IP is available.
Checking for Archive::Zip Perl module...
Found that PERL module Archive::Zip is available.


Do you wish to setup Rest API server on this computer ([y]/n)?

+----------------------------------------------------------+
| Checking for REST API Dependencies ...                         |
+----------------------------------------------------------+

Found that PERL module Mojolicious::Lite is available.
Found that PERL module Switch is available.
Found that PERL module Plack::Handler is available.

+----------------------------------------------------------+
| Configuring REST API Server files ...                          |
+----------------------------------------------------------+

Where do you want the API code to be store [/usr/lib64/perl5/vendor_perl] ?
Copying files to /usr/lib64/perl5/vendor_perl

+----------------------------------------------------------+
| Configuring REST API Server configuration files ...            |
+----------------------------------------------------------+


+----------------------------------------------------------+
|                 OK, looks good ;-)                       |
|                                                          |
|     Configuring Communication server Perl modules...     |
+----------------------------------------------------------+

Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for Apache::Ocsinventory
Writing MYMETA.yml and MYMETA.json

+----------------------------------------------------------+
|                 OK, looks good ;-)                       |
|                                                          |
|      Preparing Communication server Perl modules...      |
+----------------------------------------------------------+


+----------------------------------------------------------+
|                 OK, prepare finshed ;-)                  |
|                                                          |
|     Installing Communication server Perl modules...      |
+----------------------------------------------------------+


+----------------------------------------------------------+
| OK, Communication server Perl modules install finished;-)|
|                                                          |
|     Creating Communication server log directory...       |
+----------------------------------------------------------+

Creating Communication server log directory /var/log/ocsinventory-server.

Fixing Communication server log directory files permissions.
Configuring logrotate for Communication server.
Removing old communication server logrotate file /etc/logrotate.d/ocsinventory-NG
Writing communication server logrotate to file /etc/logrotate.d/ocsinventory-server


+----------------------------------------------------------------------+
|        OK, Communication server log directory created ;-)            |
|                                                                      |
|   Creating Communication server plugins configuration directory...   |
+----------------------------------------------------------------------+

Creating Communication server plugins configuration directory /etc/ocsinventory-server/plugins.


+----------------------------------------------------------------------+
| OK, Communication server plugins configuration directory created ;-) |
|                                                                      |
|        Creating Communication server plugins Perl directory...       |
+----------------------------------------------------------------------+

Creating Communication server plugins Perl directory /etc/ocsinventory-server/perl.


+----------------------------------------------------------------------+
|     OK, Communication server plugins Perl 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) ?
OK, using 'z-ocsinventory-server.conf' as Communication Server Apache configuration file
Removing old communication server configuration to file /etc/httpd/conf.d/ocsinventory.conf
Writing communication server configuration to file /etc/httpd/conf.d/z-ocsinventory-server.conf

+----------------------------------------------------------------------+
|       OK, Communication server setup successfully finished ;-)       |
|                                                                      |
| Please, review /etc/httpd/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)?

+----------------------------------------------------------+
|    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), especially if you use deployment feature.

Do you wish to continue ([y]/n)?
Assuming directories 'ocsreports' and 'download' removed from
Apache root document directory.

Where to copy Administration Server static files for PHP Web Console
[/usr/share/ocsinventory-reports] ?
OK, using directory /usr/share/ocsinventory-reports to install static files ;-)

Where to create writable/cache directories for deployment packages,
administration console logs, IPDiscover and SNMP [/var/lib/ocsinventory-reports] ?
OK, writable/cache directory is /var/lib/ocsinventory-reports ;-)


+----------------------------------------------------------+
|         Checking for required Perl Modules...            |
+----------------------------------------------------------+

Checking for DBI PERL module...
Found that PERL module DBI is available.
Checking for DBD::mysql PERL module...
Found that PERL module DBD::mysql is available.
Checking for XML::Simple PERL module...
Found that PERL module XML::Simple is available.
Checking for Net::IP PERL module...
Found that PERL module Net::IP is available.

+----------------------------------------------------------+
|      Installing files for Administration server...       |
+----------------------------------------------------------+

Creating PHP directory /usr/share/ocsinventory-reports/ocsreports.
Copying PHP files to /usr/share/ocsinventory-reports/ocsreports.
Fixing permissions on directory /usr/share/ocsinventory-reports/ocsreports.
Creating database configuration file /usr/share/ocsinventory-reports/ocsreports/dbconfig.inc.php.
Creating IPDiscover directory /var/lib/ocsinventory-reports/ipd.
Fixing permissions on directory /var/lib/ocsinventory-reports/ipd.
Creating packages directory /var/lib/ocsinventory-reports/download.
Fixing permissions on directory /var/lib/ocsinventory-reports/download.
Creating snmp mibs directory /var/lib/ocsinventory-reports/snmp.
Fixing permissions on directory /var/lib/ocsinventory-reports/snmp.
Creating Administration server log files directory /var/lib/ocsinventory-reports/logs.
Fixing permissions on directory /var/lib/ocsinventory-reports/logs.
Creating Administration server scripts log files directory /var/lib/ocsinventory-reports/scripts.
Fixing permissions on directory /var/lib/ocsinventory-reports/scripts.
Configuring IPDISCOVER-UTIL Perl script.
Installing IPDISCOVER-UTIL Perl script.
Fixing permissions on IPDISCOVER-UTIL Perl script.
Writing Administration server configuration to file /etc/httpd/conf.d/ocsinventory-reports.conf

+----------------------------------------------------------------------+
|        OK, Administration server installation finished ;-)           |
|                                                                      |
| Please, review /etc/httpd/conf.d/ocsinventory-reports.conf
|          to ensure all is good and restart Apache daemon.            |
|                                                                      |
| Then, point your browser to http://server//ocsreports
|        to configure database server and create/update schema.        |
+----------------------------------------------------------------------+


Setup has created a log file /home/chacho/OCSNG_UNIX_SERVER_2.8/ocs_server_setup.log. Please, save this file.
If you encounter error while running OCS Inventory NG Management server,
we can ask you to show us its content !

DON'T FORGET TO RESTART APACHE DAEMON !

Enjoy OCS Inventory NG ;-)

Podemos salir del suddirectorio:

~$ cd ..

Y eliminarlo:

~$ sudo rm -rf OCSNG_UNIX_SERVER_2.8

Base de datos

Conectamos con el servicio de bases de datos con el cliente mysql y el usuario que utilicemos para administrar:

~$ mysql -u root -p

Creamos la base de datos:

> create database ocsweb;

En MariaDB o MySQL 5 creamos el usuario de la forma usual:

> create user ocs@localhost identified by 'XXXXXXXX';

Pero en MySQL 8 conviene especificar el plugin compatible:

> create user ocs@localhost identified with mysql_native_password by 'XXXXXXXX';

Concedemos los permisos al usuario sobre la base de datos:

> grant all privileges on ocsweb.* to ocs@localhost;

Y cerramos la conexión:

> exit

Servicio web

Editamos el archivo de configuración de OCS Inventory para Apache:

~$ sudo nano /etc/httpd/conf.d/z-ocsinventory-server.conf

Buscamos la siguiente directiva PerlSetVar:

...
PerlSetVar OCS_DB_PWD ocs
...

Y cambiamos su valor por el que hayamos usado a la hora de crear el usuario de la base de datos en el paso anterior:

...
PerlSetVar OCS_DB_PWD XXXXXXXX
...

Guardamos los cambios y recargamos la configuración del servicio web:

~$ sudo systemctl reload httpd

Como OCS Inventory NG necesita acceder y escribir en ciertos directorios, cambiamos su propietario al usuario con el que corre el servicio web:

~$ sudo chown -R apache /usr/share/ocsinventory-reports/ocsreports/

Y:

~$ sudo chown -R apache /var/lib/ocsinventory-reports/

SELinux

Si tenemos SELinux activado en Fedora 31 no bastará con modificar los permisos ordinarios, sino que habrá que crear un contexto de lectura/escritura para el servicio web:

~$ sudo semanage fcontext -a -t httpd_sys_rw_content_t "/usr/share/ocsinventory-reports/ocsreports(/.*)?"

Y lo aplicamos con el comando restorecon:

~$ sudo restorecon -R /usr/share/ocsinventory-reports/ocsreports/

Instalador web

Para acceder al instalador web de OCS Inventory NG Server en Fedora 31 desde un navegador, añadiremos la ruta /ocsreports a la dirección IP o nombre DNS del servidor.

Por ejemplo, el servidor Fedora 31 que usamos para redactar este artículo es accesible en el subdominio fedora31.local.lan, por lo que podríamos emplear http://fedora31.local.lan/ocsreports como URL:

como instalar ocs inventory ng server en fedora 31

En la primera página del instalador introducimos los datos de conexión al servicio de bases de datos tal como los creamos anteriormente (usuario, contraseña y base de datos de OCS Inventory NG).

La base de datos se actualizará en unos instantes, tras los cuales se nos informa de que el usuario y contraseña por defecto son admin/admin:

instalar ocs inventory ng server en fedora 31

Seguiremos el enlace «Click here to enter OCS-NG GUI» para iniciar sesión, pero se nos informará de que existe una atualización para la base de datos:

instalacion de ocs inventory ng server en fedora 31

No tenemos más opciones que realizar la actualización a través del enlace «Perform the update«.

La actualización se realiza instantáneamente y se nos vuelve a mostrar el enlace para iniciar sesión:

instalador de ocs inventory ng server para fedora 31

Ahora sí, se muestra la página de inicio de sesión de la interfaz web de OCS Inventory NG:

ocs inventory ng server para fedora 31

Usaremos el usuario y contraseña predeterminados, pero antes de acceder es conveniente borramos el instalador web, por motivos de seguridad. Esto lo podemos hacer fácilmente desde consola:

~$ sudo rm /usr/share/ocsinventory-reports/ocsreports/install.php

Iniciada la sesión, se mostrará la página principal de OCS Reports:

ocs inventory ng server en fedora 31

Una de las primeras acciones que deberíamos llevar a cabo es el cambio de contraseña del usuario administrador, para lo que accederemos a «MI CUENTA» desde el menú desplegable que ofrece el icono con forma de engranaje:

ocs inventory ng server sobre fedora 31

Además de la contraseña, podremos cambiar algunos datos más del perfil del usuario administrador. Terminada la realización de ajustes, los guardaremos con el enlace «OK«.

¡Todo listo para empezar a añadir clientes que conecten al servicio!

Conclusión

¡Apoya comoinstalar.me!

Si ya puedes empezar a monitorizar tus sistemas gracias a esta guía de instalación de OCS Inventory en Fedora 31 y quieres agradecérnoslo, puedes colaborar con el mantenimiento de este sitio y la creación de más tutoriales y guías invitándonos a un café:

 

O dejando 1 $ de propina con PayPal:

¡Gracias!

Valora esta entrada

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (1 votos, promedio: 5,00 de 5)
Cargando...

Deja un comentario

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies.

ACEPTAR
Aviso de cookies