PARTE I: Instalar OCS Inventory NG (Server) en Ubuntu Linux 14.04 LTS



Muchos conocerán los beneficios y funcionalidades que nos provee OCS Inventory. Es por eso que si has llegado hasta aquí, daré por sentado que ya conoces qué se puede hacer con este increíble Software.

Tomé la decisión de hacer un pequeño tutorial de instalación de OCS Inventory NG en su versión Server sobre Ubuntu Linux 14.04 LTS originado por varios motivos: mi exitosa experiencia utilizado e implementando ésta solución, la Wiki del proyecto no está actualizada "al día", y (lo más importante) porque existe mucha documentación fragmentada en la Web, en idioma francés, italiano, y con mucha información algo incompleta.

Nota 1: Asumo que dispones de conocimientos básicos de Ubuntu, Apache y Mysql. Ante una duda, deja un comentario, o bien indaga en la Web. No duele ;D

Nota 2: Este instructivo esta basado en la versión de OCS Inventory NG version 2.2 al día de la fecha de publicación.

Nota 3: configura tu Ubuntu con una IP estática/fija.

Requisitos de paquetería

Actualiza Ubuntu a las últimas versiones de componentes del Sistema. Una vez actualizado, instalaremos los siguientes paquetes en Ubuntu, aceptando también la instalación de todas sus dependencias:

openssl apache2 php5 make perl mysql-server libxml-simple-perl libxml-perl libarchive-zip-perl libio-compress-perl libapache-dbi-perl libnet-ip-perl libsoap-lite-perl libphp-pclzip php5-gd php5-mysql libdbd-mysql-perl


Recuerda siempre la contraseña ingresada en tu usuario root del mysql-server.

Descarga del Instalador de OCS Inventory Server


Desde su página de descargas http://www.ocsinventory-ng.org/en/#download-en, descarga el paquete instalador para su versión Server.

Una vez descargado, si estás utilizando Windows, copia el instalador comprimido .tar.gz vía WinSCP a tu /home/usuario de tu Ubuntu Server.

Descomprime el instalador en una carpeta


tar -xvf OCSNG_UNIX_SERVER-2.2.tar.gz
cd OCSNG_UNIX_SERVER-2.2


Instala OCS Inventory Server

sudo sh ./setup.sh


Por defecto, al presionar ENTER, se aplicará la configuración por defecto indicada entre [corchetes], pero ATENCIÓN en los siguientes pasos (ingresa manualmente la cadena en rojo):

Where is Apache main configuration file [] ? /etc/apache2/apache2.conf

Setup will put OCS Inventory NG Apache configuration in this directory.
Where is Apache Include configuration directory [] ? /etc/apache2/sites-available


Habilita el módulo SSL y los sitios Apache de OCS Inventory

sudo a2enmod ssl ; sudo a2ensite default-ssl.conf ; sudo a2ensite ocsinventory-reports.conf ; sudo a2ensite z-ocsinventory-server.conf


Reinicia el demonio de Apache2.
 

Crear un Certificado SSL para utilizar el Deploy de Software

En esta versión del Servidor OCS, debemos utilizar un Certificado SSL para poder distribuir Software desde OCS Inventory a los Agentes. Si pretendes utilizar esta característica, es importante que sigas paso a paso las siguientes instrucciones. Si sólo quieres utilizar OCS Inventory como Inventario de Software y Hardware (ya que posiblemente dispones de otra herramienta para la distribución de Software en tu parque de PC/Servidores), dirígete al paso
"Configuración final vía Consola".

Nota: no apliques los pasos como Superusuario, sólo cuando indique la línea con sudo:

openssl genrsa -des3 -out ocsng.key 2048
(Ingresa dos veces y recuerda una clave para el certificado).

mv ocsng.key ocsng-old.key


openssl rsa -in ocsng-old.key -out ocsng.key

(Ingresa nuevamente tu clave).

openssl req -new -key ocsng.key -out ocsng.csr

(Ingresa datos de tu certificado, como país, ciudad, empresa, etc., PERO...)

Cuando te consulte por...

Common Name (e.g. server FQDN or YOUR name) []:
 

...es recomendable ingresar la IP estática/fija de tu servidor Ubuntu.

Cuando te consulte por...

A challenge password []:
 

...ingresa la misma contraseña de los pasos anteriores.

openssl x509 -req -days 3650 -in ocsng.csr -signkey ocsng.key -out ocsng.pem
(-days 3650 es el tiempo de "vida" del certificado. Aquí, configurado para 10 años).

Copia el certificado en las rutas por defecto, para ello:

sudo cp ocsng.pem /etc/ssl/certs/ ; sudo cp ocsng.key /etc/ssl/private/


Realiza un backup de la configuración de tus Sitios Apache (siempre recomendado)

sudo cp /etc/apache2/sites-enabled/default-ssl.conf /etc/apache2/sites-enabled/default-ssl.conf.bak ; sudo cp /etc/apache2/sites-enabled/ocsinventory-reports.conf /etc/apache2/sites-enabled/ocsinventory-reports.conf.bak ; sudo cp /etc/apache2/sites-enabled/z-ocsinventory-server.conf /etc/apache2/sites-enabled/z-ocsinventory-server.conf.bak


Cambia la ruta de los certificados en default-ssl.conf

sudo vim /etc/apache2/sites-enabled/default-ssl.conf

SSLCertificateFile /etc/ssl/certs/ocsng.pem
SSLCertificateKeyFile /etc/ssl/private/ocsng.key

 

Generar un auto-login al certificado en Apache

Generaremos un file con la contraseña provista para el certificado.

sudo vim /usr/share/apache2/pass

Ingresa el siguiente texto:

#!/bin/sh
echo "TU-CONTRASEÑA"
sudo chmod +x /usr/share/apache2/pass


Guarda y sale del archivo.

Agregar dicho file en default-ssl.conf

sudo vim /etc/apache2/sites-enabled/default-ssl.conf

(ingresa la cadena en una nueva línea entre /VirtualHost
y /IfModule )

SSLPassPhraseDialog exec:/usr/share/apache2/pass

Guarda y sale del archivo.

Habilitar SSL en la carpeta /download en default-ssl.conf

La carpeta /download es donde se alojarán los paquetes para hacer Deploy de Software. Para ello, deberemos SI O SI habilitar SSL sobre la misma.

sudo vim /etc/apache2/sites-enabled/default-ssl.conf

(ingresa la cadena en una nueva línea entre ServerAdmin webmaster@localhost y DocumentRoot /var/www/html)

Alias /download /var/lib/ocsinventory-reports/download
<Directory /var/lib/ocsinventory-reports/download>
#Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>


Guarda y sale del archivo.

Deshabilitar HTTP en la carpeta /download en ocsinventory-reports.conf


Para asegurarnos de que nadie sin el certificado SSL generado pueda descargar Paquetes, desactivaremos SSL en el file ocsinventory-reports.conf.

sudo vim /etc/apache2/sites-enabled/ocsinventory-reports.conf

(ingresa la cadena en una nueva línea entre Directory /var/lib/ocsinventory-reports/download y IfModule mod_authz_core.c):

Require all granted

Guarda y sale del archivo.

Reinicia el demonio de Apache2.

Nota: ante un error en el reinicio de Apache, restaura los Backups realizados de los sitios anteriormente y comienza los pasos nuevamente.

Copia el certificado generado a tu /home/usuario:

sudo cp /etc/ssl/certs/ocsng.pem /home/usuario

Renombralo a "cacert.pem" (el nombre admitido por defecto en los Agentes de OCS Inventory)

mv ocsng.pem cacert.pem

Extrae el certificado generado a un lugar "seguro"

Copia utilizando WinSCP el certificado "cacert.pem" a un lugar "seguro" accesible para implementarlo en tus Agentes Windows, por ejemplo dentro de tu carpeta Download en tu Windows.

Configuración final vía Consola

Accede ahora mediante tu navegador a la URL http://tuipestatica/ocsreports




En la siguiente pantalla, ingresa:

MySQL login: root
MySQL password: TU-CONTRASEÑA-DE-ROOT-MYSQL
Name of Database: ocsweb
MySQL hostname: localhost

Luego, clic en "Send", "Click here to enter OCS-NG GUI" y en "Perform the update".

Luego, clic en "Click here to enter OCS-NG GUI".

Esto te redireccionará al login de la Consola de OCS Inventory. Utiliza las credenciales por defecto (usuario: admin, contraseña: admin).

¡Listo! Ya has instalado y configurado tu OCS Inventory.

Si te encuentras con el siguiente mensaje de error al acceder...






...en las próximas semanas escribiré cómo quitar el mensaje SECURITY ALERT! de Consola OCS Inventory. Luego, la Creación e Instalación de Agentes para Windows OCS Inventory, para más adelante continuar con Conocimientos Básicos
de la Consola del OCS Inventory y terminar este ciclo con Usar la herramienta de Deploy de OCS Inventory.

Mantente alerta que (probablemente) publique vídeos en mi Canal de Youtube, ya que últimamente se me hace arduo escribir :).

Puedes dejarme tus comentarios y opiniones. ;)


Fuentes:
http://wiki.ocsinventory-ng.org/index.php/Main_Page
http://www.fastfire.org/2014/06/06/ocs-inventory-ng-on-ubuntu-14-04/
http://www.miloszengel.com/ocs-ng-2-2rc1-server-enable-ssl-for-management-and-deployment/
Publicar un comentario

Entradas populares de este blog

Botones capacitivos no vibran o encienden en Samsung S6

Enviar mensaje masivo a PCs con Windows en un Dominio