
Scripts PowerShell para criar automaticamente regras para o firewall do Windows
![Alt Text][corporate firewall]
[![Lançamento alfa][badge status]][alpha]
Uma solução totalmente automatizada para o firewall do Windows com PowerShell
Windows Firewall Ruleset configura o firewall do Windows automaticamente e aplica regras de firewall restritivas específicas para o sistema alvo e software instalado no sistema.
O estado deste projeto ainda é alfa, clique no distintivo "status" acima para saber mais.
Este projeto consiste em duas partes principais: regras de firewall e estrutura do firewall, conforme a seguir:
Regras do firewall do Windows organizadas em scripts PowerShell individuais de acordo com:
Como, por exemplo:
A estrutura do firewall consiste em vários módulos PowerShell, scripts e documentação utilizados para recolher informações sobre o ambiente relevantes para construir e implantar um firewall especializado para o sistema alvo, como:
Assim, este repositório é um bom ponto de partida para estender facilmente o seu firewall com mais regras e funcionalidades conforme desejado.
Atualmente existem cerca de 800+ regras de firewall, 10+ módulos com 100+ funções, vários scripts e uma boa quantidade de documentação útil.
Pode escolher interativamente quais regras pretende e implementar apenas essas, ou pode automatizar o processo e implementar todas as regras e definições necessárias ao seu firewall.
[![Gerido no VSCode][badge vscode]][vscode] [![PowerShell][badge language]][powershell]
A configuração detalhada do firewall é um processo moroso, requer muita resolução de problemas, as alterações necessitam de testes e auditoria de segurança e só piora se precisar de implementar o firewall em centenas ou milhares de computadores remotos, por exemplo, nem todos os computadores podem ter o mesmo software ou requisitos de restrição.
Ao contrário das regras de firewall no painel de controlo, estas regras são carregadas no firewall GPO (Política de Grupo Local), o que significa que alterações nas definições do sistema ou programas aleatórios que instalam regras como parte do seu processo de instalação não terão efeito no firewall a menos que explicitamente abra uma exceção.
As regras baseadas em programas e serviços terão o seu ficheiro executável especificado verificado quanto à assinatura digital e serão analisadas no VirusTotal se faltar a assinatura digital, por razões de segurança a regra não é criada nem carregada no firewall se esta verificação falhar. (pode ser forçada)
O tráfego de saída predefinido é "bloquear" a menos que haja uma regra para permitir tráfego de rede, na maioria dos firewalls isto não é possível a menos que mantenha regras para todos os programas ou serviços possíveis, graças a esta coleção de regras, definir o tráfego de saída predefinido como bloquear requer muito pouco ou nenhum trabalho adicional.
Ao contrário do cenário habitual, saberá quais regras já não têm efeito ou são redundantes devido, por exemplo, a um programa desinstalado, um serviço de sistema em falta que já não existe, executável renomeado após uma atualização do Windows e razões semelhantes.
Ao contrário das regras predefinidas do firewall do Windows, estas regras são mais restritivas, como estarem vinculadas a contas de utilizador explícitas, aplicarem-se a portas específicas, interfaces de rede, executáveis específicos, serviços, etc., tudo isto é aprendido automaticamente a partir do sistema alvo.
Atualizar, filtrar ou pesquisar regras e atributos como portas, endereços e similares é muito mais fácil, pois estas regras estão em scripts, pode usar ferramentas de editor como regex, [multicursor][multicursor] ou CTRL + F para realizar operações em massa nas suas regras, fazer isto em qualquer interface de firewall não é possível devido às limitações da interface do utilizador.
Uma boa parte do código é dedicada a fornecer uma solução automatizada para construir e definir um firewall especializado para o sistema alvo e utilizadores, minimizando a necessidade de fazer algo manualmente, poupando assim muito do seu valioso tempo de administração.
Este projeto Windows Firewall Ruleset está licenciado sob a licença MIT.
Alguns scripts, ficheiros ou módulos não estão licenciados sob MIT ou podem ter os seus próprios detentores de direitos de autor, por esta razão os avisos de licença e direitos de autor são mantidos "por ficheiro".
[![Windows][badge system]][windows]
A tabela seguinte lista os sistemas operativos nos quais o Windows Firewall Ruleset foi testado
| SO | Edição | Versão | Arquitetura |
|---|---|---|---|
| Windows 10 | Pro | 1809 - 22H2 | x64 |
| Windows 10 | Pro Education | 20H2 | x64 |
| Windows 10 | Enterprise | 1809 - 20H2 | x64 |
| Windows 10 | Education | 20H2 - 22H2 | x64 |
| Windows 11 | Pro Education | 21H2 | x64 |
| Windows 11 | Pro | 22H2 - 23H2 | x64 |
| Windows 11 | Enterprise | 22H2 | x64 |
| Windows Server 2019 | Essentials | 1809 | x64 |
| Windows Server 2019 | Standard | 1809 | x64 |
| Windows Server 2019 | Datacenter | 1809 | x64 |
| Windows Server 2022 | Standard | 21H2 | x64 |
| Windows Server 2022 | Datacenter | 21H2 | x64 |