Otimização do Windows com PowerShell: Segurança, Privacidade e Desempenho

1 de abril de 2025

Windows 10/11 Otimizado:

Segurança, Privacidade e Desempenho com PowerShell

Se você deseja fortalecer a segurança, proteger sua privacidade e maximizar o desempenho do Windows, este guia traz um script avançado, desenvolvido com as melhores práticas do mercado em TI, cibersegurança e administração de sistemas.


Por que usar este script?

  • 🔒 Segurança Aprimorada: Bloqueio de malware, desativação de protocolos vulneráveis e configurações avançadas de firewall.
  • 🕵️ Privacidade Protegida: Desativação de telemetria, rastreamento e restrição de acesso a câmera e microfone.
  • Desempenho Otimizado: Melhoria no uso de memória, desativação de serviços desnecessários e limpeza automatizada.
  • 📜 Simples e Prático: Execute como administrador e siga as instruções.


Para quem é este guia?

Administradores de Sistemas que precisam padronizar configurações seguras
Usuários Avançados focados em privacidade e performance
Profissionais de TI que desejam automatizar otimizações no Windows


Como funciona?

O script aplica ajustes baseados em:

  • CIS Benchmarks (padrões globais de segurança)
  • Diretrizes oficiais da Microsoft (recomendações de segurança)
  • Técnicas comprovadas de otimização de desempenho

📥 Quer transformar seu Windows? Baixe, execute e sinta a diferença! 🚀

🔗 Confira abaixo as instruções detalhadas e opções de personalização.


<#

.SYNOPSIS

  Script avançado de otimização para Windows - Segurança, Privacidade e Desempenho

.DESCRIPTION

  Aplica configurações recomendadas por especialistas para maximizar segurança, privacidade e desempenho

.NOTES

  Versão: 2.3

  Autor: [becapiando]

  Data: $(Get-Date -Format "2025-04-03")

  Referências: 

  - CIS Benchmarks

  - Microsoft Security Baselines

  - NSA Cybersecurity Configurations

#>


# Requer execução como administrador

if (-NOT ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")) {

  Write-Warning "Este script requer privilégios de administrador. Por favor, execute como administrador."

  break

}


# Configuração temporária de política de execução

$originalExecutionPolicy = Get-ExecutionPolicy

Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process -Force


# Configurações de logging avançado

$logPath = "C:\Windows\Logs\AdvancedOptimization_$(Get-Date -Format 'yyyyMMdd-HHmmss').log"

function Write-Log {

  param ([string]$message, [string]$level = "INFO")

  $timestamp = Get-Date -Format "yyyy-MM-dd HH:mm:ss"

  $logEntry = "[$timestamp][$level] $message"

  Write-Output $logEntry

  $logEntry   Out-File -FilePath $logPath -Append -Encoding UTF8

}


Write-Log "Iniciando otimização avançada de segurança, privacidade e desempenho..."


## 1. Configurações de Segurança Reforçada ##

Write-Log "Aplicando configurações de segurança reforçada..."


# 1.1. Proteção contra malware e exploits

Set-MpPreference -AttackSurfaceReductionRules_Ids "BE9BA2D9-53EA-4CDC-84E5-9B1EEEE46550" -AttackSurfaceReductionRules_Actions Enabled

Set-MpPreference -EnableControlledFolderAccess Enabled

Set-MpPreference -PUAProtection Enabled

Set-MpPreference -CloudBlockLevel High

Set-MpPreference -CloudExtendedTimeout 50


# 1.2. Desativar protocolos inseguros

Disable-WindowsOptionalFeature -Online -FeatureName "SMB1Protocol" -NoRestart | Out-Null

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server" -Name "Enabled" -Value 0 -Type DWord

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server" -Name "Enabled" -Value 0 -Type DWord

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server" -Name "Enabled" -Value 0 -Type DWord

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server" -Name "Enabled" -Value 0 -Type DWord


# 1.3. Configurações de conta e autenticação

Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" -Name "EnableLUA" -Value 1 -Type DWord

Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" -Name "ConsentPromptBehaviorAdmin" -Value 2 -Type DWord

Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" -Name "ConsentPromptBehaviorUser" -Value 0 -Type DWord

Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" -Name "EnableInstallerDetection" -Value 1 -Type DWord

Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" -Name "ValidateAdminCodeSignatures" -Value 0 -Type DWord

Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" -Name "FilterAdministratorToken" -Value 1 -Type DWord


# 1.4. Configurações de rede segura

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\NetBT\Parameters" -Name "NodeType" -Value 2 -Type DWord

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\NetBT\Parameters" -Name "NoNameReleaseOnDemand" -Value 1 -Type DWord

Set-ItemProperty -Path "HKLM:\Software\Policies\Microsoft\Windows NT\DNSClient" -Name "EnableMulticast" -Value 0 -Type DWord


# 1.5. Auditoria avançada

auditpol /set /category:"System" /success:enable /failure:enable

auditpol /set /category:"Logon/Logoff" /success:enable /failure:enable

auditpol /set /category:"Object Access" /success:enable /failure:enable

auditpol /set /category:"Privilege Use" /success:enable /failure:enable

auditpol /set /category:"Detailed Tracking" /success:enable /failure:enable

auditpol /set /category:"Policy Change" /success:enable /failure:enable

auditpol /set /category:"Account Management" /success:enable /failure:enable


## 2. Configurações de Privacidade ##

Write-Log "Aplicando configurações de privacidade..."


# 2.1. Desativar telemetria e coleta de dados

Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection" -Name "AllowTelemetry" -Value 0 -Type DWord

Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection" -Name "AllowTelemetry" -Value 0 -Type DWord

Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AppCompat" -Name "AITEnable" -Value 0 -Type DWord

Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AppCompat" -Name "DisableInventory" -Value 1 -Type DWord


# 2.2. Limitar acesso a dados do usuário

Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location" -Name "Value" -Value "Deny" -Type String

Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\webcam" -Name "Value" -Value "Deny" -Type String

Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\microphone" -Name "Value" -Value "Deny" -Type String


# 2.3. Desativar anúncios e rastreamento

Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Name "DisableWindowsConsumerFeatures" -Value 1 -Type DWord

Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo" -Name "DisabledByGroupPolicy" -Value 1 -Type DWord

Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "Start_TrackProgs" -Value 0 -Type DWord


# 2.4. Limpar histórico e dados temporários

Remove-Item -Path "$env:localappdata\Microsoft\Windows\History\*" -Recurse -Force -ErrorAction SilentlyContinue

Remove-Item -Path "$env:localappdata\Microsoft\Windows\Temporary Internet Files\*" -Recurse -Force -ErrorAction SilentlyContinue

Remove-Item -Path "$env:localappdata\Google\Chrome\User Data\Default\Cache\*" -Recurse -Force -ErrorAction SilentlyContinue

Remove-Item -Path "$env:localappdata\Microsoft\Windows\Caches\*" -Recurse -Force -ErrorAction SilentlyContinue


## 3. Configurações de Desempenho Otimizado ##

Write-Log "Aplicando configurações de desempenho..."


# 3.1. Configurações de energia para desempenho

powercfg -setactive 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c # Alto desempenho

powercfg -h off # Desativar hibernação

powercfg /change standby-timeout-ac 0

powercfg /change disk-timeout-ac 0


# 3.2. Otimizações de sistema de arquivos

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "NtfsDisableLastAccessUpdate" -Value 1 -Type DWord

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" -Name "DisablePagingExecutive" -Value 1 -Type DWord

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" -Name "LargeSystemCache" -Value 1 -Type DWord

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" -Name "IoPageLockLimit" -Value 4194304 -Type DWord


# 3.3. Desativar serviços desnecessários

$servicesToDisable = @(

  "DiagTrack",      # Telemetria

  "dmwappushservice",  # Push de mensagens

  "lfsvc",        # Geolocalização

  "MapsBroker",     # Atualização de mapas

  "NetTcpPortSharing",  # Compartilhamento de porta TCP

  "RemoteRegistry",   # Registro remoto

  "RetailDemo",     # Modo demonstração

  "XboxGipSvc",     # Serviços Xbox

  "XblAuthManager",

  "XblGameSave",

  "XboxNetApiSvc"

)


foreach ($service in $servicesToDisable) {

  if (Get-Service -Name $service -ErrorAction SilentlyContinue) {

    Stop-Service -Name $service -Force -ErrorAction SilentlyContinue

    Set-Service -Name $service -StartupType Disabled -ErrorAction SilentlyContinue

    Write-Log "Serviço $service desativado"

  }

}


# 3.4. Otimizar tarefas agendadas

$tasksToDisable = @(

  "\Microsoft\Windows\Application Experience\Microsoft Compatibility Appraiser",

  "\Microsoft\Windows\Application Experience\ProgramDataUpdater",

  "\Microsoft\Windows\Customer Experience Improvement Program\*",

  "\Microsoft\Windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector",

  "\Microsoft\Windows\Windows Error Reporting\QueueReporting"

)


foreach ($task in $tasksToDisable) {

  Get-ScheduledTask -TaskPath $task -ErrorAction SilentlyContinue   Disable-ScheduledTask   Out-Null

  Write-Log "Tarefa agendada $task desativada"

}


# 3.5. Limpeza e manutenção do sistema

Write-Log "Executando tarefas de manutenção..."

CleanMgr /sagerun:1 | Out-Null

Dism /Online /Cleanup-Image /StartComponentCleanup /ResetBase | Out-Null


# Verificar integridade do sistema

sfc /scannow


## 4. Configurações Adicionais de Segurança ##

Write-Log "Aplicando configurações adicionais de segurança..."


# 4.1. Configurações de RDP seguras

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server" -Name "fDenyTSConnections" -Value 1 -Type DWord

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name "UserAuthentication" -Value 1 -Type DWord


# 4.2. Configurações de firewall avançadas

Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True

Set-NetFirewallProfile -Profile Domain,Public,Private -DefaultInboundAction Block

Set-NetFirewallProfile -Profile Domain,Public,Private -DefaultOutboundAction Allow

Set-NetFirewallProfile -Profile Domain,Public,Private -AllowInboundRules "BlockInboundAlways"

Set-NetFirewallProfile -Profile Domain,Public,Private -AllowLocalFirewallRules "False"

Set-NetFirewallProfile -Profile Domain,Public,Private -AllowLocalIPsecRules "False"

Set-NetFirewallProfile -Profile Domain,Public,Private -LogFileName "%SystemRoot%\System32\LogFiles\Firewall\pfirewall.log"

Set-NetFirewallProfile -Profile Domain,Public,Private -LogMaxSizeKilobytes 32767

Set-NetFirewallProfile -Profile Domain,Public,Private -LogAllowed True

Set-NetFirewallProfile -Profile Domain,Public,Private -LogBlocked True


## Finalização ##

Write-Log "Otimização avançada concluída com sucesso!"


# Restaurar política de execução original

Set-ExecutionPolicy -ExecutionPolicy $originalExecutionPolicy -Scope Process -Force


# Resultado final

Write-Host "`nOtimização completa realizada com sucesso!" -ForegroundColor Green

Write-Host "Log detalhado salvo em: $logPath" -ForegroundColor Yellow

Write-Host "`nRecomendações adicionais:" -ForegroundColor Cyan

Write-Host "1. Reinicie o sistema para aplicar todas as configurações"

Write-Host "2. Verifique se seus aplicativos essenciais funcionam corretamente"

Write-Host "3. Considere habilitar o BitLocker para criptografia de disco completo"

Write-Host "4. Implemente autenticação multifator para contas administrativas"


Como Usar:

  1. Salve o arquivo como OptimizacaoAvancada.ps1 .
  2. Execute como Administrador.
  3. Revise o log gerado ao final da execução.
  4. Reinicie o sistema para aplicar todas as configurações.


Recursos e Melhorias Implementadas:

1. Segurança Reforçada

  • Aplicação de regras avançadas contra malware (ASR rules).
  • Desativação de protocolos obsoletos e inseguros (SSL 2.0/3.0, TLS 1.0/1.1).
  • Endurecimento das configurações de autenticação e controle de contas.
  • Auditoria detalhada de eventos críticos para maior rastreabilidade.
  • Configuração de firewall avançada com bloqueio de conexões indesejadas.


2. Privacidade Aprimorada

  • Desativação total da telemetria e coleta de dados.
  • Restrição de acesso a câmera, microfone e localização.
  • Remoção de rastreamento, anúncios e notificações invasivas.
  • Limpeza automática de históricos e caches.


3. Desempenho Otimizado

  • Ajustes para máximo desempenho em configurações de energia.
  • Otimizações de memória e sistema de arquivos.
  • Desativação de serviços e tarefas agendadas desnecessárias.
  • Manutenção automática, incluindo limpeza de arquivos temporários.


4. Funcionalidades Adicionais

  • Geração de logs detalhados para auditoria e acompanhamento.
  • Verificação de integridade do sistema (SFC / DISM).
  • Recomendações pós-execução para segurança adicional.
  • Tratamento aprimorado de erros para evitar falhas inesperadas.


Solução de Problemas ao Executar o Script de Otimização do Windows

Este guia aborda os principais problemas que podem surgir ao executar o script de otimização do Windows, suas causas e soluções eficazes.


🔧 Erros Comuns e Como Corrigi-los

1. Erros de Execução

Erro: "Script não executa - Política de Execução Restrita"

Causa: O PowerShell bloqueia scripts não assinados.

Solução: Execute o comando abaixo para permitir scripts remotos:


Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force

Ou execute diretamente pelo prompt de comando:


powershell.exe -ExecutionPolicy Bypass -File .\script.ps1


Erro: "Acesso negado" em algumas configurações

Causa: Falta de privilégios de administrador.

Solução: Execute o PowerShell como Administrador.


2. Problemas de Segurança

Erro: Conexões de rede bloqueadas após otimizações de firewall

Causa: Regras de firewall excessivamente restritivas.

Solução: Permitir conexões padrão com:


Set-NetFirewallProfile -Profile Domain,Public,Private -DefaultInboundAction Allow -DefaultOutboundAction Allow

Para reativar regras desativadas:


Get-NetFirewallRule | Where-Object { $_.Enabled -eq 'False' } | Enable-NetFirewallRule


Erro: Aplicativos legados pararam de funcionar

Causa: Desativação de protocolos antigos como SMB1 e TLS 1.0.

Solução: Reativá-los com:


Enable-WindowsOptionalFeature -Online -FeatureName "SMB1Protocol"

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server" -Name "Enabled" -Value 1


3. Problemas de Desempenho

Erro: Sistema ficou lento após otimizações

Causas possíveis:

  • Configuração incorreta da memória virtual.
  • Desativação de serviços essenciais.

Solução: Restaurar configurações padrões:


Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" -Name "DisablePagingExecutive" -Value 0

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" -Name "LargeSystemCache" -Value 0

Get-Service -Name "SysMain" | Set-Service -StartupType Automatic -Status Running


Erro: Alto uso de disco após desfragmentação

Causa: Desfragmentação executada em SSD (não recomendada).

Solução: Identifique o tipo de disco e desative a otimização:


Get-PhysicalDisk | Select-Object DeviceID, MediaType

Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Dfrg\BootOptimizeFunction" -Name "Enable" -Value "N"


4. Problemas de Privacidade

Erro: Cortana e outras funções do Windows não funcionam

Causa: Configurações de privacidade muito restritivas.

Solução: Restaurar permissões:


Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection" -Name "AllowTelemetry" -Value 1

Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location" -Name "Value" -Value "Allow"


5. Problemas de Hardware

Erro: Dispositivos USB não reconhecidos

Causa: O serviço Windows Update foi desativado.

Solução: Reativá-lo:


Get-Service -Name "wuauserv" | Set-Service -StartupType Manual -Status Running


🔄 Revertendo Todas as Alterações

Criar um ponto de restauração antes da otimização:


Checkpoint-Computer -Description "Antes da Otimização" -RestorePointType MODIFY_SETTINGS


Restaurar configurações para o estado anterior:


Restore-Computer -LastRestorePoint


📌 Melhores Práticas para Evitar Problemas

✔ Teste as otimizações em um ambiente separado antes de aplicá-las definitivamente.
✔ Execute partes do script separadamente para identificar possíveis falhas.
✔ Documente todas as mudanças realizadas no sistema.
✔ Monitore o desempenho após as alterações.
✔ Mantenha backups atualizados antes de qualquer modificação.


❓ Suporte Adicional

Se encontrar problemas não listados:
1️⃣ Verifique o log de otimização em
C:\Windows\Logs\AdvancedOptimization_[DATA].log .
2️⃣ Consulte os eventos do sistema no Visualizador de Eventos.
3️⃣ Para suporte técnico, informe:

  • Versão exata do Windows.
  • Trechos do log contendo erros.
  • Especificações de hardware.



Considerações finais

Algumas configurações podem afetar funcionalidades específicas do sistema.

Revise as alterações antes de executar em um ambiente de produção.

Proteja seu PC contra ransomware! Guia completo com bloqueio, monitoramento e backup automático
4 de abril de 2025
Aprenda a bloquear ataques, monitorar processos suspeitos e criar backups automáticos no Windows, tudo de forma gratuita e sem softwares extras!
Instalação automática do Windows com Unattend.xml! Configure o sistema sem intervenção.
3 de abril de 2025
Automatize a instalação do Windows com Unattend.xml! Configuração sem intervenção, fuso horário Brasília, DHCP automático e particionamento
Script Windows: Pare o WannaCry em 1 Minuto.
2 de abril de 2025
Proteja seu PC do WannaCry! Aprenda a desativar o SMBv1, bloquear a porta 445 e usar scripts PowerShell contra ransomwares. Atualizações críticas + backup seguro.
Scripts PowerShell contra ransomware: backup automático, firewall e detecção de ameaças.
2 de abril de 2025
Aprenda a criar scripts PowerShell que automatizam backups críticos, bloqueiam ransomwares, atualizam firewalls e respondem a ataques. Templates prontos para implementação imediata!
Como atualizar ou fazer downgrade da BIOS com segurança! Resolva tela preta e travamentos após updat
1 de abril de 2025
Aprenda a atualizar, fazer downgrade e recuperar sua BIOS/UEFI com segurança. Resolva tela preta, travamentos e erros de boot com nosso guia passo a passo!
 Instalando o Windows 11 sem internet? Evite erros! Confira os principais problemas e soluções!
31 de março de 2025
Descubra como instalar o Windows 11 sem internet! Resolva erros como TPM 2.0, disco não detectado e BSOD com este guia completo e atualizado.
Instalação Automatizada do Office 2007 com .BAT
28 de março de 2025
Automatize a instalação do Office 2007 com script .BAT! Guia completo com arquivo config.xml para personalização e solução de erros.
Instale o Windows 10 SEM ERROS! Guia Atualizado 2025
28 de março de 2025
Como instalar o Windows 10 via USB: particionamento, BIOS/UEFI, ativação e otimizações pós-instalação. Guia técnico 100% funcional!
Windows Ativado vs Pirata: Descubra os riscos ocultos, métodos secretos e alternativas 100% legais!
27 de março de 2025
Descubra como ativar o Windows 10/11 com segurança! Métodos testados, riscos ocultos e alternativas 100% legais. Guia completo para usuários inteligentes!
Como Resetar a BIOS com e sem Senha no PC e Notebook
26 de março de 2025
Aprenda resetar BIOS com/sem senha em PCs e notebooks! Métodos infalíveis: CMOS, jumper e backdoor. Guia passo a passo 2024 para Dell, HP, Lenovo e mais.
Mais Posts