Firewall
Firewall includes UltimateGuard (WFP) and NetfilterSDK configuration and examples
Firewall config
Requests that presented below are uses for configure firewall:
Enable - enable firewall.
var request = new FirewallRequest { Enable = EmptyRequest.Empty, }
Disable - disables firewall (disabled all firewall features).
var request = new FirewallRequest { Disable = EmptyRequest.Empty, }
UpdateBypassDomains - updates bypass domain list, constructor contains:
var request = new FirewallRequest
{
UpdateBypassDomains = new UpdateBypassDomainsRequest
{
Domains = new List<string> { "domain", },
}
}
UpdateBypassProcessesRequest - updates bypass proceses list
var request = new FirewallRequest
{
UpdateBypassDomains = new UpdateBypassDomainsRequest
{
Processes = new List<string> { "PathToTheProcessExe", },
}
}
PermitProcess - adds a process to killswitch exceptions list
var request = new FirewallRequest
{
PermitProcess = new PermitProcessRequest
{
ProcessPath = "PathToTheProcessExe",
}
}
RemovePermitProcess - removes a process to killswitch exceptions list
var request = new FirewallRequest
{
RemoveProcessPermit= new RemoveProcessPermitRequest
{
ProcessPath = "PathToTheProcessExe",
}
}
EnableDnsMonitor - enables DNS monitor
var request = new FirewallRequest
{
EnableDnsMonitor = new EnableDnsMonitorRequest(),
}
DisableDnsMonitor - disables DNS monitor
var request = new FirewallRequest
{
DisableDnsMonitor = new DisableDnsMonitorRequest(),
}
GetKillSwitchState - returns killswitch state
var request = new FirewallRequest
{
GetKillSwitchState = EmptyRequest.Empty,
}
ConfigureFirewallAsync
Sends firewall configuration to the service.
Example:
var sdk = new SDK();
var request = new FirewallRequest()
{
UpdateBypassDomains =
new UpdateBypassDomainsRequest()
{
Domains = new List<string>(),
},
UpdateBypassProcesses =
new UpdateBypassProcessesRequest()
{
Processes = new List<string>(),
},
};
var configureFirewallResponse = await sdk.ConfigureFirewallAsync(request).ConfigureAwait(false);
Console.WriteLine(configureFirewallResponse.UpdateBypassProcesses);
Console.WriteLine(configureFirewallResponse.UpdateBypassDomains);