# Instalação e Primeiros Passos

# Instalação do Agente Priax

# Funções dos diferentes agentes

Os agentes do Priax são responsáveis por um conjunto diferente de funções onde cada uma delas serve a um proposito diferente. A definição de quais pacotes devem ser instalados em cada ambiente é uma definição do projeto alinhada ao licenciamento do produto.

O agente PCM é o agente responsável pelo monitoramento de configurações. Para versões de sistema operacional Linux a coleta de sockets de comunicação é feita por este agente.

O agente PIA é o responsável pela coleta de sockets de comunicação e realização do inventario local do host onde está instalado.

O agente PPA é o responsável pelo monitoramento de capacidade/performance do Priax.

# Sistemas operacionais suportados por agente

<div align="center" dir="ltr" id="bkmrk-sistema-operacional-"><table><colgroup><col width="176"></col><col width="49"></col><col width="41"></col><col width="45"></col><col width="57"></col></colgroup><tbody><tr><td>Sistema Operacional

</td><td>PCM

</td><td>PIA

</td><td>PPA

</td><td>Versão Pacote

</td></tr><tr><td colspan="5">Sistemas operacionais Linux

</td></tr><tr><td>RHEL 6

</td><td>X

</td><td>O

</td><td>X

</td><td>6

</td></tr><tr><td>RHEL 7

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>RHEL 8

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>RHEL 9

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Centos 6

</td><td>X

</td><td>O

</td><td>X

</td><td>6

</td></tr><tr><td>Centos 7

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Centos 8

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Oracle Linux 6

</td><td>X

</td><td>O

</td><td>X

</td><td>6

</td></tr><tr><td>Oracle Linux 7

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Oracle Linux 8

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Ubuntu 14

</td><td>X

</td><td>O

</td><td>X

</td><td>6

</td></tr><tr><td>Ubuntu 16

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Ubuntu 18

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Ubuntu 20

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Ubuntu 22

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Debian 7

</td><td>X

</td><td>O

</td><td>X

</td><td>6

</td></tr><tr><td>Debian 8

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Debian 9

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Debian 10

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Debian 11

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Debian 12

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Amazon Linux AMI

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Amazon Linux 2

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Suse 12

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Kali Linux 2019

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Kali Linux 2023

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Rocky Linux 8

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Rocky Linux 9

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td colspan="5">Sistemas operacionais Windows

</td></tr><tr><td>Windows Server 2008

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows Server 2012

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows Server 2016

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows Server 2019

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows Server 2022

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows 7

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows 8

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows 10

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows 11

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr></tbody></table>

</div>1. Matriz de compatibilidade

Sistemas operacionais não incluídos na lista não tem suporte dos agentes e havendo necessidade entrar em contato com a equipe de suporte do Priax.

# Arquivos de instalação

Dependendo da versão do Sistema Operacional diferentes pacotes são utilizados para diferentes instalações.

## Windows

O pacote de instalação para sistemas operacionais Windows é um arquivo .msi que possui embutido no mesmo pacote todos os agentes.

Para sistemas operacionais Windows x86 não são mais suportados.

Para sistemas operacionais Windows x64 deve-se utilizar o pacote PriaxAgent.msi

## Sistemas operacionais Linux

Para instalação em sistemas operacionais Linux cada versão deve fazer uso de um pacote específico para cada agente onde a instalação do agente do PPA para Linux utiliza o pacote PPAClient, o agente do PCM utiliza o pacote PCMClient e o PIA utiliza o pacote PIAgent.

Considerando a versão do pacote descrita na tabela Matriz de compatibilidade o nome do pacote a ser utilizado é determinado por ela.

EXEMPLOS:

Para instalação do agente do PPA em um Ubuntu 14 deve-se utilizar o pacote PPAClient6 da mesma forma que em um Centos 6;

Para instalação do agente do PCM em um RHEL 8 utiliza-se o pacote PCMClient7 assim como em um Debian 9.

# Requisitos de instalação

Antes de iniciar a instalação é necessário garantir que o sistema operacional atenda um conjunto mínimo de requisitos para que a instalação e funcionamento dos agentes ocorra de forma esperada.

## Windows

Para sistemas operacionais Windows os requisitos para funcionamento do agente são:

Possuir privilégio administrativo para a instalação do agente se realizada de forma manual;

Ao menos versão 4.6.2 do .Net Framework;

Ao menos versão 3.0 do Powershell;

## Sistemas operacionais Linux

Para instalação em sistemas operacionais Linux os requisitos são:

Possuir acesso privilegiado ao host para instalação manual;

Quando instalando agentes de pacote 6 o host deve possuir ao menos a versão 1.10 da lib krb5 ou correspondente do sistema operacional;

Pacote “tar” instalado pois o pacote de instalação é compactado usando tar;

Sudo instalado.

# Fluxos de comunicação dos agentes

De forma geral o agente quando instalado, precisa se comunicar com a API do servidor de gerência do agente e com o servidor de mensageria. Está comunicação é sempre partindo do agente para o servidor. Abaixo segue um exemplo de configuração possível mas vale lembrar que ela é especifica de cada ambiente.

Neste exemplo a API onde os agentes conectam esta configurada para utilizar o protocolo HTTP na porta 9090.

<div align="left" dir="ltr" id="bkmrk-agente-origem-destin"><table><colgroup><col width="159"></col><col width="159"></col><col width="160"></col><col width="145"></col></colgroup><tbody><tr><td>Agente

</td><td>Origem

</td><td>Destino

</td><td>Porta TCP

</td></tr><tr><td rowspan="2">PPA

</td><td rowspan="2">Agente

</td><td rowspan="2">Servidor

</td><td>9090

</td></tr><tr><td>5672

</td></tr><tr><td>PCM

</td><td>Agente

</td><td>Servidor

</td><td>9090

</td></tr><tr><td>PIA

</td><td>Agente

</td><td>Servidor

</td><td>9090

</td></tr></tbody></table>

</div>![Diagrama

Descrição gerada automaticamente](https://lh7-rt.googleusercontent.com/docsz/AD_4nXfFiz84FOmkRIf34u_PImDBMpujlPayEi-AomdDkkvV8DfZq_M8OrmgPe-AIe0rz224N-LdfluSgxuCsBtLzBDTFRRi9sTK_T7aAXByzegkdLC3yrxR6-MJ32F0LuhvSYXDVYX_ZjzQUKTprYZSew?key=udoTdPRISHA8BljlPTbTtpyS)

Para que o agente funcione, quando utilizando nomes de host é necessário que o nome seja possível de ser resolvido para IP.

# Processo de instalação

## Windows

Para instalação em sistemas operacionais Windows, após garantir que o host possua os requisitos, deve-se executar o arquivo MSI disponível para a versão do sistema operacional.

## Instalação de forma manual

Iniciando a instalação de forma manual executando o arquivo MSI dentro do host onde se deseja instalar o agente será exibida uma janela de boas-vindas. Clicar em Next para iniciar a instalação.

![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXcgXyKKns9QfXLaNEus2NgcZBCAdi3SQhd4Ve1KprPDdty7tWjbjbJ_ORumN9hbR6oDJFRsaJfPv8krSa5Wx6MG7_Gx6FZlDHB0ijNGPd0ZMxwPOlyhm-rcznKsDICCp7Uc4vkUY0_gbKNFOYKNtw?key=udoTdPRISHA8BljlPTbTtpyS)

1. Welcome Priax Agente Setup

O próximo passo é a seleção do local onde deseja-se instalar o agente. O padrão é C:\\Program Files\\Priax Agent\\

Manter a seleção de instalação para todos usuários e clicar em Next para prosseguir.

![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXdPGf-GFvNVH990HiMiP3Fc0jIRh7-b9EGO4CfwMs9ETseJumHCsWcJD61li2KBDMMvt7gcRXmO-ANKQGjVwd5ebVGvmcD9oAdgaGVCbw43XtcoPf5nTcTENJqZocTFwv2_QN1GVbPLYMotsbU6YQ?key=udoTdPRISHA8BljlPTbTtpyS)

2. Local de instalação

Na tela de configuração da API deve-se ter atenção para os valores cadastrados onde eles devem ser os nomes de host/endereços IP dos servidores da API. Após definir os valores clicar em Next para prosseguir.

Em Endereço deve-se definir o endereço http/https para comunicação com a API considerando a configuração do ambiente assim como a porta onde a API responde.

Em endereço do serviço de fila definir o endereço para a o servidor de mensageria considerando a configuração do ambiente.

Abaixo um EXEMPLO de configuração.

![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXeiOSi55FRrMGznEKw3aElh_UXyzOH6G6F1F_ZCJsRDZIqWqlIRHbCsPFH1mUJ9hioWC1rZSMO0nRp7HlY00sPN_0xD9M2yVw0WeHVVc8CMmk9BSPk-IrFuQgf-ydOjAfpZjCw1C7axkIdXX0XQWng?key=udoTdPRISHA8BljlPTbTtpyS)

3. Priax API

Na próxima janela são selecionados quais os agentes serão instalados.

Selecionar os necessários e clicar em Next para prosseguir.

Vale lembrar que esta configuração depende de quais módulos do agente são utilizados onde a imagem abaixo é apenas um EXEMPLO.

![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXdmwD6knxyuJ7ApxOdoYyqSLaYh3tTzBgCiq6lhznEafCx4BcgxP8qM1ZRxn2yPe6mvycqF6tqyE7jAjNc9GQOsrLaw_7AxOT23bocDxpXYTY91Aql7ZZQf59pdubyFtdTnEaNvVW4PTaAL_no2xA?key=udoTdPRISHA8BljlPTbTtpyS)

4. Priax Agents

Será exibida uma tela informando que o agente está pronto para ser instalado, e clicando em Next a instalação será iniciada.

![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXexPgdmbgcgrYeOcDN1cioPcm6DMpP7l3qADZ7xGgtZSxWwKV9Pi0Lvtu3bNsDF99Iag4SponzQ64ZWy3ik9fqtiUP_jqN-Dia2bc3vdzW8w-azFlrVhSlcGIlozSkmtetSdU1s2bQNXj4xqD5jm8w?key=udoTdPRISHA8BljlPTbTtpyS)

5. Confirmar instalação

Finalizada a instalação será exibida uma janela informando que a instalação ocorreu com sucesso.

![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXftAcLtINPBGlxwQOxh6Dh2af5reEYsQqAffPwB3b7plhHqTS3UrSHM9WvLi1EIPFWLDEA9NJaH7cKXoAqq2lKtA6Jm9m2UwOwo7f3cyPz1mO2QvKqeS77Ie-KwFYBryDLb8pDwqXIx1rS7NrzZGhA?key=udoTdPRISHA8BljlPTbTtpyS)

6. Finalizada a instalação

## Instalação em linha de comando

O mesmo pacote MSI possibilita também a instalação via linha de comando com o objetivo de possibilitar o uso de soluções de distribuição de software ou instalação automatizada.

Para realizar a instalação via linha de comando os seguintes parâmetros devem ser passados para a execução do MSI.

URL = endereço da API;

RMQ = endereço do servidor de mensageria;

PPA = se deve ser instalado ou não agente do PPA. Deve ser 1 caso queira instalar e 0 em caso negativo;

PIA = se deve ser instalado ou não agente do PIA. Deve ser 1 caso queira instalar e 0 em caso negativo;

PCM = se deve ser instalado ou não o agente do PCM. Deve ser 1 caso queira instalar e 0 em caso negativo;

Path do arquivo MSI.

Sintaxe da execução via linha de comando

msiexec /quiet /i pathdoarquivomsi URL="enderecoAPI" PPA=0/1 PCM=0/1 PIA=0/1 RMQ="enderecoMensageria"

Exemplo de linha de comando lendo o arquivo MSI localizado em c:\\temp\\PriaxAgent.msi, instalando somente o PCM utilizando endereço da API [https://srvpriax.priax.io:9090](https://srvpriax.priax.io:9090) e servidor de mensageria srvpriax.priax.io:5672

msiexec /quiet /i c:\\temp\\PriaxAgent.msi URL="[https://srvpriax.priax.io:9090](https://srvpriax.priax.io:9090)" PPA=0 PCM=1 PIA=0 RMQ="srvpriax.priax.io:5672"

## Sistemas operacionais Linux

Em sistemas operacionais Linux durante o processo de instalação é criado um usuário local no host onde está sendo instalado o agente sendo este o usuário que roda a aplicação.  
Abaixo usuários que são criados considerando cada pacote instalado.

<div align="center" dir="ltr" id="bkmrk-agente-usu%C3%A1rio-ppa-p"><table><colgroup><col width="84"></col><col width="114"></col></colgroup><tbody><tr><td>Agente

</td><td>Usuário

</td></tr><tr><td>PPA

</td><td>PriaxPPAClient

</td></tr><tr><td>PCM

</td><td>PriaxPCMClient

</td></tr><tr><td>PIA

</td><td>PriaxPIAgent

</td></tr></tbody></table>

</div>Para instalação em sistemas operacionais Linux basta copiar o arquivo de instalação para o host, tornar ele executável e executar.

Para tornar o arquivo executável executar chmod +x nomedoarquivo

EXEMPLO: # chmod +x /tmp/PriaxAgent/PPAClient7

Quando a instalação é iniciada será exibido o processo da validação de integridade do arquivo assim como da instalação.

\# /tmp/PPAClient7

Verifying archive integrity... 100% MD5 checksums are OK. All good.

Uncompressing Priax Agents Setup 100%

\#

## Instalação remota

Existe um processo que possibilita a instalação dos agentes em hosts de forma remota e em massa possibilitando assim uma rápida distribuição dos agentes em conjuntos de hosts.

Este processo foi criado a fim de possibilitar a instalação dos agentes do Priax em hosts que o Priax consegue gerenciar como alternativa a outras soluções de distribuição de software como o System Center, Ansible entre outros.

Este processo inicia-se no host do PPAServer, lê conjuntos de informações de acesso que já devem estar cadastradas no Priax e tenta conexão aos hosts para em primeiro lugar avaliar se é necessário ou não a instalação do agente no host e em caso positivo, valida os requisitos e instala se possível.

## Fluxos de comunicação para instalação remota

Considerando os fluxos de comunicação necessários para este processo poder ser executado, eles diferem dependendo do tipo de host onde se está tentando instalar o agente, mas são os mesmos utilizados para o Discover. Em ambos os casos a comunicação inicia-se no servidor onde o processo está rodando com destino onde o agente deve ser instalado.

<div align="center" dir="ltr" id="bkmrk-origem-destino-proto"><table><colgroup><col width="138"></col><col width="170"></col><col width="250"></col></colgroup><tbody><tr><td>Origem

</td><td>Destino

</td><td>Protocolos/Portas utilizadas

</td></tr><tr><td>Servidor PPAServer

</td><td>Servidores/estacoes Windows

</td><td>WMI; Mais informações no link abaixo

</td></tr><tr><td>Servidor PPAServer

</td><td>Servidores Linux

</td><td>SSH; TCP 22

</td></tr></tbody></table>

</div>Sendo hosts Windows, a comunicação toda é feira via WMI e a descrição do funcionamento do protocolo WMI em relação a rede esta descrita no link [https://learn.microsoft.com/en-us/windows/win32/wmisdk/connecting-to-wmi-on-a-remote-computer](https://learn.microsoft.com/en-us/windows/win32/wmisdk/connecting-to-wmi-on-a-remote-computer)

## Permissões necessárias para instalação remota

Em relação a hosts Windows, é necessário que o usuario utilizado seja ao menos membro do grupo local dos hosts Administrators ou Power Users;

Em relação a hosts Linux, o usuário não precisa ser “root” mas deve ter permissão de execução do pacote de instalação do agente de forma privilegiada.

Permissão esta pode ser concedida de diversas formas mas é importante saber que durante o processo em relação a hosts Linux não é possível interação de usuário com credenciais como acontece quando em sessão interativa (usando o putty por exemplo). Isto significa que as permissões requeridas para os processos rodarem devem ser possíveis sem que seja necessário digitar a senha novamente, de forma interativa.

Se o usuario utilizado é “root” a instalação acontece de forma direta e caso não seja, com uso do sudo.

Durante a execução do processo de instalação em host Linux, é criado no diretório /tmp o diretório PriaxAgent e os pacotes de instalação necessários copiados para este diretório. Ao final do processo eles são removidos.

Exemplo de configuração que pode ser aplicada é de ajustar a configuração do sudoers como o exemplo abaixo. Atenção ao usuario utilizado.

Cmnd\_Alias PRIAXPERMISSIONSAGENTINSTALL /tmp/PriaxAgent/PPAClient6, /tmp/PriaxAgent/PCMClient6, /tmp/PriaxAgent/PPAClient7, /tmp/PriaxAgent/PCMClient7, /tmp/PriaxAgent/PIAgent7

Defaults!PRIAXPERMISSIONSAGENTINSTALL !requiretty

usuarioUtilizadoParaConexao ALL=(ALL) NOPASSWD: PRIAXPERMISSIONSAGENTINSTALL

# Priax Discovery - Introdução e Instalação

## <a name="_Toc199505126"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">1.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Sobre o PHD**

O PHD (Priax Host Discover) é um dos componentes do Priax sendo este o responsável pela descoberta de dispositivos, aplicações e componentes de aplicações nos ambientes.

Ele é composto de um conjunto de ferramentas que tem por objetivo coletar o máximo possível de dados em um determinado ambiente através da conexão a estes diversos dispositivos e a enumeração de quais componentes existem em cada um deles reportando estes ao Priax para posterior tratamento.

De forma geral o funcionamento do PHD é cíclico buscando hosts na infra estrutura derivados da configuração de que tipo de discover ele faz assim como da detecção de componentes destes hosts.

O PHD trabalha em 2 contextos diferentes onde um deles é o dito Discover que tem por objetivo apenas detectar hosts em diferentes locais e uma vez importados no Priax estes hosts são elegíveis para o segundo contexto que é o de Inventário, que tem por objetivo determinar que tipo de componentes existem em cada host.

Os hosts que podem ser detectados no contexto do discover podem derivar de domínios do Active Directory, scan de redes existentes, organizações da Azure, contas da AWS ou da instalação do agente de discover/inventario. Mais informações sobre os tipos de hosts detectados podem ser encontradas nas sessões relacionadas a cada tipo de discover.

No contexto do discover, hosts detectados na infra estrutura que ainda não existem no Priax são reportados para inclusão e hosts que existem importados no Priax e não existem na infra estrutura são reportados para deleção e o mesmo acontece no contexto do inventário, componentes que existem nos hosts e não existem no Priax são adicionados e os que deixam de existir são removidos.

Múltiplos servidores de discover são sugeridos de serem instalados dependendo de características de configuração de rede, principalmente quando se trata de acesso a dispositivos sobre links WAN mas não somente por conta disto, mas também como forma de distribuição de carga.

Estes múltiplos podem dividir os processos entre si ou serem especializados em apenas 1 tipo de discover/inventário.

## <a name="_Toc199505127"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">2.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Tipos de discover**

Como já citado, a função de discover tem como objetivo apenas detectar hosts de diferentes tipos na infra estrutura.

Requisitos para os discovers são descritos na sessão 4.2 **Tipos de discover**.

Assim sendo os discovers se dividem em:

## <a name="_Toc199505128"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">2.1.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Discover de domínio**

Neste tipo de discover são enumerados os hosts Windows com OS de server, com OS de client ou ambos que existem no domínio e que tenham se comunicado com algum domain controller nos últimos 30 dias.

## <a name="_Toc199505129"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">2.2.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Discover de rede**

Neste tipo é feito o scan de uma determinada rede em busca de diversos tipos de hosts. Hosts que se enquadram neste tipo são hosts com sistemas operacionais Windows, Linux ou VMWare, dispositivos como impressoras, switches, routers, firewalls, storages, appliances, sensores diversos e equipamentos IOT.

## <a name="_Toc199505130"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">2.3.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Discover de subscriptions Azure ou contas AWS**

Neste tipo de discover são enumeradas as máquinas virtuais/EC2 instances existentes nas diferentes subscriptions Azure/contas AWS além dos demais serviços nativos existentes em cada contexto.

Requisitos para a utilização de cada um dos tipos estão listados abaixo em suas sessões especificas.

## <a name="_Toc199505131"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">3.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Tipos de inventário**

Assim como existem diferentes tipos de discover existem também diferentes tipos de inventário, cada um deles especializado em um conjunto de trabalho.

A configuração padrão do Priax prevê que no que tange a inventários acontecendo, os itens que são detectados na infraestrutura e que não existem no Priax são automaticamente cadastrados e os que existem no Priax mas não mais na infra, são removidos automaticamente. Esta configuração pode ser alterada de forma separada de acordo com a necessidade.

Para todos os casos relacionados a inventário, é necessário que o “elemento pai” exista previamente no Priax e esteja configurado adequadamente. Mais informações em cada um dos tópicos abaixo.

Requisitos para cada um dos tipos de inventário são descritos em sua respectiva sessão em 4.3 **Tipos de inventário** na página <span style="mso-no-proof: yes;">11</span>.

## <a name="_Toc199505132"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">3.1.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Inventário hosts Windows**

Este tipo de inventário tem por função detectar os subcomponentes de um host Windows. Exemplos de subcomponentes são, mas não limitando-se a quais aplicações e componentes de aplicação existem no host, serviços, dispositivos de hardware, tarefas agendadas, processos.

Para que o inventário de um host Windows possa acontecer, o host deve ser primeiramente existir no Priax. Ele pode existir ou derivado de algum processo de discover ou então com o cadastramento manual do host e suas propriedades.

## <a name="_Toc199505133"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">3.2.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Inventário hosts Linux**

O inventário de hosts Linux tem mesmo objetivo que o de hosts Windows e funciona de forma semelhante.

Assim como no caso dos hosts Windows, para que o inventário de um host Linux possa acontecer, o host deve ser primeiramente existir no Priax.

## <a name="_Toc199505134"></a>**<span lang="EN-US" style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin; mso-ansi-language: EN-US;"><span style="mso-list: Ignore;">3.3.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****<span lang="EN-US" style="mso-ansi-language: EN-US;">Inventário de switches/routers/firewalls</span>**

O inventário de dispositivos como switches e routers tem por objetivo a detecção de portas dos dispositivos, sensores de temperatura e outros subcomponentes existentes em cada um deles.

Dispositivos deste tipo também devem existir previamente no Priax.

## <a name="_Toc199505135"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">3.4.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Inventário de storages**

O inventário de storages tem por função detectar os componentes de storage de acordo como configurado. Componentes estes são por exemplo quais discos, enclosures, volumes etc etc.

Assim como switches, os storages também devem existir no Priax.

## <a name="_Toc199505136"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">3.5.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Inventário do Active Directory**

O inventário do Active Directory tem por função representar dentro do Priax toda a estrutura de OUs, contas de computador, usuários e grupos tal e qual é apresentado no Active Directory.

O mesmo elemento (Dominio do Active Directory) que é usado para o discover do domínio é também usado para o inventário.

## <a name="_Toc199505137"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">3.6.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Inventário de Windows Failover Cluster**

O inventário de Failover Cluster passa em primeiro lugar pelo cadastramento de forma manual no Priax do próprio cluster.

Uma vez cadastrado o Cluster é necessário habilitar o inventário e o resultado é a representação no Priax tal e qual a apresentada na ferramenta de administração do Failover Cluster no Windows.

## <a name="_Toc199505138"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">3.7.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Inventário de clusters Kubernetes**

O inventário de clusters de Kubernetes assim como o de Windows Failover Cluster passa em primeiro lugar pelo cadastramento de forma manual no Priax do próprio cluster.

Quando o cluster existe em cloud Azure ou AWS o cadastramento do cluster no Priax é realizado de forma automática caso o inventário de Azure/AWs esteja habilitado.

Quando o cluster é criado derivado de inventário de Clouds, durante o processo de inventário da Cloud o próprio processo tenta gerar o “kubeconfig” para acesso ao cluster. Devido a configurações da Cloud ou mesmo do Cluster em si, este processo pode não funcionar adequadamente sendo então necessário a geração manual do “kubeconfig” para acesso ao cluster.

Uma vez cadastrado o Cluster é necessário habilitar o inventário e o resultado é a representação no Priax tal e qual a configuração do cluster com seus namespaces, deployments, nodes, replica sets etc.

Sempre é necessário validar que o Kubeconfig foi corretamente cadastrado no cluster diretamente no Priax, seja por cadastramento manual ou automatizado.

## <a name="_Toc199505139"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">3.8.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Inventário de clusters Kafka**

O inventário de clusters Kafka também depende do cadastramento manual do cluster no Priax.

O resultado do inventário de um cluster Kafka é a representação no Priax dos Tipos, Consumer Groups, Brokers etc.

## <a name="_Toc199505140"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">3.9.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Inventário de datacenters VMWare**

O inventário de datacenters VMWare tem por função detectar quais clusters, hosts físicos, maquinas virtuais, datastores existem em um determinado datacenter.

## <a name="_Toc199505141"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">3.10.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Inventário de Subscriptions Azure**

O inventario de subscriptions Azure tem por função determinar recursos existem em determinada subscription.

## <a name="_Toc199505142"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">3.11.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Inventário de Account AWS**

O inventario de Account AWS tem por função determinar recursos existem em determinada Account nas diferentes regions habilitadas para a Account.

## <a name="_Toc199505143"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Requisitos**

## <a name="_Toc199505144"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.1.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Instalação**

A instalação do PHD pode ser feita tanto em servidores Windows quanto em container Docker.

## <a name="_Toc199505145"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.1.1. </span></span>****Windows**

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Sistema operacional Windows 2008 R2 ou superior;

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Espaço em disco de 200Mb;

<span lang="EN-US" style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-ansi-language: EN-US;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span><span lang="EN-US" style="mso-ansi-language: EN-US;">.Net Framework 4.6.2 ou superior;</span>

<span lang="EN-US" style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-ansi-language: EN-US;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span><span lang="EN-US" style="mso-ansi-language: EN-US;">Windows Powershell 5.0;</span>

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Nmap 7.40 ou superior;

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Rabbit MQ Server versão 3.8.3;

Dependendo dos tipos de discover/inventário que são executados diferentes requisitos em relação a memória e CPU são necessários. A configuração padrão consiste na execução paralela de até 5 processos de discover/inventário onde com esta configuração é sugerido que o host possua ao menos 4 cores de CPU.

Em relação a memória, o requisito pode variar bastante, mas de forma geral a sugestão é de 200Mb por processo, sendo então com a configuração padrão a recomendação de 1Gb.

## <a name="_Toc199505146"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.1.2. </span></span>****Docker**

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Versão do Docker 1.13.1 ou superior;

Requisitos de hardware relacionados ao container são os mesmos especificados na sessão **Erro! Fonte de referência não encontrada.** **Erro! Fonte de referência não encontrada.** na página **<span style="mso-no-proof: yes;">Erro! Indicador não definido.</span>**;

## <a name="_Ref152593026"></a><a name="_Toc199505147"></a><span style="mso-bookmark: _Ref152593026;">**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.2.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Tipos de discover**</span>

Diferentes tipos de discover podem rodar dependendo do desejado em relação ao resultado do discover e cada um possui seus conjuntos de requisitos.

Quando 1 processo de discover interage sobre um host com sucesso, os demais são automaticamente desabilitados evitando assim que múltiplos processos interajam sobre o mesmo host.

## <a name="_Ref152576346"></a><a name="_Toc199505148"></a><span style="mso-bookmark: _Ref152576346;">**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.2.1. </span></span>****Discover de domínio Active Directory**</span>

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Domínios cadastrados e configurados adequadamente no Priax;

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Credenciais de acesso ao domínio devem ser cadastradas nos domínios no Priax;

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Resolução de nomes deve estar funcionando para os hosts do domínio;

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Configurações de Firewall que permitam os acessos necessários conforme abaixo descrito.

A configuração do discover do domínio leva em consideração também as redes existentes e quais servers de discover são responsáveis por cada uma delas. Isto significa que não basta apenas cadastrar e configurar o domínio, é necessário também cadastrar as redes do quais os hosts do domínio existem. Esta configuração é realizada diretamente no Priax.

Desta forma é possível por exemplo configurar que considerando hosts do domínio X, os que existem em rede X são descobertos por servidor de PHD X e os que existem em rede Y são descobertos pelo servidor PHD Y. Isto significa, portanto, que dado um domínio, múltiplos servidores de PHD podem detectar hosts.

No que tange a credenciais, é necessário que o usuario tenha privilégio de leitura apenas em relação ao domínio, porém é necessário que o usuario tenha privilégio administrativo nos hosts membros do domínio.

Para tornar mais clara esta definição, o usuário pode ser por exemplo membro do grupo Domain Users no domínio, porém deve ser membro do grupo Administratos/Power Users local nos servidores que fazem parte do domínio. Existem diversas estratégias de como viabilizar este tipo de privilégio e a definição de qual a mais adequada é dada pela administração do ambiente em si.

Abaixo tabela que demonstra os fluxos de comunicação no sentido de rede que são requeridos para esta função e quais componentes são envolvidos em cada uma delas.

<table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" id="bkmrk-origem-destino-porta" style="border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt;"><tbody><tr style="mso-yfti-irow: 0; mso-yfti-firstrow: yes;"><td style="width: 89.45pt; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="119">**Origem**

</td><td style="width: 141.55pt; border: solid windowtext 1.0pt; border-left: none; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="189">**Destino**

</td><td style="width: 187.25pt; border: solid windowtext 1.0pt; border-left: none; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="250">**Portas utilizadas**

</td></tr><tr style="mso-yfti-irow: 1;"><td style="width: 89.45pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="119">Servidor do PHD

</td><td style="width: 141.55pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="189">Domain Controller

</td><td style="width: 187.25pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="250">LDAP; TCP 389

</td></tr><tr style="mso-yfti-irow: 2; mso-yfti-lastrow: yes;"><td style="width: 89.45pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="119">Servidor do PHD

</td><td style="width: 141.55pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="189">Hosts membros do domínio

</td><td style="width: 187.25pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="250">WMI; Mais informações no link abaixo

</td></tr></tbody></table>

Informações sobre o protocolo WMI podem ser acessadas em [https://learn.microsoft.com/en-us/windows/win32/wmisdk/connecting-to-wmi-on-a-remote-computer](https://learn.microsoft.com/en-us/windows/win32/wmisdk/connecting-to-wmi-on-a-remote-computer)

O protocolo WMI faz uso de portas dinâmicas para viabilizar o acesso conforme pode ser consultado na documentação acima e diferentes soluções de firewall implementam este tipo de regra de forma diferente. Para maiores esclarecimentos consultar a documentação de seu firewall.

## <a name="_Ref152579840"></a><a name="_Toc199505149"></a><span style="mso-bookmark: _Ref152579840;">**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.2.2. </span></span>****Discover de hosts via scan de rede**</span>

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Redes cadastradas e configuradas no Priax;

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Credenciais de acessos aos múltiplos tipos de hosts de acordo com seus tipos;

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Configurações de Firewall que permitam os acessos aos hosts conforme suas características especificas;

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Para hosts Linux é necessário que o host possua o dmidecode ou lshw instalados.

Diferente do citado anteriormente em relação ao domínio onde múltiplos PHDs podem ser responsáveis pelo discover de um domínio, em relação a uma rede somente 1 PHD pode ser configurado. Esta configuração é realizada diretamente no Priax.

Quando via scan de rede, como em uma rede podem existir diversos tipos de hosts, como por exemplo (mas não se limitando) switches, routers, servidores/estacoes de trabalho Windows, servidores Linux, storages etc e sabendo que cada um possui uma forma acesso diferente, para que sejam detectados nas camadas de firewall é necessário garantir os acessos de acordo com a configuração do ambiente e suas características.

Este tópico é relativamente complexo de ser especificado exatamente o que deve ser liberado nas camadas de rede pois cada ambiente pode ter sua configuração ajustada. Um exemplo disso é que de forma padrão servidores Linux respondem via SSH na porta TCP 22, porém isso é configurável então determinar que deve ser liberada porta X ou Y depende na verdade de como a infra é configurada.

Determinados tipos de dispositivos possuem requisitos específicos de acesso como por exemplo acesso a APIs de gerenciamento e estes casos também devem ser considerados nas liberações e cadastramento de credenciais.

Abaixo segue tabela que descreve as portas padrões de cada tipo de host que pode ser detectado.

<table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" id="bkmrk-origem-destino-proto" style="border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt;"><tbody><tr style="mso-yfti-irow: 0; mso-yfti-firstrow: yes;"><td style="width: 89.45pt; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="119">**Origem**

</td><td style="width: 141.55pt; border: solid windowtext 1.0pt; border-left: none; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="189">**Destino**

</td><td style="width: 187.25pt; border: solid windowtext 1.0pt; border-left: none; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="250">**Protocolos/Portas utilizadas**

</td></tr><tr style="mso-yfti-irow: 1;"><td style="width: 89.45pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="119">Servidor do PHD

</td><td style="width: 141.55pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="189">Servidores/estacoes Windows

</td><td style="width: 187.25pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="250">WMI; Mais informações no link abaixo

</td></tr><tr style="mso-yfti-irow: 2;"><td style="width: 89.45pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="119">Servidor do PHD

</td><td style="width: 141.55pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="189">Servidores Linux

</td><td style="width: 187.25pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="250">SSH; TCP 22

</td></tr><tr style="mso-yfti-irow: 3;"><td style="width: 89.45pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="119">Servidor do PHD

</td><td style="width: 141.55pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="189">Switches/Routers etc

</td><td style="width: 187.25pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="250">SNMP v1 ou v2; UDP 161

</td></tr><tr style="mso-yfti-irow: 4; mso-yfti-lastrow: yes;"><td style="width: 89.45pt; border: solid windowtext 1.0pt; border-top: none; mso-border-top-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="119">Servidor do PHD

</td><td style="width: 141.55pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="189">Servidores VmWare

</td><td style="width: 187.25pt; border-top: none; border-left: none; border-bottom: solid windowtext 1.0pt; border-right: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt;" valign="top" width="250">HTTP; TCP 80 e TCP 443

</td></tr></tbody></table>

Informações sobre o protocolo WMI podem ser acessadas em [https://learn.microsoft.com/en-us/windows/win32/wmisdk/connecting-to-wmi-on-a-remote-computer](https://learn.microsoft.com/en-us/windows/win32/wmisdk/connecting-to-wmi-on-a-remote-computer)

O protocolo WMI faz uso de portas dinâmicas para viabilizar o acesso conforme pode ser consultado na documentação acima e diferentes soluções de firewall implementam este tipo de regra de forma diferente. Para maiores esclarecimentos consultar a documentação de seu firewall.

Em relação as permissões necessárias para que o discover de diferentes hosts possa acontecer adequadamente temos:

## <a name="_Ref152579493"></a><a name="_Toc199505150"></a><span style="mso-bookmark: _Ref152579493;">**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.2.2.1. </span></span>****Permissões usuários Windows**</span>

Em relação a hosts Windows, é necessário que o usuario seja membro do grupo local dos hosts Administrators/Power Users;

## <a name="_Ref152579864"></a><a name="_Toc199505151"></a><span style="mso-bookmark: _Ref152579864;">**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.2.2.2. </span></span>****Permissões usuários Linux**</span>

Em relação a hosts Linux, o usuário não precisa ser “root” mas deve ter permissão de execução do dmidecode ou lshw.

Permissão esta pode ser concedida de diversas formas mas é importante saber que durante o processo em relação a hosts Linux não é possível interação de usuário com credenciais como acontece quando em sessão interativa (usando o putty por exemplo). Isto significa que as permissões requeridas para os processos rodarem devem ser possíveis sem que seja necessário digitar a senha novamente, de forma interativa.

Se o usuario utilizado é “root” as coletas de dados são feitas de forma direta e caso não seja, com uso do sudo.

Exemplo de configuração que pode ser aplicada é de ajustar a configuração do sudoers como o exemplo abaixo. Atenção ao usuario utilizado.

<span style="font-size: 11.0pt; font-family: 'Calibri',sans-serif; mso-ansi-language: PT-BR;">Cmnd\_Alias PRIAXPERMISSIONS= /usr/sbin/dmidecode, /usr/sbin/lshw</span>

<span style="font-size: 11.0pt; font-family: 'Calibri',sans-serif; mso-ansi-language: PT-BR;">Defaults!PRIAXPERMISSIONS !requiretty</span>

<span style="font-size: 11.0pt; font-family: 'Calibri',sans-serif; mso-ansi-language: PT-BR;">usuarioUtilizadoParaConexao ALL=(ALL) NOPASSWD: PRIAXPERMISSIONS</span>

## <a name="_Ref152580132"></a><a name="_Toc199505152"></a><span style="mso-bookmark: _Ref152580132;">**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.2.2.3. </span></span>****Permissões para comunidades SNMP**</span>

Quando em relação a acessos SNMP, as versões de protocolo suportadas são apenas v1 e v2 e a comunidade deve ter permissão de somente leitura a todas as views SNMP que o host suporta.

## <a name="_Ref152580372"></a><a name="_Toc199505153"></a><span style="mso-bookmark: _Ref152580372;">**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.2.2.4. </span></span>****Permissões em APIs**</span>

Diferentes dispositivos possuem diferentes APIs para consulta de dados e independente do caso, o usuario/token deve possibilitar o acesso de somente leitura aos recursos requeridos.

## <a name="_Toc199505154"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.2.3. </span></span>****Discover de hosts via instalação do agente**

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Agentes de discover/inventário instalado, corretamente configurado e rodando nos hosts suportados;

O Priax possui um agente específico (PIAgent) para os processos de discover e inventário que pode ser instalado em hosts Windows ou Linux.

De forma geral este agente pode ser instalado em servidores Windows com OS igual ou superior a Windows 2012;

Estações de trabalho com OS igual ou superior a Windows 8;

Servidores Linux de OS Red Hat ou baseados em Red Hat iguais ou superior a RHEL 7;

Servidores Linux de OS Debian ou baseados em Debian iguais ou superiores a Debian 8;

Sistemas operacionais não listados não são suportados e havendo necessidade pode ser avaliada a possibilidade de liberação do agente para estes. Para casos deste tipo é necessário entrar em contato com a equipe de suporte do Priax.

Mais informações sobre a instalação e configuração do PIAgent pode ser encontrada na documentação específica sobre os agentes do Priax.

Quando fazendo uso do agente o processo de coleta dos dados de discover e inventário roda de forma local no host onde o agente está instalado e os dados coletados são enviados para o host de discover conforme configuração no agente. Desta forma o processo acontece de dentro do host onde o agente está instalado sem a necessidade de liberações de acesso em nível de firewall (salvo as requeridas pelo agente) e também de cadastramento de credenciais em redes ou domínios;

## <a name="_Toc199505155"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.2.4. </span></span>****Discover de recursos Azure**

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Subscriptions Azure cadastradas no Priax;

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Acesso a API da Azure;

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Credenciais de acesso a subscription cadastrada na subscription

Quando considerando Azure o discover pode trabalhar detectado quais recursos existem em uma subscription. Este processo parte da configuração das subscriptions no Priax e os recursos resultantes deste processo são cadastrados como recursos Azure.

Do conjunto de recursos que a Azure oferece, um grande conjunto deles tem suporte no Priax e sendo necessário algum recurso ainda não endereçado, ele pode ser tratado sob demanda.

Para que seja possível acesso a API da Azure é necessária a criação e configuração de um App Registration com permissão de Read aos recursos existentes em uma subscription.

## <a name="_Toc199505156"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.2.4.1. </span></span>****Criação e configuração do App Registration para acesso a API da Azure**

Para a criação de um App Registration, no portal da Azure pesquisar pelo serviço *Microsoft Entra ID*.

Uma vez na plane de Entra ID, selecionar no lado esquerdo *App Registrations*;

Clicar em New registration para criar um novo App Registration;

Definir um nome qualquer para o App Registration e garantir que a opção *Accounts in this organizational directory Only esteja selecionada*;

Quando o App Registration for criado, tomar nota do valor da propriedade *Application (client) ID;* O valor desta propriedade será utilizado no cadastro da credencial no Priax no campo Username;

Uma vez criado o App Registration é necessário definir um Secret para ele. Para isso, na plane do App Registration, clicar no painel esquerdo em *Certificates &amp; Secrets*;

No painel central, clicar em *Client secrets* e aí em *New cliente secret*;

Definir um nome qualquer para o secret sendo criado e selecionar o período para o Expire do secret. A recomendação é de selecionar o maior tempo possível a fim de aumentar o tempo em que o secret sendo criado será valido. Quando o secret expira, é necessário a criação de um novo para que o processo de inventário continue funcionando;

Uma vez criado o secret, na tela que é exibida existe uma oportunidade única para a copia do *Value* do secret que deve ser preservado, pois ele em conjunto com o *Application (client) ID* é feito o cadastro no Priax, no campo password;

Finalizada a criação do secret para o app registration, pesquisar no portal da Azure o serviço *Subscriptions*;

Selecionar da lista de subscriptions a que se deseja conceder permissão de acesso;

Na plane de subscriptions, no painel esquerdo selecionar *Access Control (IAM);*

Clicar em *Add* e ai em *Add role assignment;*

Selecionar a role Reader no primeiro passo e clicar em *Next*;

Na sessão de *Members*, selecionar *User, group, or service principal* e clicar em *Select members;*

Na lista apresentada, selecionar o App Registration criado anteriormente com base em seu nome e clicar em *Select*;

Finalizar a adição da Role assignment a subscription clicando em *Review + assign*;

Finalizado o processo de configuração da Azure, a credencial deve ser criada na Subscription assim como a configuração dos demais aspectos de discover;

## <a name="_Toc199505157"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.2.5. </span></span>****Discover de recursos existentes uma AWS Account**

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Contas AWS cadastradas no Priax;

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Acesso a API da AWS;

<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>Credenciais de acesso as contas cadastradas nas contas

Quando considerando AWS o discover pode trabalhar detectado quais recursos existem em uma conta. Este processo parte da configuração das contas no Priax e os recursos resultantes deste processo são cadastrados como recursos AWS.

Do conjunto de recursos que a AWS oferece, um grande conjunto deles tem suporte no Priax e sendo necessário algum recurso ainda não endereçado, ele pode ser tratado sob demanda.

Para que seja possível acesso a API da AWS é necessária a criação e configuração de um IAM User.

## <a name="_Toc199505158"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.2.5.1. </span></span>****Criação e configuração do IAM User para acesso a API da AWS**

Para a criação de um IAM User, no portal da AWS pesquisar por IAM.

Uma vez na IAM Console, no painel de Access Management selecionar Users;

Clicar em Create User;

Definir um username qualquer e clicar em Next;

Na configuração de permissões, manter a configuração padrão e clicar em Next;

Finalizar a criação do usuario clicando em Create User;

Finalizada a criação do usuario, clicar na sessão Users do painel Access Management;

Selecionar o usuario criado e então em Add Permissions, selecionar Add Permissions;

Selecionar Attach policies directly;

Pesquisar na lista de Permission Policies a policy ReadOnlyAccess. Pode ser necessário navegar nas diversas paginas que exibem as policies e a ReadOnlyAccess normalmente se encontra na página 9;

Selecionar o checkbox e clicar em Next;

Revisar a configuração realizada e aplicar ela clicando em Add Permissions;

Ainda nas configurações do usuario selecionar Security Credentials;

Criar uma nova Access Key;

Na seleção do Use case da Access Key selecionar Command line interface (CLI) e clicar em Next;

Se necessário, adicionar uma Tag e finalizar a criação da Access Key clicando em Create access key;

Na sessão de Retrieve Access Key tomar nota do valor das propriedades *Access Key* e *Secret access key*; O valor de *Secret access key* somente pode ser visto no momento da criação, então se não for preservado neste momento, ele não poderá mais ser recuperado.

O valor da propriedade *Access Key* será utilizado no cadastro da credencial no Priax no campo Username;

O valor da propriedade *Secret access key* será utilizado no cadastro da credencial no Priax no campo Password;

Finalizar o processo clicando em Done;

Finalizado o processo de configuração da AWS, a credencial deve ser criada na Account assim como a configuração dos demais aspectos de discover;

## <a name="_Ref152593102"></a><a name="_Toc199505159"></a><span style="mso-bookmark: _Ref152593102;">**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.3.<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****Tipos de inventário**</span>

Assim como existem diferentes tipos de discover, existem também diferentes tipos de inventário onde cada um deles tem também seus requisitos conforme segue.

## <a name="_Toc199505160"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.3.1. </span></span>****Inventário hosts Windows**

O inventário de hosts Windows pode ser executado partindo do servidor de discover ou também ser realizado pelo PIAgent.

Quando rodando partindo do servidor de discover, os requisitos são os mesmos descritos na sessão 4.2.1 **Discover de domínio Active Directory** na página <span style="mso-no-proof: yes;">6</span> e 4.2.2.1 **Permissões usuários Windows** na página <span style="mso-no-proof: yes;">8</span>.

Quando rodando via o PIAgent os requisitos podem ser consultados no manual específico sobre os agentes do Priax.

## <a name="_Toc199505161"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.3.2. </span></span>****Inventário hosts Linux**

O inventário de hosts Linux também pode ser executado partindo do servidor de discover ou também ser realizado pelo PIAgent.

Quando partindo do servidor de discover, os requisitos são os mesmos descritos em 4.2.2 **Discover de hosts via scan de rede** na página <span style="mso-no-proof: yes;">7</span> e 4.2.2.2 **Permissões usuários Linux** na página <span style="mso-no-proof: yes;">8</span>.

Quando rodando via o PIAgent os requisitos podem ser consultados no manual específico sobre os agentes do Priax.

## <a name="_Toc199505162"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.3.3. </span></span>****Inventário de hosts via SNMP**

O inventário de dispositivos que é feito via SNMP é realizado apenas partindo do servidor de PHD e tem os mesmos requisitos descritos para o discover na sessão 4.2.2 **Discover de hosts via scan de rede** na página <span style="mso-no-proof: yes;">7</span> e 4.2.2.3 **Permissões para comunidades SNMP** na página <span style="mso-no-proof: yes;">9</span>.

## <a name="_Toc199505163"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.3.4. </span></span>****Inventário de dispositivos via API**

Em relação a dispositivos que possuem APIs especifica, o inventário também roda apenas partindo do servidor de discover e tem os mesmos requisitos descritos em 4.2.2 **Discover de hosts via scan de rede** na página <span style="mso-no-proof: yes;">7</span> e 4.2.2.4 **Permissões em APIs** na página <span style="mso-no-proof: yes;">9</span>.

## <a name="_Toc199505164"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.3.5. </span></span>****Inventário do Active Directory**

O inventário do Active Directory é iniciado em apenas 1 servidor de PHD e os requisitos são os mesmos descritos em 4.2.1 **Discover de domínio Active Directory** na página <span style="mso-no-proof: yes;">6</span>.

## <a name="_Toc199505165"></a>**<span style="mso-fareast-font-family: 'Calibri Light'; mso-fareast-theme-font: major-latin; mso-bidi-font-family: 'Calibri Light'; mso-bidi-theme-font: major-latin;"><span style="mso-list: Ignore;">4.3.6. </span></span>****Inventário Windows Failover Cluster**

O inventário de clusters Windows é iniciado em apenas 1 servidor de PHD e os requisitos são os mesmos descritos em 4.2.1 **Discover de domínio Active Directory** na página <span style="mso-no-proof: yes;">6</span>