Server 2012 GPO: Script do PowerShell na inicialização do computador não está em execução

1

Eu tenho algumas instâncias do Server 2012 no Amazon EC2 e estou no processo de configurar os GPOs. Todas as configurações dos GPOs estão sendo aplicadas corretamente, mas nenhum dos scripts do PowerShell especificados na inicialização do computador está sendo executado. Os scripts estão em um compartilhamento UNC que possui Usuários Autenticados aplicados a ele com permissões totais. Estou assumindo que provavelmente tem algo a ver com a Política de Execução, mas não tenho certeza de como ignorá-la automaticamente. Eu poderia ir em cada instância e ignorar a Política de Execução, mas obviamente isso não é uma boa ideia, além de conectar computadores Windows 7 que executarão os mesmos scripts.

Como posso fazer com que os scripts sejam realmente executados? As pesquisas do Google não renderam muito ...

Permissões atuais

Share - Usuários autenticados (completo)

NTFS - todos (completo); PROPRIETÁRIO CRIADOR (Especial); SISTEMA (completo)

    
por Gup3rSuR4c 27.06.2013 / 04:44

7 respostas

0

Eu estou desistindo ... Eu não posso ser tão idiota em fazer isso funcionar. A última coisa que tentei foi chamar os scripts do PowerShell de um arquivo em lote. Mesmo isso parece ser um sucesso ou uma falta (principalmente falta) ...

Eu terminei. Tipo, eu disse, ou eu sou um idiota colossal ou a Microsoft não está implementando sua própria funcionalidade corretamente ...

    
por 30.06.2013 / 06:06
2

Resposta tardia, mas seu problema provavelmente é o padrão de 2012 para atrasar os scripts de logon. Tente uma configuração mais baixa em:

Computer Configuration\Policies\Administrative Templates\System\Group Policy\Configure Logon Script Delay

    
por 07.01.2015 / 03:01
1

Se for uma política de computador, os usuários autenticados não são o que você deseja. Você precisa fornecer Domain Computers de acesso de leitura.

    
por 27.06.2013 / 05:43
1

Acho que os scripts do PowerShell executados remotamente a partir de um compartilhamento do Windows são considerados parte da Internet, portanto, você tem algumas opções:

  • A Política de Execução precisa ser Assinatura Remota e você precisa assinar os scripts.
  • A política de execução precisa ser irrestrita.
  • Copie o script localmente, ponto no qual você poderá executá-lo se sua política de execução for assinada remotamente ou irrestrita.
  • Ao chamar o powershell.exe, use o parâmetro -ExecutionPolicy com um valor de Unrestricted
por 30.06.2013 / 06:38
0

Você poderia armazenar os arquivos com os arquivos GPO. quando você vai colocar o script, você deve ver um botão "show files". Clique para abrir a pasta na qual os scripts devem ser colocados. Uma vez nessa pasta, você pode simplesmente clicar em "Adicionar" e escolher o arquivo.

Caso contrário, você pode adicionar Domain Computers com acesso de leitura, pois os computadores serão os que estão se autenticando em relação ao compartilhamento na inicialização, não aos usuários.

    
por 27.06.2013 / 05:39
0

Esse é um tópico antigo, mas a resposta mais provável é que há espaços no nome do arquivo e / ou no caminho do script do PowerShell nas Propriedades de Inicialização do GPO. Para corrigir, basta colocar aspas duplas em torno do caminho completo do Nome do Script do PowerShell que não está sendo executado nas Propriedades de Inicialização do GPO.

Iniciar "Nome do Script" antes: \\ SERVERNAME \ Scripts \ Instalar KBs \ Instalar KBs.ps1 Isso não mostra a última execução no GPResults. O EventLog não é de ajuda, mostra ErrorCode 0 ScriptElaspedTimeInSeconds 0. No entanto, no registro em HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Diretiva de grupo \ Estado \ Machine \ Scripts \ Startup \ # \ #, onde # é números, mostra o ErrorCode 0xfffd0000 real (4294770688). Isso ocorre porque o script não foi encontrado - devido ao (s) espaço (s).

Iniciar "Nome do script" depois: "\\ SERVERNAME \ Scripts \ Instalar KBs \ Instalar KBs.ps1" Agora, no GPResults, a última execução do script mostra que ele foi executado. O registro, na chave acima, mostra ErrorCode 0x0, o que é normal.

Esta solução resolvida e fixa é testada no Windows 7 Enterprise. Não precisei alterar as permissões, mas USUÁRIOS AUTENTICADOS com permissão de Leitura estavam presentes, o que permite que o Objeto de Computador leia o script do PowerShell.

    
por 03.01.2017 / 18:54
0

Eu encontrei o mesmo problema. Quando tentei executar o script a partir da pasta \ domain.local \ netlogon, ocorreu um erro que a política de execução não permite executar scripts remotos. Eu corri get-executionpolicy e está definido como "Restricted". Eu corri set-executionpolicy remotesigned , mas isso não ajudou, porque não é assinado digitalmente.

Eu corri get-help about_signing e ele me diz que eu tenho que assinar o script com um certificado digital de uma CA ou certificado auto-assinado. Muito trabalho apenas para escrever um script de logon do powershell do Windows 7. No entanto, ele é executado sem problemas em sistemas com uma versão superior do Powershell (Server 2012 R2, Windows 7 com PS5). Agora eu tenho que descobrir como instalar o WMF5.0 em cada estação de trabalho sem o WSUS ou sugá-lo e assinar o script estúpido.

Obrigado Bill Gates ...

    
por 06.04.2017 / 23:10