OCS-NG INVENTORY NO DEBIAN 8 (JESSIE) – INSTALAÇÃO E CONFIGURAÇÃO

Autor: Willian ricardo mendonca <willian.ricardo.mendonca at gmail.com>
Data: 11/05/2017

INTRODUÇÃO

 

O OCS inventory NG (Open Computer and Software Inventory Next Generation) é um software livre que permite aos administradores de rede gerar um inventário completo de seus ativos de TI. O OCS-NG coleta informações sobre o software e o hardware das maquinas em rede que executam seu agente (“OCS inventory agent”).

As informações coletadas são organizadas e gravadas em um banco de dados instalado no servidor, o OCS utiliza uma interface WEB pra exibir ao usuário, ou administrador de rede, as informações coletadas de forma amigável. O OCS também conta com uma função chamada IpDiscover, que funciona como um SNMP scan que identifica todos os equipamentos da rede.

O princípio de funcionamento do OCS é o seguinte, o agente se comunica com o servidor (nunca o contrário) e envia as informações de inventário em formato XML, essa informações são tratadas pelo servidor e gravadas no banco de dados MySQL. As trocas de informações entre cliente e servidor podem ser feitas via HTTP ou HTTPS, as transmissões de software e SNMP scan são feitos somente em HTTPS.

O servidor de gerenciamento do OCS-NG é composto basicamente por quatro elementos, são eles:

  • Servidor de banco de dados → que armazena informações de inventário (MySQL),
  • Servidor de comunicação → que lida com as comunicações HTTP ou HTTPs entre o servidor de banco de dados e agentes (Apache e Perl),
  • Console de administração → que permite aos administradores consultar o servidor de banco de dados usando seu navegador favorito (Apache, php)
  • Servidor de implantação → que armazena toda a configuração de implementação do pacote (Apache, SSL).

 

INSTALAÇÃO

 

2.1. SISTEMA OPERACIONAL

Nesse documento, o OCS-NG será instalado no Debian 8 (Jessie) amd64. O Debian foi escolhido devido à sua estabilidade e também a constante atualização do sistema operacional, claro que a facilidade de suporte e de utilização do sistema também foram pontos extremamente relevantes para sua escolha como base para esse projeto. O Debian tem um excelente desempenho, mesmo com inúmeras adversidades e funciona extremamente bem em qualquer circunstância.

A instalação do sistema operacional, nesse caso, não contou com nenhum passo fora do comum, a mesma não será abordada com profundidade, visto que não é o foco deste documento. Foram criadas 3 partições Home, SWAP e / (Partição raiz do sistema operacional, equivalente ao disco C do Windows), durante a instalação foi utilizado um espelho de rede para configurar o APT e também para manter o sistema atualizado desde a instalação, o espelho utilizado foi “ftp.br.debian.org”.

Foi finalizada a instalação utilizando somente as opções standard do sistema operacional, sem nenhum pacote adicional até o momento. Todas as instalações necessárias serão feitas no momento em que as mesmas forem solicitadas, lembrando que esse servidor está sendo montado, única e exclusivamente, para o uso do OCS-NG, ou seja, inventário será a única função desse servidor. Não é uma exigência, o servidor pode ter mais de uma função.

2.2. OCS – NG

2.2.1 – Preparação:

Antes de iniciar os procedimentos de instalação, é necessário que alguns ajustes sejam feitos no servidor (considerando um servidor que acabou de ser instalado).

Setar IP fixo no servidor, para que o Agente sempre saiba com quem se comunicar, o procedimento será realizado da seguinte forma.

Edite o arquivo interfaces:

# nano /etc/network/interfaces

E substitua:

#The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

Por:

auto eth0
iface eth0 inet static
address 192.168.XXX.XXX
netmask 255.255.XXX.XXX
gateway 192.168.XXX.XXX

Claramente, colocando informações reais da sua rede local.

Alterar o arquivo “sources.list” para ignorar o CD de instalação na busca por pacotes, basta editar o arquivo com o comando:

# nano /etc/apt/sources.list

E comentar, utilizando o carácter # no inicio das linhas que comecem com “deb cdrom”.

Preparações finalizadas, vamos prosseguir com a instalação.

2.2.2 – Instalação:

A instalação do OCS-NG pode ser feita utilizando seu código fonte, junto com a documentação oficial do produto, disponível em:

Nesse documento, faremos o download do código fonte e compilaremos o mesmo. A instalação se inicia com os seguintes passos, sega os comandos:

Obs.: absolutamente, todos os comandos desse documento precisam ser executados como root.

# apt update && apt upgrade
# apt install apt-build vim

ATENÇÃO: nesse momento, será solicitado a senha do MySQL-Server

# apt install apache2 libmysqlclient15-dev mysql-server php5 php5-gd php5-mysql php5-curl php5-imap php5-ldap
# apt install libapache-dbi-perl libnet-ip-perl libsoap-lite-perl libapache2-mod-perl2 libxml-simple-perl libcompress-zlib-perl libdbi-perl libdbd-mysql-perl

Os módulos do CPAN precisam ser instalados manualmente:

# perl -e shell -MCPAN
CPAN*> install CPAN
CPAN*> reload CPAN
CPAN*> install XML::Entities
CAPN*> exit

Reinicie o serviço do Apache, para que as configurações entrem em vigor.

# /etc/init.d/apache2 restart

Nesse momento, temos um ambiente preparado para receber o OCS-NG com servidor WEB Apache e também o servidor de banco de dados MySQL, sendo assim, podemos prosseguir para a instalação do OCS-NG propriamente dita. Será feito download, compilação e instalação do OCS-NG, passo a passo.

Pasta escolhida para download /opt.

# cd /opt
# wget https://github.com/OCSInventory-NG/OCSInventory-ocsreports/releases/download/2.3.1/OCSNG_UNIX_SERVER-2.3.1.tar.gz

# tar -xzvf OCSNG_UNIX_SERVER-2.3.1.tar.gz
# cd /OCSNG_UNIX_SERVER-2.3.1
# chmod 777 setup.sh
# ./setup.sh

Algumas perguntas serão feitas:

  • Todas devem ser mantidas com a resposta padrão, pressionando Enter.
  • Exceto: Where is Apache Include configuration directory [] ?
  • Deve ser substituído por: /etc/apache2/conf-enabled

Ajustando parâmetros no PHP:

# vim /etc/php5/apache2/php.ini

Parâmetros a serem alterados:

  • Para encontrar as linhas mais facilmente, pressione a tecla Esc e digite o comando → :set line
  • Depois, pode utilizar → :numerodalinha, para navegar diretamente a linha desejada.
  • Linha 372: max_execution_time = 200
  • Linha 382: max_input_time = 200
  • Linha 393: memory_limit = 512M
  • Linha 660: post_max_size = 300M
  • Linha 820: upload_max_filesize = 300M

Ajustando parâmetros do OCS:

# vim /etc/apache2/conf-enabled/ocsinventory-reports.conf

  • Linha 49: php_value post_max_size 300m
  • Linha 50: php_value upload_max_filesize 300m

# /etc/init.d/apache2 restart

CRIANDO O BANCO DE DADOS

# mysql -u root -p

Será necessário entrar com a senha que foi selecionada no banco de dados no momento da instalação.

mysql> CREATE DATABASE ocsweb character set utf8;
mysql> CREATE USER ocs@localhost IDENTIFIED BY ‘senha_ocsweb’;

“senha_ocsweb” deve ser alterada por uma senha para o usuário” ocs”.

mysql> GRANT ALL PRIVILEGES ON *.* TO ocs@localhost;
mysql> flush privileges;
mysql> exit;

# cd /etc/apache2/conf-enabled

Pode também estar localizado em /etc/apache2/conf.d/.

# vim z-ocsinventory-server.conf

Alterar o usuário para se conectar ao banco de dados:

  • Linha 29: PerlSetEnv OCS_DB_USER ocs
  • Senha do usuário
  • Linha 31: PerlSetVar OCS_DB_PWD senha_ocsweb */

# cd /usr/share/ocsinventory-reports/ocsreports/
# vim dbconfig.inc.php file

/* define(“DB_NAME”, “ocsweb”);
* define(“SERVER_READ”,”localhost”);
* define(“SERVER_WRITE”,”localhost”);
* define(“COMPTE_BASE”,”ocs”);
* define(“PSWD_BASE”,”senha_ocsweb”); */

Realizados esses procedimentos, é necessário acessar pelo servidor o link do OCS-NG:

→ http://ipdoservidor/ocsreports

Depois de acessado, será apresentado uma tela solicitando algumas informações, que devem ser preenchidas da seguinte forma:

  • Login MySQL: < ocs >
  • MySQL Password: < senhaocsweb >
  • MySQL Database: < ocsweb >
  • Mysql Hostanme: < localhost ou o IP do servidor de banco de dados >

A instalação será feita e será apresentada a tela de login, a senha e usuário padrão é:

  • Usuário: admin
  • Senha: admin

No primeiro login, será exibida uma mensagem com um erro de segurança, pra resolver, será necessário entrar no terminal, via SSH ou localmente mesmo, e executar o seguinte comando:

# rm /usr/share/ocsinventory-reports/ocsreports/install.php

Realizados os procedimentos, o OCS-NG estará funcionando, será somente necessário baixar e instalar os agentes em seus clientes e começarem o inventário e armazenamento das informações, os agentes estão disponíveis para download em:

 

AGENTES

 

A instalação e configuração dos agentes de monitoramento é bastante simples, tanto para Windows quanto para Linux, basta instala-los e configura-los com o IP do servidor, ou uma conexão HTTP via internet válida, para acesso ao servidor.

3.1. INSTALAÇÃO DO AGENTE NO WINDOWS

Para download do arquivo, siga esse link:

Feito o download do arquivo, será necessário descompacta-lo, executar o arquivo “OCS-NG-Windows-Agent-Setup.exe” e instala-lo. Segue passo a passo:


Pressione “Next” nessa tela

Leia o contrato e pressione: “I Agree” nessa tela

Pressione “Next” nessa tela

Pressione “Next” nessa tela

Essa tela deve ser preenchida com as configurações de Proxy da sua rede, se houver um

Tela de configuração do agente. Não selecionei nada para esse ambiente. Porém, fica a critério utilizar ou não essas opções

Escolha o local e clique em “Install”

3.2. INSTALAÇÃO NO LINUX

Para instalação no Debian (Jessie), basta digitar o seguinte comando:

# apt install ocsinventory-agent

No momento da instalação, ele mesmo irá solicitar o IP do servidor, basta informar ao sistema e o resto é automático. O nome do pacote varia pouco de acordo com as distribuições, bastando assim, usar um comando de busca em sua máquina, procurando por OCS, basta encontrar o pacote e fazer a instalação.

Para o CentOS, ficaria assim:

# yum search ocs

Ou, se preferir, esse é o link de download oficial do agente para Unix/Linux:

3.3. INSTALAÇÃO NO MACOSX

Para instalação no MacOSx faça o dowload do arquivo PKG neste:

E prossiga normalmente com a instalação.

3.4. INSTALAÇÃO NO ANDROID

Para instalação no Android, faça o download do arquivo APK neste link:

E prossiga normalmente com a instalação.

 

CONCLUSÃO

 

O OCS-NG é um software de inventário, bastante completo e com inúmeras funções que merecem ser exploradas, todas elas estão muito bem explicadas em sua documentação oficial, em inglês.

Ele conta com a possibilidade de personalização de agente de instalação e também com conexão criptografada entre servidor e cliente HTTPS, os passos para configuração desses serviços estão todos na documentação oficial.

Qualquer dúvida ou problema, encontro-me à disposição para tentar ajudar e compartilhar conhecimento sempre.

Segue abaixo, outras duas formas de leitura do documento que disponibilizei, eu mesmo os desenvolvi, o material contido nesses documentos é exatamente o mesmo desse artigo.

Tenho esse documento também em PDF para download:

Fiz esse documento também em Latex e disponibilizei no GitHub, seque o link:

REFERÊNCIAS

Link 1 – Documentação oficial do Software OCS inventory:

Link 2 – QMais informática, trabalha com uma versão mais antiga do OCS porém foi uma base para instalação, existe também o tutorial em vídeo para servir como base:

Link 3 – Site oficial do Software, com documentação disponível e também os downloads dos agentes e do código fonte:

Algumas observações e dicas vêm de experiências pessoais e profissionais com a utilização do software. Qualquer problema ou dúvida, encontro-me à disposição para tentar o esclarecimento.

Rolar para cima