Como Segurar o Ambiente WSL2 no Windows: Configurações Essenciais para Sysadmins
WSL2 · Segurança · Windows 11 · Sysadmin · Microsoft Defender · GPO · Ambiente Corporativo
O WSL2 (Windows Subsystem for Linux) é uma ferramenta poderosa para sysadmins — mas num ambiente corporativo, a instalação sem configuração de segurança cria riscos reais: acesso irrestrito ao sistema de ficheiros Windows, bypass potencial de políticas de rede, e um ambiente Linux fora do alcance de algumas ferramentas de segurança. Este guia cobre as configurações essenciais para usar WSL2 em segurança em PME.
Neste artigo
- Modelo de segurança do WSL2 — o que é e o que não é isolado
- Configurar .wslconfig — limitar recursos e rede
- Controlar o acesso a ficheiros Windows
- Integração com Microsoft Defender
- Políticas de Grupo (GPO) para controlar o WSL2
- Gerir utilizadores e permissões dentro do WSL2
- Auditoria e monitorização do WSL2
Modelo de Segurança do WSL2 — o que é e o que não é isolado
| Aspecto | Isolamento | Notas |
|---|---|---|
| VM leve (Hyper-V) | ✅ Kernel Linux isolado do Windows | O WSL2 corre numa VM Hyper-V leve — o kernel Linux não tem acesso directo ao kernel Windows |
| Sistema de ficheiros Linux | ✅ Isolado em VHD | O ext4 do WSL2 fica em %LOCALAPPDATA%\Packages\…\LocalState\ext4.vhdx |
| Sistema de ficheiros Windows | ❌ Acessível via /mnt/c/ | Por defeito o WSL2 pode ler e escrever em todo o disco C: e drives mapeados |
| Rede | ⚠️ Parcialmente isolado | Modo NAT por defeito; modo Mirrored (Windows 11) partilha a rede com o host |
| Processos Windows | ❌ Interoperabilidade activa | Pode executar .exe Windows a partir do WSL2 e vice-versa por defeito |
| Microsoft Defender | ✅ Com configuração | O Defender analisa ficheiros do WSL2 se integração activada (Windows 11 + Defender actualizado) |
Configurar .wslconfig — Limitar Recursos e Rede
O ficheiro %USERPROFILE%\.wslconfig controla as configurações globais do WSL2 — recursos, rede e comportamentos de segurança. (tecla win+r e digitar %USERPROFILE%\.wslconfig e abrir no notepad)
[wsl2]
# Limitar recursos para evitar consumo excessivo
memory=4GB # máximo de RAM para o WSL2
processors=2 # máximo de CPUs
swap=2GB
# Rede — NAT (mais isolado) ou Mirrored
# NAT: WSL2 tem IP separado, acesso à rede Windows por bridge
# Mirrored: partilha IP com Windows — mais conveniente mas menos isolado
networkingMode=NAT # recomendado para ambientes corporativos com firewall
# Desactivar integração de localhost automática (mais seguro)
localhostForwarding=false
[experimental]
# Activar firewall Windows para tráfego WSL2 (Windows 11 22H2+)
hostAddressLoopback=false
useWindowsDnsCache=false
Controlar o Acesso a Ficheiros Windows
Por defeito o WSL2 monta automaticamente todos os drives Windows em /mnt/. Em ambientes corporativos é recomendável restringir este comportamento.
# Editar dentro do WSL2: sudo nano /etc/wsl.conf
[automount]
enabled = false # desactivar montagem automática de drives Windows
mountFsTab = true # usar /etc/fstab para montagens explícitas
[interop]
enabled = false # desactivar execução de .exe Windows a partir do WSL2
appendWindowsPath = false# não adicionar PATH do Windows ao PATH do Linux
# Se precisar de aceder apenas a uma pasta específica:
# Adicionar em /etc/fstab (dentro do WSL2):
# C:\Users\utilizador\Documents /mnt/docs drvfs rw,metadata,uid=1000,gid=1000 0 0
ℹ Desactivar automount não remove acesso existente
Desactivar o automount impede novas montagens automáticas após reinício do WSL2, mas não desmonta imediatamente o que já está montado. Após alterar o wsl.conf, executar wsl --shutdown e reiniciar o WSL2.
Integração com Microsoft Defender
|
1
|
Garantir que o Microsoft Defender Antivirus está actualizado (versão de plataforma ≥ 4.18.2301 e motor ≥ 1.1.20000). |
|
2
|
Verificar que o WSL está na versão 2.0+ — wsl --version no PowerShell. |
|
3
|
No Defender, verificar que a opção de análise de ficheiros WSL está activa: Segurança do Windows → Protecção contra vírus → Definições de protecção → Analisar ficheiros de rede. |
|
4
|
Adicionar exclusões apenas para ficheiros de build conhecidos (ex: node_modules) — nunca excluir toda a VHD do WSL2. |
|
5
|
Monitorizar alertas do Defender que referenciem caminhos \\wsl$\ — indicam detecção de ameaça nos ficheiros Linux. |
Get-MpComputerStatus | Select-Object AMProductVersion, AMEngineVersion, RealTimeProtectionEnabled, BehaviorMonitorEnabled
# Verificar se há exclusões problemáticas (paths WSL excluídos)
Get-MpPreference | Select-Object ExclusionPath | Where-Object { $_.ExclusionPath -match “wsl|ext4|LocalState” }
Políticas de Grupo (GPO) para Controlar o WSL2
| Política GPO | Localização | Efeito |
|---|---|---|
| Allow the Windows Subsystem for Linux | Computer Config → Admin Templates → Windows Components → Windows Subsystem for Linux | Controla se o WSL pode ser instalado/usado. Desactivar para bloquear em workstations não autorizadas. |
| Allow WSL2 | Mesma localização | Controla especificamente a versão WSL2 (VM leve) |
| Defender — Scan network files | Computer Config → Admin Templates → Windows Components → Microsoft Defender Antivirus → Scan | Forçar análise de ficheiros de rede incluindo partilhas WSL |
Get-ItemProperty -Path “HKLM:\SOFTWARE\Policies\Microsoft\Windows\Lxss” -ErrorAction SilentlyContinue
# Bloquear instalação de WSL via registo (sem GPO)
New-Item -Path “HKLM:\SOFTWARE\Policies\Microsoft\Windows\Lxss” -Force
Set-ItemProperty -Path “HKLM:\SOFTWARE\Policies\Microsoft\Windows\Lxss” -Name AllowWSL -Value 0 -Type DWord
Auditoria e Monitorização do WSL2
| O que monitorizar | Event ID / Log | Ferramenta |
|---|---|---|
| Instalação de distros WSL | Event ID 4688 (Process Creation) com wsl.exe | Event Viewer / Sentinel |
| Acesso a ficheiros Windows a partir do WSL2 | Auditing de Object Access em pastas sensíveis | Group Policy + Event Viewer (Security log) |
| Alertas de Defender originados em \\wsl$\ | Microsoft Defender alerts | Defender for Endpoint / Security Center |
| Processos WSL em execução | Task Manager → Details → filtrar wsl* | Task Manager / Sysinternals Process Monitor |
Artigos relacionados no kbase.pt
