Instalando Aplicações Remotas com PSEXEC




//Solução gerada a partir de um problema específico ocorrido no mesmo período em que Mário estava em visita a Araçuaí e se propôs a nos ajudar a encontrar possíveis soluções para tal 

//


=>

Quando eu trabalhava com redes windows, que são as mais comuns (infelizmente) em ambientes corporativos, tive algumas situações interessantes e outras bem incômodas.


Mesmo o ambiente tendo um AD (o famigerado Active Directory da MS) muitas vezes pode não ser possível (por N razões e motivos diversos) trabalhar com as GPOs para gerenciar alguns pormenores e com isso usamos técnicas diversas.


Uma delas é instalar aplicações em rede em N máquinas simultaneamente, ou em lote.


Existem diversas ferramentas pagas e não pagas para esta tarefa.


Nos testes eu utilizei uma ferramenta do pacote PSTOOLS da Winternals/Sysinternals (uma subisidiária da Miscrosoft) o PSEXEC. (https://docs.microsoft.com/en-us/sysinternals/downloads/pstools)


Este aplicativo do pacote/suite PSTOOLS executa processos remotamente e com isso poderemos instalar e executar aplicativos em estações de trabalho da rede.


Nos meus testes encontrei alguns contratempos, sendo necessário utilizar outros métodos para contornar. Mas penso que uma leitura mais detalhada da documentação e demais sites, possa resolver. No meu caso funcionou como eu precisava, então mantive meu método.


Procedimentos que executei


Baixei o psexec.exe do seguinte link: PSTOOLS


Descompactei num diretório e copiei somente o psexec.exe para o diretório c:\windows\system32 para ser chamado de qualquer local pelo CMD (prompt do DOS).


Sim sim. Terá que utilizar o DOS.


 


Obs 0: Quem tiver “medo do escuro” deverá perder esse medo ou então ficará limitado demais. Mas isso é uma conversa para um outro momento. Venha para o Lado Negro da Força!


 


Baixei o Notepad++ aqui.


 


Copiei o arquivo para o diretório C:\teste\ e mudei o nome para npp.exe, simplificando a digitação.


Este é o diretório que deve estar compartilhado com todas as permissões de acesso possíveis.


Na máquina em que será "disparado" o comando, deve ser feito com o usuário Administrador ou outro com privilégios de Admin logado.


 


Ao invés de utilizar um Windows Server, utilizei um Windows 10 estação de trabalho com o usuário Administrador para poder fazer todos os procedimentos. Isso facilita o processo e não interfere no ambiente de rede nem nos possíveis Servidores Windows que possa ter na rede.


 


Compartilhe o diretório e de preferência deixe o mesmo com permissões totais de acesso.

 


Exemplo:

C:\teste>psexec ip-destino -c "\\ip-origem\pasta\arquivo.exe” cmd /S


Para uma máquina somente:


"C:\teste>psexec \\172.16.1.2 -c "\\172.16.1.1\teste\npp.exe" cmd /S"


Para N máquinas utilizando um arquivo lista com os Ips destino:


C:\teste>psexec @lista-carrocas.txt -c "\\172.16.1.1\teste\npp.exe" cmd /S


O parâmetro -c copia, instala e remove o instalador

O comando cmd é o prompt de comando que vai chamar o instalador (npp.exe)

O pârâmetro /S faz o instalador do Notepad++ executar de forma "silenciosa" não dando nenhum alerta ou aviso para o usuário logado, não interferindo e/ou interagindo com o usuário.


Nos testes as duas máquinas (origem e destino) possuem o mesmo usuário Administrador local com a mesma senha.

Existe a limitação de passar usuário e senha junto ao comando.

Diversos modos de execução e todos retornaram com erro de logon ou autenticação.

Com isso, os comandos funcionam quando as "máquinas destino" possuem o mesmo usuário local Administrador/Senha.


Caso tenha mais de uma máquina destino, pode-se adicionar uma lista de máquinas num arquivo texto e fazer o apontamento.


Nos testes criei um arquivo com o nome lista-carrocas.txt.

Inclui dois IPs de destino. Destalhe: é somente adicionar os IPs, um por linha.


Lembrando que nos testes funcionou sem problemas.


Mas cada ambiente pode responder de forma diferente com possíveis erros diversos.


Nestes casos é interessante pesquisar a documentação e sites especializados, que pode ajudar e muito.


 


Fiz um arquivo batch e dei o nome de joga-lixo.bat (mas pode dar o nome que preferir). Coloque no diretório onde está o arquivo npp.exe pelo gerenciador de arquivo, execute o bat. O conteúdo do arquivo ficou da seguinte forma:


 


rem Copia e inicia instalador dos aplicativos remotamente em rede ruwindows


rem Nome do Arquivo: Joga Lixo


rem Arquivo: joga-lixo.bat


rem Autor: Mario Medeiros


rem Data: 2022-05-25 - 27


rem Versao: 0.2


 


psexec @lista-carrocas.txt -c "\\172.16.1.1\teste\npp.exe" cmd /S


 


pause


 


Mario Medeiros

Versão: 0.2.0

Araçuaí | 2022-05-27 

Link para o artigo: http://www.mariomedeiros.eti.br/artigos/


Comentários

Postar um comentário

Sinta-se à vontade para contribuir com sua opinião

Postagens mais visitadas