PowerShell no Windows 11: configuração para admins

Advertisement

O PowerShell é uma ferramenta útil para administradores de TI. No Windows 11, o PowerShell pode ser personalizado para atender às suas necessidades adicionando módulos, usando perfis do PowerShell e aplicando Política de Grupo.

Advertisement

Configurar o ambiente do PowerShell

O PowerShell tem configurações internas criadas para atender às necessidades gerais dos usuários. No entanto, essa configuração é apenas básica e pode precisar ser adaptada às necessidades específicas do administrador.

Por exemplo, alguns recursos, como execução de script ou log de módulo, não estão ativos por padrão, portanto, os usuários devem ativá-los para estar em conformidade com suas políticas de segurança ou ambiente de trabalho.

Advertisement
PowerShell Key Configuration

Como alterar a configuração usando scripts de perfil do PowerShell

O script de perfil do PowerShell é um script automatizado que é executado sempre que o PowerShell é aberto. Esses scripts permitem que os usuários configurem o ambiente de trabalho automaticamente, como adicionar módulos, definir variáveis ou definir funções personalizadas.

Advertisement

O PowerShell fornece quatro tipos de arquivos de perfil para vários cenários:

1. AllUsersAllHosts

Esse perfil se aplica a todos os usuários em todos os hosts do PowerShell.

Local padrão:

C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1

2. AllUsersCurrentHost

Esse perfil se aplica a todos os usuários, mas apenas em determinados hosts (como PowerShell, VS Code ou Terminal do Windows).

Local padrão:

C:\Windows\System32\WindowsPowerShell\v1.0\Microsoft.PowerShell_profile.ps1

3. CurrentUserAllHosts

Este perfil se aplica apenas a usuários conectados, mas pode ser usado em todos os hosts.

Local padrão:

C:\Users\<Username>\Documents\WindowsPowerShell\profile.ps1

4. CurrentUserCurrentHost

Este perfil se aplica apenas a usuários que estão atualmente conectados em um host específico.

Local padrão:

C:\Users\<Username>\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

Etapas para alterar a configuração do perfil:

  1. Verifique se o arquivo de perfil já existe no local padrão. Se você ainda não tiver um, poderá criar um manualmente.
  2. Use um editor de texto, como o Bloco de Notas ou o Visual Studio Code, para editar o arquivo de perfil conforme necessário.
  3. Adicione configurações, como carregamento automático de módulos ou configurações de variáveis, dentro do arquivo.

Sintaxe simples para verificar a localização dos arquivos de perfil com $Profile

O PowerShell tem uma variável interna chamada $Profile que armazena o local de cada tipo de arquivo de perfil. Você pode usar o seguinte comando para verificar a localização do seu arquivo de perfil:

$Profile | Format-List

Os resultados mostrarão a localização completa de cada arquivo de perfil. Se o arquivo de perfil ainda não existir, você poderá criar um com o seguinte comando:

New-Item -Path $Profile.CurrentUserAllHosts -ItemType File -Force

Adicionando e gerenciando módulos do PowerShell

Um módulo do PowerShell é uma coleção de comandos (cmdlets), funções e scripts organizados em uma única unidade. Este módulo foi criado para melhorar a capacidade do PowerShell de realizar determinadas tarefas, como gerenciamento do sistema, configurações de segurança e automação de processos administrativos.

As principais funções do módulo PowerShell incluem:

  • Fornece comandos adicionais para uma variedade de necessidades especiais.
  • Simplifique o gerenciamento do sistema por meio da automação.
  • Adicionados recursos internos do PowerShell para dar suporte à integração com aplicativos ou serviços de terceiros.

Como acessar a Galeria do PowerShell para baixar módulos

A Galeria do PowerShell é um repositório online que armazena milhares de módulos criados pela Microsoft e pela comunidade. Você pode pesquisar, baixar e instalar módulos desta galeria facilmente.

Etapas para acessar a Galeria do PowerShell:

  1. Acesse o site oficial da Galeria do PowerShell em https://www.powershellgallery.com.
  2. Use o recurso de pesquisa no site para encontrar os módulos necessários.
  3. Instale o módulo diretamente por meio do PowerShell com o comando Install-Module.
Install-Module -Name ModuleName -Scope CurrentUser

Substitua ModuleName pelo nome do módulo que você deseja instalar.

Etapas para atualizar o PowerShellGet

Para aproveitar os recursos mais recentes da Galeria do PowerShell, verifique se o módulo PowerShellGet está atualizado para a versão mais recente. Aqui estão os passos:

1. Verifique a versão atual do PowerShellGet:

Get-Module -Name PowerShellGet -ListAvailable

2. Se a versão existente for antiga, atualize-a com o seguinte comando:

Install-Module -Name PowerShellGet -Force -Scope CurrentUser

3. Certifique-se de que o módulo esteja atualizado verificando a versão novamente.

Comandos básicos para pesquisar e adicionar módulos

Aqui estão alguns comandos básicos para gerenciar módulos no PowerShell:

1. Procurando o módulo na Galeria do PowerShell:

Find-Module -Name ModulName

2. Instalando o módulo:

Install-Module -Name ModulName -Scope PenggunaSaatIni

3. Visualize os módulos que já estão instalados no sistema:

Get-InstalledModule

4. Excluindo módulos:

Uninstall-Module -Name ModulName

5. Atualizando o módulo:

Update-Module -Name ModulName

Implementar Política de Grupo para PowerShell

Group Policy é um recurso importante do Windows que permite que os administradores definam configurações e políticas em computadores em uma rede baseada em Active Directory. Com a Diretiva de Grupo, você pode controlar vários aspectos do sistema operacional, incluindo PowerShell configuração, dando a você mais controle sobre segurança, registro em log e comportamento padrão.

No contexto do PowerShell, a Política de Grupo permite:

  • Aplicando políticas de segurança a scripts.
  • Gerenciamento de log de atividades do PowerShell para auditorias.
  • Fornecimento de um ambiente de trabalho uniforme em todos os computadores da organização.

Políticas configuráveis por meio da Política de Grupo para PowerShell

1. Política de Execução

Essa política especifica permissões para executar scripts do PowerShell. Você pode configurar o nível de segurança selecionando uma das seguintes políticas:

  • Restricted: Não permite a execução de scripts.
  • RemoteSigned: Os scripts de um controle remoto devem ter uma assinatura digital válida.
  • Unrestricted: Todos os scripts podem ser executados sem restrições.

Etapas para definir a política de execução na Política de Grupo:

  • Abra Group Policy Management Console (GPMC).
  • Navegue até Computer Configuration >  Administrative Templates > Windows Components > Windows PowerShell.
  • Defina a política Turn on Script Execution e selecione a política desejada.

Exemplo de um comando manual:

Se você não estiver usando Política de Grupo, poderá definir a política diretamente no PowerShell:

Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned

2. Gravação do módulo

Essa política permite o registro em log de atividades de módulos específicos usados no PowerShell. Isso é especialmente útil para auditorias de segurança ou solução de problemas.

Como definir o log do módulo na Política de Grupo:

  • Abra Windows PowerShell >  Turn on Module Logging.
  • Adicione o módulo para o qual você deseja habilitar o registro em log, como NTFSSecurity ou ActiveDirectory.

3. Registro de bloco de script

Essa política registra todos os blocos de scripts executados no PowerShell, incluindo comandos e scripts mais complexos. Esse recurso ajuda a detectar atividades suspeitas ou ataques baseados em script.

ong>Como configurar o log de blocos de script:

  • Políticas de acesso Turn on PowerShell Script Block Logging.
  • Habilite a política para registrar todas as execuções de bloco de script.

4. Transcrição

Essa política registra todas as sessões do PowerShell em arquivos de log, incluindo entradas e saídas. É muito eficaz para auditoria e depuração.

Como configurar a transcrição:

Como atualizar a ajuda local com o Update-Help

O PowerShell tem um recurso de Help Update que funciona para atualizar a documentação de ajuda dos módulos que já estão instalados. Você pode usar a Política de Grupo para configurar um repositório local como fonte de atualizações, para que não precise baixar da Internet.

Etapas manuais usando Update-Help:

1. Crie um repositório local para o arquivo de ajuda.

2. Defina o repositório local com o seguinte comando:

Save-Help -DestinationPath “C:\HelpRepo”

3. Atualize a ajuda usando repositórios locais:

Update-Help -SourcePath “C:\HelpRepo”

Recomendações para módulos e scripts usados com frequência

Para aumentar a produtividade e automatizar tarefas administrativas, aqui estão alguns módulos recomendados do PowerShell:

1. NTFSSecurity

Função: Gerencie facilmente ACLs (Access Control Lists) em arquivos e pastas.

Exemplo de comando:

Get-NTFSAccess -Path “C:\ContohFolder”

2. PSWindowsUpdate

Sua função: Gerenciar atualizações do Windows via PowerShell.

Instalação:

Install-Module -Name PSWindowsUpdate

3. ActiveDirectory

Função: Gerencie Active Directory como usuários, grupos e políticas.

Exemplo de comando:

Get-ADUser -Filter * -Properties  DisplayName

4. Pester

Função: Testar scripts e módulos do PowerShell para garantir a qualidade do código.

Instalação:

Install-Module -Name Pester

5. ImportExcel

Função: Gerencie os dados do Excel sem a necessidade de abrir o aplicativo Excel.

Exemplo de comando:

Import-Excel -Path “C:\Data.xlsx” | Select-Object  Name, Age

Últimos artigos