Instalación y configuración de servidor OCS Inventory NG en Ubuntu 17.04

En este documento instalaremos un servidor OCS-Inventory para realizar inventarios automáticos de nuestros equipos de red. Esta herramienta la montaremos sobre un servidor Ubuntu 17.04, un apache2 y servidor de bases de datos MySQL.

Hemos ya preparado un Ubuntu Server 17.04 habiendo hecho una instalación totalmente por defecto

Dejo también aquí un vídeo donde se muestra toda el proceso de instalación y los pasos que veremos a continuación.

Instalación

Primero asignaremos una IP fija a la ethernet

sudo vi /etc/network/interfaces

Modificamos nuestra configuración de red, pasamos de dhcp a static y configuramos los parámetros de red

En mi caso modificaré la ethernet que esta montada cómo ens33, en vuestro caso será posiblemente otro nombre, tenéis que mantener la primera linea de auto así cómo el iface xxxx inet de la segunda linea

En este punto podemos reiniciar la tarjeta de red mediante los comandos ifdown y ifup, pero también podemos reiniciar directamente el equipo, de este modo los cambios se van a aplicar seguro.

Utilizaremos:
sudo ifdown eth0 (eth0 es un ejemplo, en nuestro caso tendremos que ver cual es nuestra tarjeta de red)
sudo ifup eth0 (eth0 es ejemplo, en mi caso la ethernet se llama ens33)

En caso de duda podemos reiniciar el equipo con:
sudo shutdown now -r

Actualizamos repositorios y realizamos un upgrade
sudo apt-get update
sudo apt-get upgrade

Instalamos el servidor ssh, puesto que a partir de este momento trabajaremos des de un cliente ssh (Putty)
sudo atp-get openssh-server

Iniciamos la instalación de servidor web apache, MySQL, librerias php y perl que vamos a necesitar
sudo apt-get install wget build-essential apache2 php libapache2-mod-php7.0 php-gd libgd-dev unzip libapache2-mod-perl2 mysql-server libdbd-mysql-perl php-mysql php-mbstring php7.0-mbstring php7.0-mcrypt php-gettext php-soap php7.0-curl libxml-simple-perl libapache-dbi-perl libnet-ip-perl libsoap-lite-perl

Continuamos instalando dependencias vía CPAN
sudo cpan -i XML::Entities Compress::Zlib Archive::Zip

Activamos en php mcrypt y mbstring
sudo phpenmod mcrypt
sudo phpenmod mbstring

Reiniciamos apache2 y ya podemos probar mediante el navegador si nuestro servidor web esta disponible

sudo service apache2 restart

Editamos el arcivo de configuración de apache y añadimos la dirección del servidor en la ultima linea, en ese caso yo le voy a poner “localhost”

sudo vi /etc/apache2/apache2.conf

Conectamos al MySQL y creamos la base de datos y el usuraio y password que vamos a utilizar.
mysql -u root -p

Ahora creamos una carpeta donde descargar y descomprimir el ocs server que vamos a instalar

Vamos a la web de OCS Inventory NG https://www.ocsinventory-ng.org/en/ y copiamos la dirección de descarga del paquete de instalación de servidor Linux

Volvemos al puty y lo descargamos y descomprimimos.

Empezamos la instalación

sudo ./setup

Vamos a crear los links simbólicos en sites-enabled para la web de administración y para la dirección donde vamos a mandar los inventarios des de los equipos remotos

sudo ln -s /etc/apache2/conf-available/ocsinventory-reports.conf /etc/apache2/sites-enabled/ocsinventory-reports.conf

sudo ln -s /etc/apache2/conf-available/z-ocsinventory-server.conf /etc/apache2/sites-enabled/

sudo service apache2 restart

Abrimos ya la web de ocs, mi caso de ejemplo la url es http://192.168.1.50/ocsreports

Si todo ha ido bien aparecerá la web de configuración donde indicaremos usuario/password, base de datos y servidor. Si habéis seguido el manual corresponden a:

ocsuser/ocspassword
ocsweb
localhost

Vemos que la instalación nos muestra o nos indica varios aspectos que deberemos tener en cuenta, en este caso vamos a aplicar el dicho de divide y vencerás y vamos a abordad punto a punto

Var lib dir should be writable : /var/lib/ocsinventory-reports

Para resolver esto concederemos la carpeta en cuestión al usuario www-data

sudo chown www-data:www-data -R /var/lib/ocsinventory-reports

WARNING: You will not be able to build any deployment package with size greater than 100MB
You must raise both post_max_size and upload_max_filesize in your vhost configuration to encrease this limit.

 

Aquí podemos ampliar el límite modificando el fichero ocsinventory-reports.conf

sudo vi /etc/apache2/conf-available/ocsinventory-reports.conf

En el ejemplo amplio a 200M

A nosotros nos aplica la configuración php7 pero modificaremos las dos

Una vez hecha la instalación si accedemos al entrono nos encontraremos este mensaje

SECURITY ALERT!
Your install.php exists in your installation directory.
The default SQL login/password is set on your database: ocsweb

Vamos pues primero a quitar el archivo install.php

sudo mv /usr/share/ocsinventory-reports/ocsreports/install.php /usr/share/ocsinventory-reports/ocsreports/install.php_old

Solo nos queda ya resolver la advertencia de seguridad del usuario y password que deberemos modificar en el archivo z-ocsinventory-server.conf, en caso de no corregir este tema,los inventarios de los equipos no van a llegar al servidor.

SECURITY ALERT!
The default SQL login/password is set on your database: ocsweb

Editamos

Modificamos:

 

Reiniciamos apache y mysql

sudo service apache2 restart
sudo service mysql restart


 

Llegados a este punto ya hemos finalizado la parte de servidor y solo nos falta instalar la herramienta cliente en un equipo para ver si los inventarios llegan correctamente.

Podemos descargar el cliente para las distintas versiones de sistemas operativos des de la web de OCS

https://www.ocsinventory-ng.org/en

Seguimos la instalación cómo muestran las imagenes y si todo es correcto el equipo ya aparecerá en el inventario

Para una mayor comodidad y poder realizar las instalaciones de un modo desatendido, podemos preparar un fichero bat que nos ayude a aplicar el cliente a nuestros equipos Windows

Ejemplo de ocs.bat situado en la misma carpeta del instalador. Por alguna razón el instalador se tiene que ejecutar des de una unidad de red o local, no sirve una ruta de recurso compartido del estilo \\computer\xxxx

Espero que este manual os pueda ayudar.

Comments

Deixa un comentari

Your email address will not be published. Required fields are marked *