11 junho 2010

Configurar OCS Inventário

Instalando o OCS Inventory - NG no Linux Ubuntu
OCS INVENTORY -NG é um software, Open Source, que tem a finalidade de gerar inventários automáticos das estações de trabalho ligadas a rede, dessa forma é possível notar modificações como remoções, paradas funcionais de dispositivos e programas que foram instalados ou removidos.

Exigências para usar OCS INVENTORY-NG na distribuição Linux Ubuntu
Apache versão 1.3.33 / 2.0.46 ou superiores.
* Módulo versão 1.29 de Mod_perl ou superior.
* Módulo versão 4.3.2 de Mod_php ou superior.
* PHP 4.3.2 ou superior.
* Perl 5.6 ou superior.
* Módulo XML do Perl: Versão simples 2.12 ou superior.
* Módulo Compressa do módulo do Perl: Versão 1.33 de Zlib ou superior.
* Módulo Versão 1.40 do módulo DBI do Perl ou superior.
* Módulo Módulo DBD do Perl: Versão 2.9004 de Mysql ou superior.
* Módulo Módulo Apache do Perl: Versão 0.93 de DBI ou superior.
* Módulo Rede do módulo do Perl: Versão 1.21 do IP ou superior.
* Módulo SOAP do Perl: Versão 0.66 de Lite ou mais elevado (opcional)
* Versão 4.1.0 de MySQL ou superior com o motor de InnoDB (Motor de Armazenamento-Storage Engine) ativo.
MySQL 4.1 ou superior

Instalação

Instale os seguintes pacotes com o comando:
sudo apt-get install \
apache2 \
libapache2-mod-php5 \
libapache2-mod-perl2 \
php5 \
php5-gd \
php5-mysql \
mysql-server \
libxml-simple-perl \
libcompress-zlib-perl \
libdbi-perl \
libdbd-mysql-perl \
libapache-dbi-perl \
libnet-ip-perl \
libsoap-lite-perl \
php5-dev \
php-pear

Acesse a página do OSC Inventory NG:
http://www.ocsinventory-ng.org

No menu Download baixe a última versão do OCS Inventory NG:
OCSNG Unix Server "OCSNG_UNIX_SERVER-1.02.1.tar.gz"
OCSNG Unix Agent "OCSNG_UNIX_AGENT-1.02.tar.gz"

Copie o arquivo OCSNG_UNIX_SERVER-1.02.1.tar.gz para a pasta /usr/local/:
sudo cp /home/usuario/Área\ de\ Trabalho/OCSNG_UNIX_SERVER-1.02.1.tar.gz /usr/local/

Copie o arquivo OCSNG_UNIX_AGENT-1.02.tar.gz para a pasta /usr/local/:
sudo cp /home/usuario/Área\ de\ Trabalho/OCSNG_UNIX_AGENT-1.02.tar.gz /usr/local/

Entre na pasta /usr/local/:
cd /usr/local/

Execute o comando para descompactar o arquivo OCSNG_UNIX_SERVER-1.02.1.tar.gz:
sudo tar -zxvf OCSNG_UNIX_SERVER-1.02.1.tar.gz

Execute o comando para descompactar o arquivo OCSNG_UNIX_AGENT-1.02.tar.gz:
sudo tar -zxvf OCSNG_UNIX_AGENT-1.02.tar.gz

Entre na pasta /usr/local/OCSNG_UNIX_SERVER-1.02.1/:
cd OCSNG_UNIX_SERVER-1.02.1/

Execute o comando para instalar o OCS-NG Server:
sudo ./setup.sh

Aparecerá uma mensagem de boas vindas e pedirá se deseja começar a instalação, escolha a padrão:
Do you wish to continue ([y]/n)?y

Aparecerá uma mensagem com algumas informações sobre o banco de dados MySQL e o endereço IP do banco, pressione "Enter" para escolher o endereço padrão ou, digite o endereço IP:
Which host is running database server [localhost] ?

Aparecerá uma mensagem com o número da porta que o banco será executado, pressione "Enter" para escolha o número padrão:
On which port is running database server [3306] ?

Aparecerá uma mensagem com o nome do arquivo daemon do Apache, pressione "Enter" para escolher o arquivo padrão:
Where is Apache daemon binary [/usr/sbin/apache2] ?

Aparecerá uma mensagem com o nome do arquivo principal do Apache, pressione "Enter" para escolher o arquivo padrão:
Where is Apache main configuration file [/etc/apache2/apache2.conf] ?

Aparecerá uma mensagem para criar a conta do usuário que executará o Apache, entre com o nome do usuário do sistema:
Which user account is running Apache web server [${APACHE_RUN_USER}] ? usuario

Aparecerá uma mensagem para criar um grupo para a conta do usuário Apache, escolha um nome para o grupo:
Which user group is running Apache web server [${APACHE_RUN_GROUP}] ? admin

Aparecerá uma mensagem dizendo que o OCS Inventory NG irá colocar as configurações no diretório //etc/apache2/conf.d/, pressione "Enter" para escolher o padrão:
Setup found Apache Include configuration directory in //etc/apache2/conf.d/.
Setup will put OCS Inventory NG Apache configuration in this directory.
Where is Apache Include configuration directory [//etc/apache2/conf.d/] ?

Aparecerá uma mensagem para confirmar o caminho para o PERL intérprete, pressione "Enter" para escolher o caminho padrão:
Found PERL Intrepreter at ;-)
Where is PERL Intrepreter binary [/usr/bin/perl] ?

Execute o comando para inicializar o serviço do Apache, caso o mesmo não esteja inicializado:
sudo /etc/init.d/apache2 start

Aparecerá uma mensagem para confirmar a comunicação com o servidor, escolha a padrão:
Do you wish to setup Communication server on this computer ([y]/n)? y

Aparecerá uma mensagem dizendo que o servidor de comunicação pode criar arquivos de log, e que esses arquivos de log podem ser ativados com a criação de um valor, no console do administrador em menu configuração, pressione "Enter" para escolher o caminho padrão dos arquivos de log do OCS Inventory:
Communication server can create detailled logs. This logs can be enabled by setting interger value of LOGLEVEL to 1 in Administration console menu Configuration.
Where to put Communication server log directory [/var/log/ocsinventory-server]?

Pode aparecer uma mensagem dizendo que módulo XML do Perl não está instalado, e que só será exigido pelo OCS Inventory NG SOAP, escolha o padrão:
Checking for SOAP::Lite PERL module...
Found that PERL module SOAP::Lite is available.
Checking for XML::Entities PERL module...
*** Warning: PERL module XML::Entities is not installed !
This module is only required by OCS Inventory NG SOAP Web Service.
Do you wish to continue ([y]/n)? y

Pode aparecer uma mensagem dizendo que para garantir as cargas do módulo perl do Apache antes do Servidor de Comunicação do OCS Inventory NG, a instalação pode renomear o arquivo de configuração de comunicação 'ocsinventory-Server.conf' para 'z-Server.conf-ocsinventory', escolha a padrão:
Do you allow Setup renaming Communication Server Apache configuration file to 'z-ocsinventory-server.conf' ([y]/n)? y

Aparecerá uma mensagem perguntando se você gostaria de administrar o servidor de configuração no computador, escolha a padrão:
Do you wish to setup Administration Server (Web Administration Console) on this computer ([y]/n)? y

Aparecerá uma mensagem dizendo que a instalação instalará os arquivos conforme a hierarquia do Sistema de Arquivo, escolha a padrão:
Do you wish to continue ([y]/n)? y

Aparecerá uma mensagem dizendo que os arquivos estáticos do Servidor de Administração PHP serão copiados para [/usr/share/ocsinventory-reports, pressione "Enter" para escolher o padrão:
Where to copy Administration Server static files for PHP Web Console [/usr/share/ocsinventory-reports] ?

Aparecerá uma mensagem perguntando onde criar e gravar o diretório que armazenará os pacotes para a implantação e descobrimento de Ip, pressione "Enter" para escolher o padrão:
Where to create writable/cache directories for deployement packages and
IPDiscover [/var/lib/ocsinventory-reports] ?

Aparecerá uma mensagem dizendo que a instalação do servidor foi concluída, também pedirá para rever se está tudo ok com o arquivo /etc/apache2/conf.d//ocsinventory-reports.conf, e para reiniciar o servidor Apache. Também aparecerá uma mensagem dizendo para aproveitar o ONS Inventor-NG, e que foi criado um arquivo de log em /usr/local/OCSNG_UNIX_SERVER-1.02.1/ocs_server_setup.log, salve esse arquivo, ele pode ser útil para detectar alguma falha durante o processo de instalação.
DON'T FORGET TO RESTART APACHE DAEMON!
Enjoy OCS Inventory NG ;-)

Reinicie o servidor Apache com o comando:
sudo /etc/init.d/apache2 restart

Para realizar a configuração do banco de dados do OCSInventory, abra o browser em:
http://127.0.0.1/ocsreports/install.php

Aparecerá uma tela pedindo o endereço do servidor MySql, nome e a senha do usuário root do MySql:
MySql Login: usuário
Mysql Password: senha
Mysql HostName: ipservidor

Caso apareça uma mensagem:
ERROR: can't write in directory (on dbconfig.inc.php), please set the required rights in order to install ocsinventory (you should remove the write mode after the installation is successfull), isso significa que o arquivo dbconfig.inc.php não possui permissão de escrita:

Execute o seguinte comando para permitir escrita no arquivo:
sudo chmod 666 /usr/share/ocsinventory-reports/ocsreports/dbconfig.inc.php

Para acessar o OCSInvertory, abra o browser em:
http://127.0.0.1/ocsreports

Caso apareça caracteres estranhos, será preciso editar o arquivo brazilian_portuguese.txt, na primeira linha troque "iso-8859-1" por "utf-8", também será necessário corrigir os caracteres estranhos. Clique aqui para baixar o aquivo "brazilian_portuguese.txt" corrigido:
sudo editor /usr/share/ocsinventory-reports/ocsreports/languages/brazilian_portuguese.txt

Aparecerá uma tela pedindo o usuário e senha:
Usuário: admin
Senha: admin

Saia do diretório OCSNG_UNIX_SERVER-1.02.1:
cd ..

Entre na pasta /usr/local/Ocsinventory-Agent-1.0.1:
cd Ocsinventory-Agent-1.0.1/

Execute o comando para instalar o OCS-NG Agent:
sudo perl Makefile.PL

Aparecerá uma mensagem pedindo para instalar o nmap, caso queira usar o recurso para descobrir redes:
Plese install nmap or ipdiscover if you want to use the network discover feature.
Checking if your kit is complete...
Looks good
Writing Makefile for Ocsinventory::Agent

Execute o comando abaixo para copilar os arquivos do OCS-NG Agent:
sudo make

Execute o comando para instalar os arquivos do OCS-NG Agent:
sudo make install

Aparecerá uma mensagem pedindo se deseja configurar o agente, escolha a padrão:
Do you want to configure the agent
Please enter 'y' or 'n'?> [y] y

Aparecerá uma mensagem pedindo onde você deseja gravar o arquivo de configuração, escolha um número correspondente ao diretório pretendido:
Where do you want to write the configuration file?
0 -> /etc/ocsinventory
1 -> /usr/local/etc/ocsinventory
2 -> /etc/ocsinventory-agent
?> 1

Aparecerá uma mensagem pedindo se deseja criar o diretório pretendido, escolha a padrão:
Do you want to create the directory /usr/local/etc/ocsinventory?
Please enter 'y' or 'n'?> [y] y

Aparecerá uma mensagem confirmando o diretório onde será salvo o arquivo de configuração, e pedirá o endereço do OCS-NG Server:
[info] The config file will be written in /etc/ocsinventory/ocsinventory-agent.cfg.
What is the address of your ocs server?> [ocsinventory-ng] 127.0.0.1

Aparecerá uma mensagem pedindo se você precisa de credenciais para o servidor, provavelmente não precisará, escolha a padrão:
Do you need credential for the server? (You probably don't)
Please enter 'y' or 'n'?> [n] n

Aparecerá uma mensagem pedindo se você deseja criar e aplicar uma tag administrativa nesta máquina:
Do you want to apply an administrative tag on this machine
Please enter 'y' or 'n'?> [y] n

Aparecerá uma mensagem pedindo se deseja instalar uma tarefa no arquivo /etc/cron.d, escolha a padrão (O Cron é um daemon que pode ser utilizado para agendar a execução de tarefas):
Do yo want to install the cron task in /etc/cron.d
Please enter 'y' or 'n'?> [y] y

Aparecerá uma mensagem pedindo onde você deseja guardar os arquivos do agente, pressione "Enter" para escolher o padrão:
Where do you want the agent to store its files? (You probably don't need to change it)?> [/var/lib/ocsinventory-agent]

Aparecerá uma mensagem pedindo se você deseja criar o diretório /var/lib/ocsinventory-agent, pressione "Enter" para escolher o padrão:
Do you want to create the /var/lib/ocsinventory-agent directory?
Please enter 'y' or 'n'?> [y]

Aparecerá uma mensagem dizendo que novas definições foram escritas, agradecendo o uso do OCS Inventory e pedirá se deseja remover o antigo linux_agent, escolha a padrão:
New settings written! Thank you for using OCS Inventory
Should I remove the old linux_agent
Please enter 'y' or 'n'?> [n] n

Aparecerá uma mensagem pedindo se você deseja implantar o recurso de implantação de software OCS Inventory, escolha a padrão:
Do you want to use OCS-Inventory software deployment feature?
Please enter 'y' or 'n'?> [y] y

Aparecerá uma mensagem pedindo se você gostaria de enviar um inventário desta máquina, escolha a padrão:
Do you want to send an inventory of this machine?
Please enter 'y' or 'n'?> [y] y

[info] Accountinfo file doesn't exist. I create an empty one.
-> Success!