KempDec.NetWindowsFirewall
1.3.2
dotnet add package KempDec.NetWindowsFirewall --version 1.3.2
NuGet\Install-Package KempDec.NetWindowsFirewall -Version 1.3.2
<PackageReference Include="KempDec.NetWindowsFirewall" Version="1.3.2" />
paket add KempDec.NetWindowsFirewall --version 1.3.2
#r "nuget: KempDec.NetWindowsFirewall, 1.3.2"
// Install KempDec.NetWindowsFirewall as a Cake Addin #addin nuget:?package=KempDec.NetWindowsFirewall&version=1.3.2 // Install KempDec.NetWindowsFirewall as a Cake Tool #tool nuget:?package=KempDec.NetWindowsFirewall&version=1.3.2
NetWindowsFirewall
NetWindowsFirewall é uma micro biblioetca com métodos auxiliares para gerenciar o Firewall do Windows.
A biblioteca COM NetFwTypeLib
é usada para gerenciar o Firewall do Windows pelo NetWindowsFirewall.
Veja NetWindowsFirewall Legacy para .NET Framework 4.8
Instalação
- Instale a biblioteca a partir do NuGet.
Install-Package KempDec.NetWindowsFirewall
- Altere o "SO de Destino" do seu projeto para
Windows
.
Para alterar pelo Visual Studio, clique com o botão direito no seu projeto e vá em Propriedades (Alt + Enter).
Para alterar por código, abra o arquivo com extensão .csproj
do seu projeto e adicione -windows
após a versão do
framework, dentro da tag <TargetFramework/>
. Exemplo:
<TargetFramework>net8.0</TargetFramework>
<TargetFramework>net8.0-windows</TargetFramework>
Como usar
Você pode usar a instância estática, obtida através de NetWindowsFirewall.Instance
, como no exemplo abaixo:
var ipAddress = IPAddress.Parse("127.0.0.1");
// Adiciona uma regra de bloqueio (de entrada) para o endereço de IP "127.0.1" no Firewall do Windows.
NetWindowsFirewall.Instance.AddBlockInIpRule($"IP {ipAddress} bloqueado", ipAddress);
// Adiciona uma regra de bloqueio (de saída) para o endereço de IP "127.0.0.1" no Firewall do Windows.
NetWindowsFirewall.Instance.AddBlockOutIpRule($"IP {ipAddress} bloqueado", ipAddress);
Ou você pode usar a partir de uma nova instância criada manualmente:
var ipAddress = IPAddress.Parse("127.0.0.1");
var netWindowsFirewall = new NetWindowsFirewall();
// Adiciona uma regra de bloqueio (de entrada) para o endereço de IP "127.0.1" no Firewall do Windows.
netWindowsFirewall.AddBlockInIpRule($"IP {ipAddress} bloqueado", ipAddress);
// Adiciona uma regra de bloqueio (de saída) para o endereço de IP "127.0.0.1" no Firewall do Windows.
netWindowsFirewall.AddBlockOutIpRule($"IP {ipAddress} bloqueado", ipAddress);
Métodos disponíveis
Os métodos disponíveis são:
// Adiciona uma nova regra de permissão (de entrada) para um endereço de IP no Firewall do Windows.
public void AddAllowInIpRule(string name, IPAddress ipAddress);
// Adiciona uma nova regra de permissão (de entrada e saída) para um endereço de IP no Firewall do Windows.
public void AddAllowIpRule(string name, IPAddress ipAddress);
// Adiciona uma nova regra de permissão para um endereço de IP no Firewall do Windows.
public void AddAllowIpRule(string name, IPAddress ipAddress, NET_FW_RULE_DIRECTION_ direction);
// Adiciona uma nova regra de permissão (de saída) para um endereço de IP no Firewall do Windows.
public void AddAllowOutIpRule(string name, IPAddress ipAddress);
// Adiciona uma nova regra de bloqueio (de entrada) para um endereço de IP no Firewall do Windows.
public void AddBlockInIpRule(string name, IPAddress ipAddress);
// Adiciona uma nova regra de bloqueio (de entrada e saída) para um endereço de IP no Firewall do Windows.
public void AddBlockIpRule(string name, IPAddress ipAddress);
// Adiciona uma nova regra de bloqueio para um endereço de IP no Firewall do Windows.
public void AddBlockIpRule(string name, IPAddress ipAddress, NET_FW_RULE_DIRECTION_ direction);
// Adiciona uma nova regra de bloqueio (de saída) para um endereço de IP no Firewall do Windows.
public void AddBlockOutIpRule(string name, IPAddress ipAddress);
// Adiciona a regra especificada para o Firewall do Windows.
public void AddRule(INetFwRule rule);
// Obtém uma nova regra do Firewall do Windows.
public static INetFwRule GetNewRule();
// Obtém as regras do Firewall do Windows.
public static INetFwRules GetRules();
// Adiciona o endereço de IP especificado para a regra especificada.
public static void AddIpToRule(string ruleName, IPAddress ipAddress);
// Remove o endereço de IP especificado para a regra especificada.
public static void RemoveIpToRule(string ruleName, IPAddress ipAddress);
Colaboração
Ajude-nos a deixar a biblioteca de código aberto cada vez melhor, criando um pull request.
Autores
- KempDec - Mantedora do projeto de código aberto.
- Vinícius Lima - Desenvolvedor .NET C#.
Licença
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0-windows7.0 is compatible. net9.0-windows was computed. |
-
net8.0-windows7.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on KempDec.NetWindowsFirewall:
Package | Downloads |
---|---|
TankShield
TankShield é uma pequena biblioteca que pode ser usada para evitar ataques no jogo DDTank. |
GitHub repositories
This package is not used by any popular GitHub repositories.