Obtendo, de forma remota, a lista dos softwares instalados nos computadores – PowerShell

Hoje em dia existem várias ferramentas para obter os softwares instalados em computadores. E essa variedade de softwares que existem, vem da importância cada vez maior de termos relatórios dos programas instalados nas nossas estações, mantendo assim um documento atualizado para várias finalidades que podem surgir. É por isso que neste artigo eu ensino como obter, de forma remota, os softwares instalados nas estações do domínio. Usarei como exemplo as estações de uma unidade organizacional do domínio, que no meu exemplo será a OU-TI, do domínio diegogouveia.com.br. 

Obtendo os softwares instalados de forma remota de uma OU.

Para obter os softwares instalados de forma remota de uma OU, faça:

1.  Logue no Controlador de Domínio com um usuário administrador.

2.  Execute o console do Windows PowerShell como administrador.

3. No console digite: (Get-ADComputer -Filter * -Searchbase “acompanhado do nome distinto da OU que contém os computadores remotos que serão listados os softwares instalados”).name, conforme o exemplo da figura abaixo, que mostra que serão obtidos os nomes dos computadores da OU=TI do domínio diegogouveia.com.br.

6

Obtendo o atributo name dos computadores da OU=TI do domínio diegogouveia.com.br.

Não sabe como obter o nome distinto de uma OU?

No console digite: dsquery ou e dê um Enter no teclado. Serão carregados os nomes distintos de cada uma das unidades organizacionais do seu domínio, conforme ilustra a figura abaixo, na qual demonstra os nomes distintos das OUs do domínio diegogouveia.com.br. 

5

Obtendo o distinguished name das OUs.


4. Com o nome distinto da OU, complete o comando: | Out-File C:\RelatorioComputadoresRemotos.txt, conforme demonstra a figura abaixo, dê um enter no teclado.

Será criado no diretório C:\ do computador local um relatório com o nome RelatorioComputadoresRemotos, no qual este conterá os nomes dos computadores que serão listados os softwares instalados. Confirme os nomes que estão no relatório e vá para o passo 5.

6 - Copia - Copia

Criando um relatório .TXT dos computadores que serão listados os softwares remotos.

Obs: Vale lembrar que os nomes dos computadores que serão gravados no relatório criado no diretório C:\ do computador local, são os mesmos nomes dos computadores que estão dentro do nome distinto (da OU) no qual digitou no passo 3.

5. Agora digite: cls e dê um enter no teclado. Será limpado a tela do console do Windows PowerShell.

6. Com a tela limpa, digite: Get-CimInstance -ComputerName (Get-Content C:\Temp\Computer.txt) -ClassName win32_product -ErrorAction SilentlyContinue| Select-Object PSComputerName, Name, PackageName, InstallDate | Out-GridView, conforme o exemplo da figura abaixo.

7

Obtendo os programas instalados de forma remota, pelo PowerShell.

6. Dê um enter no teclado. Será carregado uma janela contendo uma tabela interativa com o nome de cada um dos computadores remotos acompanhado dos nomes do softwares instalados, data de instalação e o pacote instalador, conforme mostra a figura abaixo. 

8

Visualizando os softwares instalados nas estações remotas da OU=TI.

Você pode está se perguntando o motivo de está aparecendo somente o nome SERVERDC1 no relatório acima. Isso foi porque o meu ambiente é pequeno, contendo apenas dois hosts, um servidor e um estação cliente. Neste caso a estação cliente estava desligada. Contudo, em ambientes com mais hosts, serão listados todos os computadores da OU com os nomes dos programas instalados e as outras informações, conforme demonstrado acima. 

Uma observação importante para funcionar o procedimento acima.

Verifique se o serviço WinRM esteja ativado nos computadores remotos. Para habilitá-lo via GPO, só basta seguir o procedimento abaixo:

http://www.mustbegeek.com/how-to-enable-winrm-via-group-policy/

https://support.auvik.com/hc/en-us/articles/204424994-How-to-enable-WinRM-with-domain-controller-Group-Policy-for-WMI-monitoring

Anúncios
The following two tabs change content below.
Diego é graduado em Sistemas, MTAC (Multi-Plataform Tecnical Audience Contributor) e possui diversos cursos de qualificações nas áreas de Tecnologia da Informação. É autor também dos livros: Tudo Sobre GPOs no Windows Server e Administrando o Active Directory com o PowerShell.

Deixe uma resposta