O Windows Server vem com o firewall ligado, e esse é o padrão certo: tudo que tenta se conectar de fora é recusado, a não ser que uma regra deixe passar. Você vai precisar mudar isso quando rodar algo seu, como um app web na porta 8080 ou um serviço que só o seu escritório deve acessar. Este guia faz tudo com PowerShell no Windows Server 2022. Testamos cada regra na nossa imagem e conferimos a partir de uma segunda máquina, então você sabe que ela realmente abre ou fecha a porta.
Abra o PowerShell como administrador. Se ainda não fez, proteja o RDP primeiro: aquele guia mostra como restringir a própria Área de Trabalho Remota.
1. Veja o que está ligado
Get-NetFirewallProfile | Format-Table Name, Enabled, DefaultInboundAction, DefaultOutboundAction
Get-NetConnectionProfile | Format-Table InterfaceAlias, NetworkCategory
No nosso servidor recém-criado, os três perfis (Domain, Private, Public) estavam ativos e o adaptador de rede estava em Public. DefaultInboundAction mostra NotConfigured, ou seja, o comportamento padrão do Windows: bloquear a entrada e permitir a saída. Então as regras que valem são as do perfil Public.
Para ver o que está liberado na entrada:
Get-NetFirewallRule -Direction Inbound -Enabled True -Action Allow |
Group-Object DisplayGroup | Sort-Object Count -Descending |
Select-Object Count, Name -First 8
Contamos 54 regras de entrada ativas. A maioria é do próprio Windows (Core Networking, Cast to Device, mDNS), além das três regras da Área de Trabalho Remota. O ping não estava entre elas.
2. Abra uma porta
Digamos que o seu app escute na porta TCP 8080:
New-NetFirewallRule -DisplayName 'Web app 8080' -Direction Inbound `
-Protocol TCP -LocalPort 8080 -Action Allow
A regra funciona no instante em que é criada. Da nossa segunda máquina, a porta 8080 passou de bloqueada para aberta, enquanto a 8081, onde também havia um programa escutando, continuou bloqueada. Uma regra sem -Profile vale para todos os perfis, inclusive o Public.
Para um intervalo ou uma lista, use -LocalPort 8000-8010 ou -LocalPort 80,443. Para UDP, mude o -Protocol.
3. Libere só alguns endereços
A maioria dos serviços não precisa aceitar a internet inteira. Restrinja a regra aos endereços que devem se conectar:
Set-NetFirewallRule -DisplayName 'Web app 8080' -RemoteAddress 203.0.113.10
Set-NetFirewallRule -DisplayName 'Web app 8080' -RemoteAddress 203.0.113.10, 198.51.100.0/24
Testamos os dois casos. Com um endereço de fora em -RemoteAddress, nossa máquina de teste não conseguia mais se conectar. Depois de incluir o endereço dela, conseguiu. Use o mesmo parâmetro nas regras da Área de Trabalho Remota para deixar o RDP só para o seu escritório. Se o IP da sua casa muda com frequência, pense duas vezes antes de fazer isso com o RDP.
4. Ative o ping
De fábrica, o Windows não responde ao ping. A regra existe, mas está desligada:
Enable-NetFirewallRule -DisplayName 'File and Printer Sharing (Echo Request - ICMPv4-In)'
Depois disso, nosso servidor passou a responder ao ping na hora. Ferramentas de monitoramento que verificam a disponibilidade por ping precisam disso. Para desligar de novo, use Disable-NetFirewallRule com o mesmo nome.
5. Registre o que é bloqueado
Quando algo não consegue se conectar e você não sabe por quê, faça o firewall anotar o que ele descarta:
Set-NetFirewallProfile -Profile Public -LogBlocked True -LogMaxSizeKilobytes 4096
Get-Content C:\Windows\System32\LogFiles\Firewall\pfirewall.log -Tail 20
Cada tentativa bloqueada vira uma linha assim:
2026-10-25 02:07:25 DROP TCP 198.51.100.7 203.0.113.25 43386 445 60 S 2112839481 0 64240 - - - RECEIVE 4
Ela se lê assim: data e hora, ação, protocolo, endereço de origem, endereço do seu servidor, porta de origem, porta de destino. Tenha paciência: o Windows grava o log em lotes, e nossas entradas de teste apareceram cerca de um minuto depois das tentativas. O limite de 4 MB impede que o arquivo cresça sem parar.
6. Faça backup e arrume a casa
Antes de uma mudança grande, salve todas as regras num arquivo:
netsh advfirewall export C:\fw-backup.wfw
Nossa exportação teve 148 KB. netsh advfirewall import C:\fw-backup.wfw devolve exatamente esse conjunto, substituindo o que estiver lá. Apague pelo nome uma regra de que não precisa mais:
Remove-NetFirewallRule -DisplayName 'Web app 8080'
Se você se trancou fora
Se uma regra cortar a sua própria Área de Trabalho Remota, abra o console no seu painel. Ele não passa pelo RDP, então você pode entrar e rodar Remove-NetFirewallRule ou Set-NetFirewallRule para desfazer.
NAT ou IP próprio
Nos planos com NAT, a internet chega ao seu servidor por uma única porta pessoal, que leva à Área de Trabalho Remota. As outras portas continuam inacessíveis de fora, não importa o que você libere no Firewall do Windows. Para servir um site ou aceitar conexões em outras portas, você precisa de IPv4 próprio: o Windows Small-IP (4 vCPU, 4 GB, 50 GB, $28/mês) dá um com todas as portas abertas, e aí quem decide é o Firewall do Windows. O Windows-Small custa $11/mês com NAT. Os quatro planos Windows estão na página de Windows VPS, e o pagamento é em USDT, USDC ou ETH nas redes Base, Ethereum ou Polygon.
Comentários
Nenhum comentário ainda. Seja o primeiro.