En la última entrada hablamos sobre OCS Inventory y sus características; hoy procederemos a instalar su versión 2.0.5 sobre un sistema Debian 6 Squeeze.
Para comenzar, como siempre, os dejo unos repositorios que suelen ir más o menos rápidos y son los que suelo usar en la instalación de este tipo de servidores. Editamos el archivo sources.list
# nano /etc/apt/sources.list
Y añadimos las siguientes líneas:
deb http://security.debian.org/ squeeze/updates main contrib deb-src http://security.debian.org/ squeeze/updates main contrib deb http://ftp.us.debian.org/debian/ stable main contrib non-free deb-src http://ftp.us.debian.org/debian/ stable main contrib non-freeActualizamos los repositorios y posteriormente actualizamos el sistema con dist-upgrade:
# apt-get update # apt-get dist-upgradeUna vez actualizado el sistema, puede ser que nos solicite reiniciarlo, de ser así, lo haremos. Cuando vuelva a arrancar, editaremos el archivo interfaces para dotar a nuestro servidor de una IP fija, necesario porque los clientes necesitarán saber a dónde tienen que ir; si tuviese una IP dinámica sería muy difícil que pudiesen llegar.
# nano /etc/network/interfacesDejaremos el archivo de la siguiente manera:
allow-hotplug eth0iface eth0 inet static
address 192.168.0.33
netmask 255.255.255.0
gateway 192.168.0.200
Ya sólo nos queda bajar y levantar la tarjeta para que coja la nueva IP que hemos configurado, para lo que escribiremos lo siguientes comandos:
# ifdown eth0 # ifup eth0Podemos comprobar que ya tenemos la nueva IP con el comando ifconfig.
# ifconfig eth0Ahora comenzaremos a instalar algunos de los paquetes que necesita OCS Inventory. También voy a instalar el openssh-server, ya que así podré gestionar la máquina de forma remota.
# apt-get install openssh-server make build-essentialEl siguiente paso será crear una base de datos e instalar el software para poder administrarla. En este caso instalaremos MySQL:
# apt-get install mysql-serverDurante la instalación de MySQL se nos pedirá una contraseña para el usuario root de MySQL, tendremos que recordarla porque nos hará falta para acceder a MySQL y para la configuración de OCS Inventory. Yo he puesto la contraseña 123456
Editamos el archivo de configuración de MySQL:
# nano /etc/mysql/my.cnfBuscamos la línea donde pone max_allowed_packet, y la dejamos de la siguiente manera.
max_allowed_packet = 32MAhora comprobamos que ya tenemos instalada la versión 5.1 de MySQL:
# apt-get install mysql-server-5.1Instalamos el servidor web apache y php5.
# apt-get install apache2 php5 php5-mysql php5-gdInstalamos mod_perl y los módulos necesarios:
# apt-get install libapache2-mod-perl2 libxml-simple-perl libcompress-zlib-perl libdbi-perl libdbd-mysql-perl libapache-dbi-perl libnet-ip-perl libsoap-lite-perlSeguimos con módulos perl utilizando CPAN
CPAN (Comprehensive Perl Archive Network) es una gran colección de software y documentación PERL que permite de un modo extremadamente sencillo la instalación de módulos Perl.
El modo de instalación es muy fácil, tenemos que escribir en nuestra terminal como root la siguiente línea:
perl -MCPAN -e shellNos hará una pregunta a la que responderemos con un yes y continuará el proceso hasta que nos deje la shell donde seguiremos metiendo parámetros (En la shell pondrá algo como esto cpan[1]> )
Meteremos los siguientes comandos uno por uno, contestando afirmativamente (yes) a todas las preguntas que se generen durante la instalación:
install CPAN
reload CPAN
install YAML
install XML::Entities
install Nmap::Parser
quit
Instalaremos nmap y snmp para el proceso de recolección de datos de OCS Inventory, más adelante lo veremos mejor.
# apt-get install nmap snmpYa tenemos nuestro sistema preparado para descargarnos e instalar OCS Inventory versión 2.0.5. Nos dirigiremos a la web del proyecto http://www.ocsinventory-ng.org/en/download/ y nos descargaremos la versión de servidor de OCS. Yo normalmente copio el enlace de descarga y lo descargo directamente en el servidor utilizando wget.
Una vez copiado el link, nos movemos a el directorio /usr/src y nos descargamos el programa.
Descomprimimos el paquete .tar.gz y entramos en el directorio recién creado OCS.
# tar -zvf OCSNG_UNIX_SERVER-2.0.5.tar.gz # cd OCSNG_UNIX_SERVER-2.0.5Ahora ejecutaremos el script de instalación de OCS. Aparecerán una serie de preguntas a las que tendremos que responder pulsando intro, ya que vienen con la respuesta por defecto entre corchetes [ ]. En aquellas preguntas en las que nos de la opción de responder Y/N, responderemos a todas de forma afirmativa pulsando Y. El comando para ejecutar el instalador es el siguiente:
# sh setup.shUna vez hechos todos estos pasos, editamos el archivo httpd.conf
# nano /etc/apache2/httpd.confY le añadimos la siguiente línea, puede que el archivo este vacío, no pasa nada:
ServerName localhostReiniciamos el servidor apache2
# /etc/init.d/apache2 restartAhora abrimos el navegador, y nos dirigimos a la IP del servidor, en este caso es http://192.168.0.33/ocsreports/. Nos aparecerá una página en la que tendremos que poner usuario root; como contraseña pondremos la que seleccionamos antes para el usuario root de MySQL, pulsamos sobre send.
En esta nueva pantalla sólo tendremos que pulsar sobre el botón de enviar consulta.
Nos aparecerá una nueva ventana donde nos dirá que la instalación se realizó de forma correcta y pulsaremos sobre Click here to enter OCS-NG GUI; accederemos a la pantalla de autenticación de OCS Inventory, donde nos loguearemos poniendo como usuario y contraseña admin. Pulsamos en send.
Nada más entrar, podremos ver en la parte superior varios errores que iremos solucionando.
Para solucionar el primero tendremos que cambiar la contraseña del usuario admin, para lo que pulsaremos sobre la llave con el fondo violeta que tenemos a la derecha de la pantalla; se abrirá una ventana y podremos cambiar la contraseña.
Para resolver el segundo problema tendremos que volver a la consola. Para corregir el error que nos da nuestro usuario ocs debemos entrar en la base de datos y modificarla. Con el siguiente comando nos identificamos como root en MySQL y ponemos la correspondiente contraseña.
mysql> UPDATE user SET Password=PASSWORD (‘1234’) WHERE user=’ocs’;
Query OK, 2 rows affected (0.00 sec)
Rows matched: 2 Changed: 2 Warnings: 0 mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec) mysql> exit Bye
Lo que acabamos de hacer es cambiarle la contraseña al usuario ocs en la base de datos a 1234. Ahora continuaremos modificando el fichero dbconfig.inc.php hasta que quede como se muestra a continuación:
# nano /usr/share/ocsinventory-reports/ocsreports/dbconfig.inc.php <?phpdefine(“DB_NAME”, “ocsweb”);
define(“SERVER_READ”,”localhost”);
define(“SERVER_WRITE”,”localhost”);
define(“COMPTE_BASE”,”ocs”);
define(“PSWD_BASE”,”1234″);
?>
Tambien deberemos poner la contraseña para ocs en los siguientes archivos:
# nano /etc/apache2/conf.d/z-ocsinventory-server.conf # nano /usr/src/OCSNG_UNIX_SERVER-2.0.5/ocsinventory-server.conf.localdejando los dos archivos de la siguiente manera:
#Name of databasePerlSetEnv OCS_DB_NAME ocsweb
PerlSetEnv OCS_DB_LOCAL ocsweb
# User allowed to connect to database
PerlSetEnv OCS_DB_USER ocs
# Password for user
PerlSetVar OCS_DB_PWD 1234
Ya sólo nos queda el útlimo error por corregir: “Your install.php exists in your installation directory.”.
Es realmente fácil, sólo tenemos que ir al directorio de OCS Inventory y cargarnos el install.php, podemos hacerlo de la siguiente manera:
Por último, reiniciamos el servidor Apache.
# /etc/init.d/apache2 restartYa tenemos nuestro OCS Inventory perfectamente instalado y en funcionamiento. En la próxima ocasión os enseñaré cómo introducir clientes, tanto Windows como GNU/Linux, y me acercaré un poco más a la configuración.
Un saludo y hasta la próxima.
Enlaces relacionados: OCS Inventory – Inventariando la red local Instalación de OCS Inventory en Debian 6 Squeeze Configuración de clientes Windows para OCS Inventory Configuración de clientes GNU/Linux para OCS Inventory GLPI: inventariando la red local, hardware y más Instalación de GLPI en Debian 6 squeeze Fusionando GLPI con OCS Inventory










donde pones que se tiene que actualizar la contraseña de ocs, en que momento se se crea este usuario ya que los unicos usuarios que tengo activos son el de root y el de ocs inventory “admin”
Hola compañero, el usuario OCS se crea durante la instalación de OCS Inventory. No obstante puedes crear usuarios y usar el que tu quieras.
si ya verifique otros manueles y ya corrobore todo pero al instalar los clientes ya sea en windows, ubuntu y en debian los 3 me marcan un error 500 de comunicacion e intentado resolver esto pero no lo he podido lograr, no se si me puedas ayudar con esto de antemano muchas gracias por tu pronta respuesta
Hola, la verdad es que es raro, has comprobado que tienes conectividad entre cliente y servidor?, cuando instalas el cliente y tienes que poner la dirección del servidor, estas poniendo la IP del servidor correcta? recuerda que la url sería algo así http://dirección_IP/ocsinventory por ejemplo http://192.168.0.33/ocsinventory sustituyendo la IP por la de tu servidor. Puedes probar a hacerlo sin meter usuario ni contraseña para ver si te funciona, y una vez estés seguro de que todo va correcto, volver a introducir un usuario y una contraseña para que queden más seguras las conexiones al servidor.
si ya corrobore que mi direccion estuviera bien e ingresado a la carpeta donde esta los logs de los inventarios y comprobé los datos, e cambiado tambien mi ip con el puerto 80 y aun asi marca el error. El error que me aparece es el siguiente:
AGENT => Sending Prolog
DID_CHECK => Read DeviceID and MACs in file
COM SERVER => Initializing cURL library for sendRequest
COM SERVER => Using cURL with server authentication
COM SERVER => Disabling cURL proxy support
COM SERVER => Enabling cURL SSL server validation support using CA Bundle
COM SERVER => Sending HTTP Post request to URL
COM SERVER => HTTP Post response received
COM SERVER => Cleaning cURL library
ERROR *** AGENT => Failed to send Prolog
AGENT => Unloading communication provider
AGENT => Unloading plug-in(s)
AGENT => Execution duration: 00:00:34.
y mi configuracion es la siguiente tendre algo mal configurado como te comente ya cambie la ip y no la e modificado sin el puerto 80.
[OCS Inventory Agent]
ComProvider=ComHTTP.dll
Debug=1
Local=
NoSoftware=0
HKCU=0
NoTAG=0
IpDisc=
[HTTP]
Server=http://10.0.3.52:80/ocsinventory/
SSL=1
CaBundle=cacert.pem
AuthRequired=1
User=r7sYUwmoemp5fWyHdGZdIg==|||OPi1Sjl6Bu15YPZK26LHCg==
Pwd=wZGRMk76RhejCo9pub3AcA==|||iHr4V2HdvbPRUSThgXefxA==
ProxyType=0
Proxy=
ProxyPort=0
ProxyAuthRequired=0
ProxyUser=
ProxyPwd=
[OCS Inventory Service]
TTO_WAIT=6120
PROLOG_FREQ=10
OLD_PROLOG_FREQ=10
Buenas, la verdad es que el problema parece que es por culpa de la conexión con el servidor, me imagino que podrás hacer ping entre las maquinas y esas cosas. Te envío la configuración de uno de mis clientes funcionando al 100 % espero que te sirva de ayuda:
[OCS Inventory Agent]
ComProvider=ComHTTP.dll
Debug=1
Local=
NoSoftware=0
HKCU=0
NoTAG=0
IpDisc=
[HTTP]
Server=http://192.168.0.33/ocsinventory
SSL=1
CaBundle=cacert.pem
AuthRequired=1
User=SR6CCJx9TG0/SfWw+8KnzA==|||DeAk68wASfzV3qVcnxijcQ==
Pwd=D5y1eJxNNg+0SFONCFqxVA==|||MmNBljrtaEil6Pqt4Fva4g==
ProxyType=0
Proxy=
ProxyPort=0
ProxyAuthRequired=0
ProxyUser=
ProxyPwd=
[OCS Inventory Service]
PROLOG_FREQ=6
OLD_PROLOG_FREQ=6
TTO_WAIT=21600
También te dejo un enlace a la página del proyecto donde hablan detenidamente del cliente de windows, aunque está en ingles nada como google translate para hacerte una idea:
http://wiki.ocsinventory-ng.org/index.php/Documentation:WindowsAgent
Saludos y espero que consigas hacer que funcione.
P.D. Una de las pruebas que podrías hacer también es la de no poner ni usuario ni contraseña en el cliente de windows y ver si de esa forma hay conexión.
hola me error “http status error 500” , alguna idea ??
buenas, excelentes tutoriales, ahora una duda, luego de loguearme en la pantalla de OCS en la parte superior me figura el siguiente error: Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:\xampp\htdocs\ocsreports\backend\require\connexion.php on line 10
Aclaro como se lee que uso XAMPP en Windows Server y no estoy pudiendo enlazar los agentes a la consola…
Espero poder resolverlo pronto, saludos!