O OCS Inventory é uma aplicação que promove um inventário de máquinas automático, onde as informações são coletadas em tempo real. Conta com suporte a outra aplicação chamada GLPI que faz o inventário offline, o que seria útil para máquinas e recursos (como memória RAM, CPU, discos, ...) que não estão ativas, ou que estão guardadas em algum almoxarifado ou depósito.
Instalação do OCS-Inventory server no Linux CentOS7
1º Instalação de repositórios extras
- EPEL
- REMI
EPEL
Para incluir os Pacotes Adicionais para Enterprise Linux (ou EPEL), é necessário executar o seguinte comando:
yum install epel
Para habilitando o Remi no CentOs 7, execute:
wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm sudo rpm -Uvh remi-release-7*.rpm sudo yum --enablerepo=remi install php-tcpdf
Acesse /etc/yum.repos.d/remi.repo
Em [remi] modifique enable=0 para enable=1 para ativar o repositorio. Abaixo como [remi] deve ficar.
[remi] name=Les RPM de remi pour Enterprise Linux 7 - $basearch #baseurl=http://rpms.famillecollet.com/enterprise/7/remi/$basearch/ mirrorlist=http://rpms.famillecollet.com/enterprise/7/remi/mirror enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi failovermethod=priority
Para verificar se o repositorio está funcionando, execute:
yum repolist
2º Preparando o servidor
Agora há a necessidade de instalar alguns pacotes que são pre-requisitos do OCS-Inventory:
yum update -y yum install -y httpd httpd-devel mod_perl mod_php mod_ssl php-gd php-mysql php-mbstring php perl perl-XML-Simple perl-Compress-Zlib perl-DBI perl-DBD-MySQL perl-Net-IP perl-SOAP-Lite perl-Apache-DBI perl-Apache2-SOAP perl-XML-Entities
Inicie o WebServer
systemctl start httpd.service systemctl enable httpd.service
Adicione o repositorio do MariaDB
cd /etc/yum.repos.d/ vim MariaDB.repo
Adicione o conteúdo abaixo no arquivo e salve o arquivo Mariadb.repo
# MariaDB 10.0 CentOS repository list - created 2014-11-30 22:51 UTC # http://mariadb.org/mariadb/repositories/ [mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.0/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1
Agora faça a instalação do MariaDB
sudo yum install MariaDB-server MariaDB-client
Inicie o Banco de Dados
/etc/init.d/mysql start
Execute o instalação segura do Mysql e atribui a senha para root
/usr/bin/mysql_secure_installation
Dê enter para todas as mensagens e escolha uma senha para o root do MySQL.
Opcional
Caso deseje criar a base de dados agora, segue abaixo o procedimento, porém é possivel criar na durante a instalação do OCS. Fazendo essa configuração agora quando acessar o OCS será necessário somente dar input das informações de conexão com o banco de dados.
# mysql -u root -p CREATE DATABASE ocs; GRANT ALL PRIVILEGES ON ocs.* to ocs@localhost IDENTIFIED BY 'suasenha'; FLUSH PRIVILEGES; QUIT
3º Instalando o OCS-Inventory em si
Instalação do OCS NG através do Yum utilizando o Remi
yum --enablerepo=remi install ocsinventory
Libera acesso http e https
firewall-cmd --permanent --zone=public --add-service=http firewall-cmd --permanent --zone=public --add-service=https firewall-cmd --reload
Altere no php.ini o tamanho maximo de post e upload
vim /etc/php.ini post_max_size = 200M upload_max_filesize = 200M
Concluida a instalação remova o arquivo install.php do diretorio /usr/share/ocsinventory-reports/ocsreports
cd /usr/share/ocsinventory-reports/ocsreports rm install.php
Acesse a URL para configurar o OCS http://ipdoservidor/ocsreports
4º Caso haja página em branco, ao abrir no navegador, faça essa guia, senão pule!
Faça isso aqui e veja se dar certo:
Volte o install.php para o diretório que ele pertencia
/usr/share/ocsinventory-reports/ocsreports
E tente abrir a página no navegador (http://ipdoservidor/ocsreports)
caso não abra, faça:
systemctl restart httpd.service
Caso abra, volte ao arquivo install.php e edite-o
mv install.php install-.php systemctl restart httpd.service
Caso não abra, reinstale o pacote do OCS Inventory
yum --enablerepo=remi install ocsinventory
Caso dê certo, Acompanhe os erros no log
tail -f /var/log/httpd/error_log
5º Configurando a aplicação web do OCS-Inventory
Agora acesse o servidor pelo endereço : http://ip_do_servido/ocsreports que irá aparecer uma tela requisitando os seguintes dados:
MySQL login: root MySQL password: senha_do_root Name of Database: ocs MySQL HostName: localhost
E aperte o botão Send;
Aparecerá outra tela de confirmação, clique em "Envoyer";
Terminada a instalação, vá até o local onde está o arquivo install.php (/usr/share/ocsinventory-reports/ocsreports) e remova-o (ou faça backup).
O login default ao GUI é admin e senha admin. Agora vamos a instalação do agente nas máquinas, acesse o site do OCS e baixe o cliente na versão do Windows: http://www.ocsinventory-ng.org/en/download/download-agent.html
Alertas na tela inicial
Os alertas de segurança são os seguintes:
1. Your install.php exists in your installation directory; 2. The default SQL login/password is activate on your database: ocsweb; 3. The default login/password is activate on OCS-NG GUI
Alerta 1
Para eliminarmos o alerta 1 é bem simples. Acesse seu servidor e apague o arquivo install.php do diretório de instalação. Isso vai evitar executar o programa de instalação do software novamente. Pra quem está seguindo o tutorial desde o começo e realizou uma instalação padrão, o caminho é o seguinte:
cd /usr/share/ocsinventory-reeports/ocsreports
E depois é só apagar o arquivo (se não estiver como root, use o ‘sudo’):
rm -f install.php
Alerta 2
Para o alerta 2, precisamos criar um usuário no MySQL, para que o OCS não conecte no banco usando login e senha de root. Vamos lá: Criando um usuário e grupo para o ocs:
groupadd ocs useradd -g ocs ocs
Crie uma senha para o usuário:
passwd ocs
Acessando o MySQL e dando as permissões necessárias ao usuario ‘ocs’ no banco de dados:
mysql -uroot -p mysql> grant all privileges on ocsweb.* to ‘ocs’@'localhost’ identified by ‘senha_do_usuario_ocs’; mysql> exit
Prontinho, agora vamos alterar o arquivo de conexão do OCS na base de dados, colocando o novo usuário criado:
vi /usr/share/ocsinventory-reports/ocsreports/dbconfig.inc.php
As duas ultimas linhas “define” correspondem ao usuario e senha que vão conectar no banco. Se o usuário já estiver ‘ocs’ (COMPTE_BASE), deixe como está. Se estiver ‘root’, mude pra ‘ocs’. Na outra linha (PSWD_BASE), altere a senha para a senha do usuário ocs que voce criou. Respeite parenteses e aspas do arquivo.
Agora vamos editar o arquivo z-ocsinventory-server.conf
vi /etc/apache2/conf.d/z-ocsinventory-server.conf
Altere as seguintes linhas:
PerlSetEnv OCS_DB_USER ocs PerlSetVar OCS_DB_PWD senha_usuario_ocs
Reinicie o serviço Apache2:
service apache2 restart
Agora entre novamente no OCS Inventory e voce verá que os dois primeiros avisos de segurança sumiram. Ficou faltando apenas o aviso 3. Para este ultimo, basta alterar a senha de admin do sistema. Clique no botão “Usuário” (um botão com uma carinha simpática e nariguda rs) e depois no botão “Editar” ao lado do usuário admin. Crie uma nova senha e logue novamente no sistema. Voce verá que nenhuma mensagem de segurança estará sendo exibida. Finalizo aqui este artigo. No proximo (prometo que não será tão demorado) vou realizar a instalação do agente OCS em uma estação Windows e mostrar como funciona o envio das informações ao Servidor.
Instalação do agente do OCS-Inventory em GNU/Linux
Faça o download do pacote OCSNG_UNIX_AGENT-1.02.tar.gz, a versão mais recente pode ser obtida em http://www.ocsinventory-ng.org.
wget http://downloads.sourceforge.net/project/ocsinventory/OCS%20Inventory%20NG/*/Ocsinventory-Unix-Agent-*.tar.gz
Descompacte os arquivos:
tar xzvf Ocsinventory-Unix-Agent-*.tar.gz
Entre no diretório Ocsinventory-Agent-*:
cd Ocsinventory-Unix-Agent-*/
Inicie a instalação:
perl Makefile.PL
Irá aparecer a seguinte mensagem:
Please install Crypt::SSLeay if you want to use SSL. Checking if your kit is complete... Looks good Writing Makefile for Ocsinventory::Agent
Gerar Binários
make
Instalar Binários
make install
Surge o Assistente:
Do you want to configure the agent [Enter] Please enter 'y' or 'n'?> [y] Where do you want to write the configuration file? 0 -> /etc/ocsinventory 1 -> /usr/local/etc/ocsinventory 2 -> /etc/ocsinventory-agent ?> 1
Do you want to create the directory /usr/local/etc/ocsinventory? Please enter 'y' or 'n'?> [y] [info] The config file will be written in /etc/ocsinventory/ocsinventory-agent.cfg,
What is the address of your ocs server?> [ocsinventory-ng] IP_CONFIGURADO_O_OCS-INVENTORY_SERVER
Do you need credential for the server? (You probably don't) Please enter 'y' or 'n'?> [n]
Do you want to apply an administrative tag on this machine Please enter 'y' or 'n'?> [y] n ocsinventory agent presents: /usr/bin/ocsinventory-agent
Do yo want to install the cron task in /etc/cron.d Please enter 'y' or 'n'?> [y]
Where do you want the agent to store its files? (You probably don't need to change it)?> [/var/lib/ocsinventory-agent]
Do you want to create the /var/lib/ocsinventory-agent directory? Please enter 'y' or 'n'?> [y] New settings written! Thank you for using OCS Inventory
Should I remove the old linux_agent Please enter 'y' or 'n'?> [n]
Do you want to use OCS-Inventory software deployment feature? Please enter 'y' or 'n'?> [y]
Do you want to use OCS-Inventory SNMP scans feature? Please enter 'y' or 'n'?> [y]
Do you want to send an inventory of this machine? Please enter 'y' or 'n'?> [y] [info] Accountinfo file doesn't exist. I create an empty one.
REFERÊNCIAS
OCS-Inventory no CentOS 7 - Acessado em 4 de setembro/2017
Instalando o agente manualmente no Linux - Acessado em 4 de setembro/2017