Monthmarço 2016

Utilizando o OcsLogon

Olá pessoal, venho hoje com mais um post sobre o OCS Inventory. Hoje irei criar um script que irá executar o “OcsLogon.exe” passando os parâmetros apropriados à ele. O pacote “OcsLogon.exe” vem acompanhado do pacote OCS Inventory NG Agent quando feito download.

Por padrão o OcsLogon na hora que executado irá primeiramente checar se o OCS Inventory NG Agent está instalado, caso não esteja, ele irá buscar o OCS Inventory NG Agent no Communication Server utilizando a URL “http://ocsinventory-ng/ocsinventory”. Seguem abaixo alguns parâmetros aceitos pelo OcsLogon.

– /PACKAGER instala o “ocspackage.exe” (veja neste post como criar um “ocspackage.exe”) através do servidor especificado em “/SERVER”; caso o usuário não tenha privilégios de administrador na máquina;

– /GPO informa no script que o arquivo a ser instalado deverá ser baixado no mesmo diretório que está o “OcsLogon.exe”, esta opção deverá er utilizada em caso de uso de GPO, para o OcsLogon não buscar o instalador do agente no Communication Server (não iremos utilizar neste post);

– /URL=http[s]://ip-do-servidor:porta/caminho-do-arquivo-para-download.exe informa no script que o arquivo a ser instalado está na URL informada, diferente do padrão no Communication Server.

– /DEPLOY=a.b.c.d garante que a versão do agente informada será instalada na máquina, só funcionará se para atualização de versões anteriores à informada;

– /FORCE força a reinstalação do agente, mesmo se existir uma versão mais atual que a  utilizada;

– /TIMEOUT=x modificar o timeout padrão que é 60 segundos, deverá ser informado o valor em millissegundos;

– /UNINSTALL desinstala o agente ao invés de instalar;

Também podem ser inseridos parâmetros para a instalação do agente:

– /SERVER=http[s]:/ip-do-servidor:porta/ocsinventory, para utilizar uma diferente URL para connectar ao OCS Inventory NG Communication Server.

– /NO_SERVICE não registra o OCS Inventory NG Agent no gerenciador de serviços do Windows. O agente somente será executado ao executar o script do ocs, e não através do serviço do Windows;

– /EDITLOG exibir logs gerados do OcsLogon através de utilização de /DEBUG. Esse parâmetro somente funciona com script do ocs ou GPO.

Nota: O OcsLogon.exe sempre cria um arquivo de log “OcsLogon.log” em uma pasta temporária, geralmente em “C:\Documents and Settings\User Profile\Local settings\Temp” ou “C:\Users\User Profile\AppData\Local\Temp”.

Utilizando o script ocs:

– Copie o arquivo “OcsLogon.exe” para uma pasta compartilhada na rede, recomendo na pasta “netlogon”, pois a mesma terá acesso de leitura para todos seus usuários do domínio.

– Vamos criar um arquivo “ocs.bat” e através do bloco de notas inserir o local do compartilhamento com o arquivo “OcsLogon.exe” e seus parâmetros.

\\servidor-de-arquivos\compartilhamento\OcsLogon.exe /PACKAGER /SERVER=http://ip-do-servidor/ocsinventory

No caso acima, somente estou utilizando o parâmetro /PACKAGER (para informar que irei utilizar o ocspackage.exe e não um agente padrão) e o /SERVER seguido do caminho do Communication server.

Recomendo que o script “ocs.bat” seja salvo na pasta “netlogon” (também poderá ser adicionada somente a linha do script ocs.bat em um script de logon já existente, caso não necessite utilizar um novo script) para ser mapeado para todos o usuários e por fim quando os usuários realizarem novos logons, o OCS Inventory NG Agent será instalado ou executado conforme os parâmetros inseridos.

Utilizando o OCS Packager

Bom galera, o OCS Packager é uma ferramenta feita para preparar pacotes de instalação automatizada do OCS Inventory Agent para o windows. Ele é uma maneira mais rápida de instalar e implementar o OCS Inventory Agent em computadores, baseado em script NSIS (ferramenta que permite aos programadores criar tais instaladores para Windows) e RemCom tool (ferramenta que permite executar comandos em sistemas MS Windows remotos).

O Funcionamento do OCS Packager é simples, ele gera um arquivo “ocspackage.exe” com base nos parâmetros que você determina, permitindo em um clique, uma instalação em silent mode, etc. Utilizado com o “OcsLogon” fará um serviço de implantação muito rápido, fácil e útil no MS Windows (será assunto para outro post).

Algumas opções de comando para o OCS Inventory NG Agent:

  • /S – executa o instalador em silent mode (sem interação do usuário);
  • /NOSPLASH – desabilita a tela inicial do instalador;
  • /UPGRADE – implementa um novo agente através do recurso de deployment do OCS;
  • /NO_SERVICE – não registra o OCS Inventory NG Agent no gerenciador de serviços do Windows;
  • /NO_SYSTRAY – não cria um ícone ao lado do relógio do Windows;
  • /NOW – executa o OCS Inventory NG Agent ao final da instalação;
  • /NOSOFTWARE – ignora se o software está instalado;
  • /D – instala o OCS Inventory NG Agent em outro diretório;
  • /SERVER= – local do servidor OCS Inventory;

– Baixe o OCS Packager e o OCS Agent na seção de downloads no site do OCS Inventory;
– Execute o OcsPackager.exe e aceite o termo de licença;
A seguinte tela irá aparecer:

packager1

 

– No campo “Agent Setup file”, adicione o OcsAgentSetup.exe que foi feito download;
– No campo “Certificate file” deveremos adicionar o arquivo “.pem” que será utilizado pelo Teledeploy;
– No campo “Plugins to include” permite que sejam adicionados plugins, porém essa parte irei tratar em outro post;
– No campo “comand line options” deverão ser especificadas todas as opções necessárias para criar o “ocspackage.exe” do ocs (no meu caso, /NO_SERVICE /S /SERVER=http://192.168.1.12/ocsinventory /proxy_type=0 /NOW).
– No campo “Label” será criado um arquivo de etiqueta contendo seu prompt do usuário. Na primeira execução do OcsInventory.exe, será exibido uma janela pop-up com este aviso. O valor inserido pelo usuário é chamado TAG, não utilizei esse campo também.
– Os campos “User” e “Password” não serão utilizados neste exemplo. Caso você tenha necessidade de utilizar autenticação remota no agente Windows para fornecer permissão de execução, recomendo o uso desses campos, bastando somente ter o “PsExec.exe” na mesma pasta do OCS Packager e inserir as credenciais de usuário e senha.

Clique em “next”

packager2

 

– Escolha o local onde o “ocspackage.exe” será salvo e clique em “Ok”;
– Após isso, o “ocspackage.exe”será criado e você já poderá executar e publicar no Communication Server para ser executado através do “OcsLogon.exe”. Então vamos publicar!

Por padrão o MySQL só permite que sejam anexados arquivos com o tamanho de até 1MB, então edite o arquivo “my.cnf” e insira ou modifique o valor da variável “max_allowed_packet”. No meu caso, irei alterar para 10MB.

# vim /etc/my.cnf
max_allowed_packet=10MB

Reinicie o MySQL

# /etc/init.d/mysqld restart

Acesse “http://ip-do-server/ocsreports”, faça login com suas credenciais, clique no ícone “Configuração” e na aba “Agente”;

packager4

 

Selecione o arquivo e clique em “Envio”. Pronto, o “ocspackager.exe” já está publicado no nosso Communication Server.

Fonte:
OCS Packager

Instalação do OCS Inventory RHEL/CentOS 6.x

Pré-requisitos para instalação do OCS Inventory NG
– Apache 1.3.33 ou superior;
– Mod_perl 1.29 ou superior;
– Mod_php 4.3.2 ou superior;
– PHP 4.3.2 ou superior com suporte a ZIP e GD habilitados;
– PERL 5.6 ou superior;
– Perl module XML::Simple versão 2.12 ou superior;
– Perl module Compress::Zlib versão 1.33 ou superior;
– Perl module DBI versão 1.40 ou superior;
– Perl module DBD::Mysql versão 2.9004 ou superior;
– Perl module Apache::DBI versão 0.93 ou superior;
– Perl module Net::IP versão 1.21 ou superior;
– Perl module SOAP::Lite versão 0.66 ou superior (opcional);
– MySQL 4.1.0 ou superior com engine InnoDB habilitada;

Para instalar o MySQL, pode ser utilizado o meu post anterior clicando aqui.

Os pacotes do ocs não vêm nos repositórios padrão do RHEL/CentOS. Iremos instalar a versão 2.1.2 do ocs, pois já traz bastante melhoria de recursos comparada à versões anteriores, para isso vamos instalar o epel e o remi como repositório adicional.

# yum install epel-release
# wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
# rpm -Uvh remi-release-6*.rpm

O yum resolverá todas dependências informadas no início do post. Vamos instalar o OCS Inventory habilitando o uso do remi.

# yum --enablerepo=remi install ocsinventory

Vamos liberar o acesso ao apache e ao mysql nas portas 80 e 3306 pelo iptables

# iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
# iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

E deixar o SElinux no modo permissivo

# vim /etc/selinux/config
SELINUX=permissive

Vamos criar o banco de dados “ocsweb”, criar o usuário “ocs” e dar acesso ao banco.

# mysql -u root -p
CREATE DATABASE ocsweb;
GRANT ALL PRIVILEGES ON ocsweb.* to ocs@localhost IDENTIFIED BY 'senha';
FLUSH PRIVILEGES;
QUIT

Vamos agora checar se será necessário realizar alguma alteração nas informações do banco instalado

# vim /etc/httpd/conf.d/ocsinventory-server.conf
# Master Database settings
  # Replace localhost by hostname or ip of MySQL server for WRITE
  PerlSetEnv OCS_DB_HOST localhost
  # Replace 3306 by port where running MySQL server, generally 3306
  PerlSetEnv OCS_DB_PORT 3306
  # Name of database
  PerlSetEnv OCS_DB_NAME ocsweb //verifique se é o nome do banco que foi criado
  PerlSetEnv OCS_DB_LOCAL ocsweb //verifique se é o nome do banco que foi criado
  # User allowed to connect to database
  PerlSetEnv OCS_DB_USER ocs //verifique se é o nome do usuário do banco com permissões
  # Password for user
  PerlSetVar OCS_DB_PWD ocs //altere para a senha definida

Vamos iniciar o serviço httpd

# /etc/init.d/httpd start

Define a inicialização do httpd nos níveis padrão de inicialização do sistema

# chkconfig http on

Acesse o endereço “http://ip-do-servidor/ocsreports/install.php” e preencha conforme abaixo

ocs_database

Ao clicar em send, será executado o script install.php que realizará a configuração do banco de dados do OCS Inventory.
Acesse o endereço “http://ip-do-servidor/ocsreports” para acessar o OCS Inventory e use as credenciais abaixo

User: admin
Password: admin

ocs_home

Após o login, poderão aparecer alertas na tela informando que o script install.php está presente no servidor, conforme imagem acima. O usuário e senha do banco e da interface web de administração estão definidos como padrão. Altere as senhas no banco de dados e na interface web de administração e apague o script conforme abaixo.

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

Pronto. O serviço do OCS Inventory está instalado, configurado, executando e aguardando por novos inventários, instale o agente na sua estação e verifique!

Fonte:
Wiki OCS Inventory NG

Instalação e configuração inicial MySQL no RHEL/CentOS 6.x

O repositório padrão do CentOS não dispõe de versões mais recentes do MySQL. No caso da necessidade de uma versão mais atual que ofereça novos recursos adicionados, costumo sempre utilizar o repositório epel com o remi como repositório adicional.

# yum install epel-release
# wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
# rpm -Uvh remi-release-6*.rpm

Vamos instalar o serviço mysqld no nosso servidor. Com o yum, iremos habilitar o uso do remi (por padrão é desabilitado) e adquirir as informações de versão do pacote a ser instalado.

# yum --enablerepo=remi info mysql-server.x86_64
Plugins carregados: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.gtdinternet.com
 * epel: epel.gtdinternet.com
 * extras: centos.ufes.br
 * remi: mirror.cedia.org.ec
 * remi-safe: mirror.cedia.org.ec
 * updates: mirror.gtdinternet.com
Pacotes disponíveis
Name        : mysql-server
Arch        : x86_64
Version     : 5.5.48
Release     : 1.el6.remi
Size        : 10 M
Repo        : remi
Summary     : The MySQL server and related files
URL         : http://www.mysql.com
License     : GPLv2 with exceptions and LGPLv2 and BSD
Descrição : MySQL is a multi-user, multi-threaded SQL database server. MySQL is
          : a client/server implementation consisting of a server daemon
          : (mysqld) and many different client programs and libraries. This
          : package contains the MySQL server and some accompanying files and
          : directories.

A versão que iremos utilizar será a 5.5.48 do mysql-server conforme exibido acima.

# yum --enablerepo=remi install mysql mysql-server -y

Após a instalação vamos iniciar o serviço mysqld

# /etc/init.d/mysqld start

Define a inicialização do mysqld nos níveis padrão de inicialização do sistema

# chkconfig mysqld on

Após inicialização do banco, iremos definir a senha de root. Existem duas formas, através do comando “mysqladmin” ou executando o script “mysql_secure_installation”. Irei a seguir mostrar das duas formas.
Com o comando “mysqladmin”, basta informar a nova senha conforme abaixo.

# mysqladmin -u root password 'nova_senha'

Utilizando o script “mysql_secure_installation” será feita uma configuração básica do servidor

# mysql_secure_installation
Enter current password for root (enter for none): //pressione enter no caso de não existir senha ainda
Set root password? [Y/n] //pressione enter para definir a senha de root do servidor MySQL
New password: //insira a senha de root do servidor MySQL
Re-enter new password: //repita a senha de root do servidor MySQL
Remove anonymous users? [Y/n] //pressione enter para remover o acesso de usuários anônimos
Disallow root login remotely? [Y/n] //pressione enter para remover o acesso remoto do root
Remove test database and access to it? [Y/n] //pressione enter para remover a tabela test e seus acessos
Reload privilege tables now? [Y/n] //pressione enter para recarregar os privilégios das tabelas

O servidor MySQL já está instalado e configurado com o básico. Espero ter ajudado

Ativar a interface de rede onboot no RHEL/CentOS 6.x e 7.x

Bom, há um bom tempo atrás na minha primeira instalação com imagem minimal do CentOS, perdi um pouquinho de tempo para habilitar a interface de rede no meu servidor no boot, resolvi então criar esse post para ajudar um pouco à quem necessite desta dica.

A opção “ONBOOT” vem desabilitada por padrão a partir da versão 6 do RHEL/CentOS, imagino eu que por razões de segurança. Porém, mesmo em versões minimal existe a possibilidade de habilitar a interface automaticamente durante a instalação, na opção “Configurar Rede”, “Editar” e marcando a opção “Conectar automaticamente”, conforme a imagem abaixo.

tela_instalação_rede_centos

Mas enfim, para você que não ficou atento durante a instalação, basta alterar no arquivo de configuração de interface a opção “ONBOOT” de no para yes

# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=08:00:27:0C:E6:46
TYPE=Ethernet
UUID=f7896960-2870-4dba-821c-d78f8f1ff38a
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp

Após a alteração, basta reiniciar o serviço de rede e se você tiver um servidor dhcp configurado na rede, a interface já irá receber um novo endereço de IP.

No RHEL/CentOS 6.x

# service network restart

No RHEL/CentOS 7.x

# systemctl restart network.service

© 2018 Blog do Vieira

Theme by Anders NorénUp ↑