icinga-powershell-framework/lib/core/icingaagent/firewall/Disable-IcingaFirewall.psm1

31 lines
1.1 KiB
PowerShell
Raw Normal View History

function Disable-IcingaFirewall()
{
param(
[switch]$LegacyOnly
);
$FirewallConfig = Get-IcingaFirewallConfig -NoOutput;
if ($FirewallConfig.LegacyFirewall) {
$Firewall = Start-IcingaProcess -Executable 'netsh' -Arguments 'advfirewall firewall delete rule name="Icinga 2 Agent Inbound by PS-Module"';
if ($Firewall.ExitCode -ne 0) {
Write-IcingaConsoleError ([string]::Format('Failed to remove legacy firewall: {0}{1}', $Firewall.Message, $Firewall.Error));
} else {
Write-IcingaConsoleNotice 'Successfully removed legacy Firewall rule';
}
}
if ($LegacyOnly) {
return;
}
if ($FirewallConfig.IcingaFirewall) {
$Firewall = Start-IcingaProcess -Executable 'netsh' -Arguments 'advfirewall firewall delete rule name="Icinga Agent Inbound"';
if ($Firewall.ExitCode -ne 0) {
Write-IcingaConsoleError ([string]::Format('Failed to remove Icinga firewall: {0}{1}', $Firewall.Message, $Firewall.Error));
} else {
Write-IcingaConsoleNotice 'Successfully removed Icinga Firewall rule';
}
}
}