diff --git a/docs/cmdlets/Apply-OPNSenseFirewallChanges.md b/docs/cmdlets/Apply-OPNSenseFirewallChanges.md new file mode 100644 index 0000000..95cc82a --- /dev/null +++ b/docs/cmdlets/Apply-OPNSenseFirewallChanges.md @@ -0,0 +1,79 @@ +# Apply-OPNSenseFirewallChanges + +## SYNOPSIS +Applies pending firewall changes on an OPNSense firewall. + +## SYNTAX + +``` +Apply-OPNSenseFirewallChanges [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Apply-OPNSenseFirewallChanges cmdlet applies pending firewall changes on an OPNSense firewall. This is required after making changes to firewall rules. + +## EXAMPLES + +### Example 1: Apply firewall changes +```powershell +Apply-OPNSenseFirewallChanges +``` + +This example applies all pending firewall changes. + +## PARAMETERS + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +This cmdlet should be called after making changes to firewall rules to apply the changes. + +## RELATED LINKS + +[Get-OPNSenseFirewallRule](Get-OPNSenseFirewallRule.md) +[New-OPNSenseFirewallRule](New-OPNSenseFirewallRule.md) +[Set-OPNSenseFirewallRule](Set-OPNSenseFirewallRule.md) +[Remove-OPNSenseFirewallRule](Remove-OPNSenseFirewallRule.md) +[Enable-OPNSenseFirewallRule](Enable-OPNSenseFirewallRule.md) +[Disable-OPNSenseFirewallRule](Disable-OPNSenseFirewallRule.md) diff --git a/docs/cmdlets/Connect-OPNSense.md b/docs/cmdlets/Connect-OPNSense.md new file mode 100644 index 0000000..59c8031 --- /dev/null +++ b/docs/cmdlets/Connect-OPNSense.md @@ -0,0 +1,126 @@ +# Connect-OPNSense + +## SYNOPSIS +Connects to an OPNSense firewall. + +## SYNTAX + +``` +Connect-OPNSense -Server -ApiKey -ApiSecret [-SkipCertificateCheck] [-Force] +``` + +## DESCRIPTION +The Connect-OPNSense cmdlet establishes a connection to an OPNSense firewall using the API. +This cmdlet must be called before using any other cmdlets in the module. + +## EXAMPLES + +### Example 1: Connect to an OPNSense firewall +```powershell +Connect-OPNSense -Server "https://firewall.example.com" -ApiKey "your_api_key" -ApiSecret "your_api_secret" +``` + +This example connects to an OPNSense firewall at the specified URL using the provided API credentials. + +### Example 2: Connect to an OPNSense firewall with certificate validation disabled +```powershell +Connect-OPNSense -Server "https://firewall.example.com" -ApiKey "your_api_key" -ApiSecret "your_api_secret" -SkipCertificateCheck +``` + +This example connects to an OPNSense firewall and skips SSL certificate validation. + +## PARAMETERS + +### -Server +The URL of the OPNSense firewall. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ApiKey +The API key for authentication. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ApiSecret +The API secret for authentication. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SkipCertificateCheck +Skips SSL certificate validation. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Force +Forces a reconnection if already connected. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### None + +## NOTES +You must have API access enabled on your OPNSense firewall and have created an API key and secret. + +## RELATED LINKS + +[Disconnect-OPNSense](Disconnect-OPNSense.md) +[Get-OPNSenseConnection](Get-OPNSenseConnection.md) diff --git a/docs/cmdlets/Disable-OPNSenseCronJob.md b/docs/cmdlets/Disable-OPNSenseCronJob.md new file mode 100644 index 0000000..d0c42de --- /dev/null +++ b/docs/cmdlets/Disable-OPNSenseCronJob.md @@ -0,0 +1,102 @@ +# Disable-OPNSenseCronJob + +## SYNOPSIS +Disables a cron job on an OPNSense firewall. + +## SYNTAX + +``` +Disable-OPNSenseCronJob -UUID [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Disable-OPNSenseCronJob cmdlet disables a cron job on an OPNSense firewall without removing it. + +## EXAMPLES + +### Example 1: Disable a cron job +```powershell +Disable-OPNSenseCronJob -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example disables the cron job with the specified UUID. + +### Example 2: Disable a cron job with confirmation +```powershell +Disable-OPNSenseCronJob -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Confirm +``` + +This example prompts for confirmation before disabling the cron job. + +## PARAMETERS + +### -UUID +The UUID of the cron job to disable. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a cron job to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +This cmdlet is a shorthand for `Set-OPNSenseCronJob -UUID -Enabled $false`. +Disabling a cron job does not remove it from the system, but prevents it from running. + +## RELATED LINKS + +[Get-OPNSenseCronJob](Get-OPNSenseCronJob.md) +[New-OPNSenseCronJob](New-OPNSenseCronJob.md) +[Set-OPNSenseCronJob](Set-OPNSenseCronJob.md) +[Remove-OPNSenseCronJob](Remove-OPNSenseCronJob.md) +[Enable-OPNSenseCronJob](Enable-OPNSenseCronJob.md) diff --git a/docs/cmdlets/Disable-OPNSenseFirewallRule.md b/docs/cmdlets/Disable-OPNSenseFirewallRule.md new file mode 100644 index 0000000..aec7d1a --- /dev/null +++ b/docs/cmdlets/Disable-OPNSenseFirewallRule.md @@ -0,0 +1,95 @@ +# Disable-OPNSenseFirewallRule + +## SYNOPSIS +Disables a firewall rule on an OPNSense firewall. + +## SYNTAX + +``` +Disable-OPNSenseFirewallRule -UUID [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Disable-OPNSenseFirewallRule cmdlet disables an enabled firewall rule on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Disable a firewall rule +```powershell +Disable-OPNSenseFirewallRule -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example disables the firewall rule with the specified UUID. + +## PARAMETERS + +### -UUID +The UUID of the firewall rule to disable. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a firewall rule to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After disabling firewall rules, you need to apply the changes using Apply-OPNSenseFirewallChanges. + +## RELATED LINKS + +[Get-OPNSenseFirewallRule](Get-OPNSenseFirewallRule.md) +[New-OPNSenseFirewallRule](New-OPNSenseFirewallRule.md) +[Set-OPNSenseFirewallRule](Set-OPNSenseFirewallRule.md) +[Remove-OPNSenseFirewallRule](Remove-OPNSenseFirewallRule.md) +[Enable-OPNSenseFirewallRule](Enable-OPNSenseFirewallRule.md) +[Apply-OPNSenseFirewallChanges](Apply-OPNSenseFirewallChanges.md) diff --git a/docs/cmdlets/Disable-OPNSensePlugin.md b/docs/cmdlets/Disable-OPNSensePlugin.md new file mode 100644 index 0000000..46cf6af --- /dev/null +++ b/docs/cmdlets/Disable-OPNSensePlugin.md @@ -0,0 +1,102 @@ +# Disable-OPNSensePlugin + +## SYNOPSIS +Disables a plugin on an OPNSense firewall. + +## SYNTAX + +``` +Disable-OPNSensePlugin -Name [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Disable-OPNSensePlugin cmdlet disables a plugin on an OPNSense firewall without uninstalling it. + +## EXAMPLES + +### Example 1: Disable a plugin +```powershell +Disable-OPNSensePlugin -Name "os-acme-client" +``` + +This example disables the plugin with the name "os-acme-client" on the OPNSense firewall. + +### Example 2: Disable a plugin with confirmation +```powershell +Disable-OPNSensePlugin -Name "os-theme-cicada" -Confirm +``` + +This example prompts for confirmation before disabling the plugin. + +## PARAMETERS + +### -Name +The name of the plugin to disable. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the plugin name to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Disabling a plugin does not remove it from the system, but prevents it from being used. +Disabling a plugin may require a reboot of the firewall for the changes to take effect. +Some plugins may have dependencies that need to be disabled first. + +## RELATED LINKS + +[Get-OPNSensePlugin](Get-OPNSensePlugin.md) +[Install-OPNSensePlugin](Install-OPNSensePlugin.md) +[Uninstall-OPNSensePlugin](Uninstall-OPNSensePlugin.md) +[Enable-OPNSensePlugin](Enable-OPNSensePlugin.md) diff --git a/docs/cmdlets/Disable-OPNSenseTailscale.md b/docs/cmdlets/Disable-OPNSenseTailscale.md new file mode 100644 index 0000000..9083737 --- /dev/null +++ b/docs/cmdlets/Disable-OPNSenseTailscale.md @@ -0,0 +1,86 @@ +# Disable-OPNSenseTailscale + +## SYNOPSIS +Disables Tailscale on an OPNSense firewall. + +## SYNTAX + +``` +Disable-OPNSenseTailscale [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Disable-OPNSenseTailscale cmdlet disables the Tailscale service on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Disable Tailscale +```powershell +Disable-OPNSenseTailscale +``` + +This example disables the Tailscale service on the OPNSense firewall. + +### Example 2: Disable Tailscale with confirmation +```powershell +Disable-OPNSenseTailscale -Confirm +``` + +This example prompts for confirmation before disabling the Tailscale service. + +## PARAMETERS + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +The Tailscale plugin must be installed on the OPNSense firewall. +Disabling Tailscale will disconnect the firewall from the Tailscale network. + +## RELATED LINKS + +[Enable-OPNSenseTailscale](Enable-OPNSenseTailscale.md) +[Get-OPNSenseTailscaleStatus](Get-OPNSenseTailscaleStatus.md) +[Get-OPNSenseTailscaleConfig](Get-OPNSenseTailscaleConfig.md) +[Set-OPNSenseTailscaleConfig](Set-OPNSenseTailscaleConfig.md) +[Install-OPNSenseTailscale](Install-OPNSenseTailscale.md) diff --git a/docs/cmdlets/Disconnect-OPNSense.md b/docs/cmdlets/Disconnect-OPNSense.md new file mode 100644 index 0000000..dcdec06 --- /dev/null +++ b/docs/cmdlets/Disconnect-OPNSense.md @@ -0,0 +1,43 @@ +# Disconnect-OPNSense + +## SYNOPSIS +Disconnects from an OPNSense firewall. + +## SYNTAX + +``` +Disconnect-OPNSense +``` + +## DESCRIPTION +The Disconnect-OPNSense cmdlet terminates the connection to an OPNSense firewall. + +## EXAMPLES + +### Example 1: Disconnect from an OPNSense firewall +```powershell +Disconnect-OPNSense +``` + +This example disconnects from the currently connected OPNSense firewall. + +## PARAMETERS + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### None + +## NOTES +This cmdlet releases resources used by the connection to the OPNSense firewall. + +## RELATED LINKS + +[Connect-OPNSense](Connect-OPNSense.md) +[Get-OPNSenseConnection](Get-OPNSenseConnection.md) diff --git a/docs/cmdlets/Enable-OPNSenseCronJob.md b/docs/cmdlets/Enable-OPNSenseCronJob.md new file mode 100644 index 0000000..4fe0b89 --- /dev/null +++ b/docs/cmdlets/Enable-OPNSenseCronJob.md @@ -0,0 +1,101 @@ +# Enable-OPNSenseCronJob + +## SYNOPSIS +Enables a cron job on an OPNSense firewall. + +## SYNTAX + +``` +Enable-OPNSenseCronJob -UUID [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Enable-OPNSenseCronJob cmdlet enables a previously disabled cron job on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Enable a cron job +```powershell +Enable-OPNSenseCronJob -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example enables the cron job with the specified UUID. + +### Example 2: Enable a cron job with confirmation +```powershell +Enable-OPNSenseCronJob -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Confirm +``` + +This example prompts for confirmation before enabling the cron job. + +## PARAMETERS + +### -UUID +The UUID of the cron job to enable. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a cron job to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +This cmdlet is a shorthand for `Set-OPNSenseCronJob -UUID -Enabled $true`. + +## RELATED LINKS + +[Get-OPNSenseCronJob](Get-OPNSenseCronJob.md) +[New-OPNSenseCronJob](New-OPNSenseCronJob.md) +[Set-OPNSenseCronJob](Set-OPNSenseCronJob.md) +[Remove-OPNSenseCronJob](Remove-OPNSenseCronJob.md) +[Disable-OPNSenseCronJob](Disable-OPNSenseCronJob.md) diff --git a/docs/cmdlets/Enable-OPNSenseFirewallRule.md b/docs/cmdlets/Enable-OPNSenseFirewallRule.md new file mode 100644 index 0000000..afc3d37 --- /dev/null +++ b/docs/cmdlets/Enable-OPNSenseFirewallRule.md @@ -0,0 +1,95 @@ +# Enable-OPNSenseFirewallRule + +## SYNOPSIS +Enables a firewall rule on an OPNSense firewall. + +## SYNTAX + +``` +Enable-OPNSenseFirewallRule -UUID [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Enable-OPNSenseFirewallRule cmdlet enables a disabled firewall rule on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Enable a firewall rule +```powershell +Enable-OPNSenseFirewallRule -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example enables the firewall rule with the specified UUID. + +## PARAMETERS + +### -UUID +The UUID of the firewall rule to enable. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a firewall rule to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After enabling firewall rules, you need to apply the changes using Apply-OPNSenseFirewallChanges. + +## RELATED LINKS + +[Get-OPNSenseFirewallRule](Get-OPNSenseFirewallRule.md) +[New-OPNSenseFirewallRule](New-OPNSenseFirewallRule.md) +[Set-OPNSenseFirewallRule](Set-OPNSenseFirewallRule.md) +[Remove-OPNSenseFirewallRule](Remove-OPNSenseFirewallRule.md) +[Disable-OPNSenseFirewallRule](Disable-OPNSenseFirewallRule.md) +[Apply-OPNSenseFirewallChanges](Apply-OPNSenseFirewallChanges.md) diff --git a/docs/cmdlets/Enable-OPNSensePlugin.md b/docs/cmdlets/Enable-OPNSensePlugin.md new file mode 100644 index 0000000..5ae4afe --- /dev/null +++ b/docs/cmdlets/Enable-OPNSensePlugin.md @@ -0,0 +1,101 @@ +# Enable-OPNSensePlugin + +## SYNOPSIS +Enables a plugin on an OPNSense firewall. + +## SYNTAX + +``` +Enable-OPNSensePlugin -Name [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Enable-OPNSensePlugin cmdlet enables a previously disabled plugin on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Enable a plugin +```powershell +Enable-OPNSensePlugin -Name "os-acme-client" +``` + +This example enables the plugin with the name "os-acme-client" on the OPNSense firewall. + +### Example 2: Enable a plugin with confirmation +```powershell +Enable-OPNSensePlugin -Name "os-theme-cicada" -Confirm +``` + +This example prompts for confirmation before enabling the plugin. + +## PARAMETERS + +### -Name +The name of the plugin to enable. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the plugin name to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +The plugin must be installed before it can be enabled. +Enabling a plugin may require a reboot of the firewall for the changes to take effect. + +## RELATED LINKS + +[Get-OPNSensePlugin](Get-OPNSensePlugin.md) +[Install-OPNSensePlugin](Install-OPNSensePlugin.md) +[Uninstall-OPNSensePlugin](Uninstall-OPNSensePlugin.md) +[Disable-OPNSensePlugin](Disable-OPNSensePlugin.md) diff --git a/docs/cmdlets/Enable-OPNSenseTailscale.md b/docs/cmdlets/Enable-OPNSenseTailscale.md new file mode 100644 index 0000000..9793a7f --- /dev/null +++ b/docs/cmdlets/Enable-OPNSenseTailscale.md @@ -0,0 +1,86 @@ +# Enable-OPNSenseTailscale + +## SYNOPSIS +Enables Tailscale on an OPNSense firewall. + +## SYNTAX + +``` +Enable-OPNSenseTailscale [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Enable-OPNSenseTailscale cmdlet enables the Tailscale service on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Enable Tailscale +```powershell +Enable-OPNSenseTailscale +``` + +This example enables the Tailscale service on the OPNSense firewall. + +### Example 2: Enable Tailscale with confirmation +```powershell +Enable-OPNSenseTailscale -Confirm +``` + +This example prompts for confirmation before enabling the Tailscale service. + +## PARAMETERS + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +The Tailscale plugin must be installed on the OPNSense firewall. +Tailscale must be properly configured before enabling it. Use Set-OPNSenseTailscaleConfig to configure Tailscale. + +## RELATED LINKS + +[Disable-OPNSenseTailscale](Disable-OPNSenseTailscale.md) +[Get-OPNSenseTailscaleStatus](Get-OPNSenseTailscaleStatus.md) +[Get-OPNSenseTailscaleConfig](Get-OPNSenseTailscaleConfig.md) +[Set-OPNSenseTailscaleConfig](Set-OPNSenseTailscaleConfig.md) +[Install-OPNSenseTailscale](Install-OPNSenseTailscale.md) diff --git a/docs/cmdlets/Get-OPNSenseAlias.md b/docs/cmdlets/Get-OPNSenseAlias.md new file mode 100644 index 0000000..61bd9d4 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseAlias.md @@ -0,0 +1,67 @@ +# Get-OPNSenseAlias + +## SYNOPSIS +Gets aliases from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseAlias [[-Name] ] +``` + +## DESCRIPTION +The Get-OPNSenseAlias cmdlet retrieves aliases from an OPNSense firewall. You can retrieve all aliases or a specific alias by name. + +## EXAMPLES + +### Example 1: Get all aliases +```powershell +Get-OPNSenseAlias +``` + +This example retrieves all aliases from the OPNSense firewall. + +### Example 2: Get a specific alias +```powershell +Get-OPNSenseAlias -Name "LAN_HOSTS" +``` + +This example retrieves the alias with the name "LAN_HOSTS" from the OPNSense firewall. + +## PARAMETERS + +### -Name +The name of the alias to retrieve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the aliases, including information such as name, type, content, and description. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[New-OPNSenseAlias](New-OPNSenseAlias.md) +[Set-OPNSenseAlias](Set-OPNSenseAlias.md) +[Remove-OPNSenseAlias](Remove-OPNSenseAlias.md) diff --git a/docs/cmdlets/Get-OPNSenseConnection.md b/docs/cmdlets/Get-OPNSenseConnection.md new file mode 100644 index 0000000..da56be7 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseConnection.md @@ -0,0 +1,44 @@ +# Get-OPNSenseConnection + +## SYNOPSIS +Gets information about the current OPNSense connection. + +## SYNTAX + +``` +Get-OPNSenseConnection +``` + +## DESCRIPTION +The Get-OPNSenseConnection cmdlet retrieves information about the current connection to an OPNSense firewall. + +## EXAMPLES + +### Example 1: Get connection information +```powershell +Get-OPNSenseConnection +``` + +This example retrieves information about the current connection to an OPNSense firewall. + +## PARAMETERS + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object containing information about the current connection, including the server URL and connection status. + +## NOTES +This cmdlet can be used to verify that a connection to an OPNSense firewall has been established. + +## RELATED LINKS + +[Connect-OPNSense](Connect-OPNSense.md) +[Disconnect-OPNSense](Disconnect-OPNSense.md) diff --git a/docs/cmdlets/Get-OPNSenseCronJob.md b/docs/cmdlets/Get-OPNSenseCronJob.md new file mode 100644 index 0000000..5d2dec8 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseCronJob.md @@ -0,0 +1,69 @@ +# Get-OPNSenseCronJob + +## SYNOPSIS +Gets cron jobs from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseCronJob [[-UUID] ] +``` + +## DESCRIPTION +The Get-OPNSenseCronJob cmdlet retrieves cron jobs from an OPNSense firewall. You can retrieve all cron jobs or a specific cron job by UUID. + +## EXAMPLES + +### Example 1: Get all cron jobs +```powershell +Get-OPNSenseCronJob +``` + +This example retrieves all cron jobs from the OPNSense firewall. + +### Example 2: Get a specific cron job +```powershell +Get-OPNSenseCronJob -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example retrieves a specific cron job by its UUID. + +## PARAMETERS + +### -UUID +The UUID of the cron job to retrieve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the cron jobs. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[New-OPNSenseCronJob](New-OPNSenseCronJob.md) +[Set-OPNSenseCronJob](Set-OPNSenseCronJob.md) +[Remove-OPNSenseCronJob](Remove-OPNSenseCronJob.md) +[Enable-OPNSenseCronJob](Enable-OPNSenseCronJob.md) +[Disable-OPNSenseCronJob](Disable-OPNSenseCronJob.md) diff --git a/docs/cmdlets/Get-OPNSenseDHCPLease.md b/docs/cmdlets/Get-OPNSenseDHCPLease.md new file mode 100644 index 0000000..d578cff --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseDHCPLease.md @@ -0,0 +1,115 @@ +# Get-OPNSenseDHCPLease + +## SYNOPSIS +Gets DHCP leases from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseDHCPLease [[-Interface] ] [[-IP] ] [[-MAC] ] +``` + +## DESCRIPTION +The Get-OPNSenseDHCPLease cmdlet retrieves DHCP leases from an OPNSense firewall. You can filter leases by interface, IP address, or MAC address. + +## EXAMPLES + +### Example 1: Get all DHCP leases +```powershell +Get-OPNSenseDHCPLease +``` + +This example retrieves all DHCP leases from the OPNSense firewall. + +### Example 2: Get DHCP leases for a specific interface +```powershell +Get-OPNSenseDHCPLease -Interface "lan" +``` + +This example retrieves DHCP leases for the LAN interface. + +### Example 3: Get a DHCP lease for a specific IP address +```powershell +Get-OPNSenseDHCPLease -IP "192.168.1.100" +``` + +This example retrieves the DHCP lease for the specified IP address. + +### Example 4: Get a DHCP lease for a specific MAC address +```powershell +Get-OPNSenseDHCPLease -MAC "00:11:22:33:44:55" +``` + +This example retrieves the DHCP lease for the specified MAC address. + +## PARAMETERS + +### -Interface +The interface for which to retrieve DHCP leases. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IP +The IP address for which to retrieve a DHCP lease. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 1 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -MAC +The MAC address for which to retrieve a DHCP lease. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 2 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the DHCP leases. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[Remove-OPNSenseDHCPLease](Remove-OPNSenseDHCPLease.md) +[Get-OPNSenseDHCPServer](Get-OPNSenseDHCPServer.md) +[Set-OPNSenseDHCPServer](Set-OPNSenseDHCPServer.md) +[Get-OPNSenseDHCPStaticMapping](Get-OPNSenseDHCPStaticMapping.md) +[New-OPNSenseDHCPStaticMapping](New-OPNSenseDHCPStaticMapping.md) +[Set-OPNSenseDHCPStaticMapping](Set-OPNSenseDHCPStaticMapping.md) +[Remove-OPNSenseDHCPStaticMapping](Remove-OPNSenseDHCPStaticMapping.md) diff --git a/docs/cmdlets/Get-OPNSenseDHCPOption.md b/docs/cmdlets/Get-OPNSenseDHCPOption.md new file mode 100644 index 0000000..4d7a949 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseDHCPOption.md @@ -0,0 +1,91 @@ +# Get-OPNSenseDHCPOption + +## SYNOPSIS +Gets DHCP options from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseDHCPOption [[-Interface] ] [[-Number] ] +``` + +## DESCRIPTION +The Get-OPNSenseDHCPOption cmdlet retrieves DHCP options from an OPNSense firewall. You can retrieve all options, options for a specific interface, or a specific option by number. + +## EXAMPLES + +### Example 1: Get all DHCP options +```powershell +Get-OPNSenseDHCPOption +``` + +This example retrieves all DHCP options from the OPNSense firewall. + +### Example 2: Get DHCP options for a specific interface +```powershell +Get-OPNSenseDHCPOption -Interface "lan" +``` + +This example retrieves DHCP options for the LAN interface. + +### Example 3: Get a specific DHCP option +```powershell +Get-OPNSenseDHCPOption -Number 66 +``` + +This example retrieves DHCP option 66 (TFTP server name) from the OPNSense firewall. + +## PARAMETERS + +### -Interface +The interface for which to retrieve DHCP options. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Number +The option number to retrieve. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: 1 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the DHCP options. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[New-OPNSenseDHCPOption](New-OPNSenseDHCPOption.md) +[Set-OPNSenseDHCPOption](Set-OPNSenseDHCPOption.md) +[Remove-OPNSenseDHCPOption](Remove-OPNSenseDHCPOption.md) +[Get-OPNSenseDHCPServer](Get-OPNSenseDHCPServer.md) +[Set-OPNSenseDHCPServer](Set-OPNSenseDHCPServer.md) diff --git a/docs/cmdlets/Get-OPNSenseDHCPServer.md b/docs/cmdlets/Get-OPNSenseDHCPServer.md new file mode 100644 index 0000000..f403db9 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseDHCPServer.md @@ -0,0 +1,71 @@ +# Get-OPNSenseDHCPServer + +## SYNOPSIS +Gets DHCP server settings from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseDHCPServer [[-Interface] ] +``` + +## DESCRIPTION +The Get-OPNSenseDHCPServer cmdlet retrieves DHCP server settings from an OPNSense firewall. You can retrieve settings for all interfaces or a specific interface. + +## EXAMPLES + +### Example 1: Get DHCP server settings for all interfaces +```powershell +Get-OPNSenseDHCPServer +``` + +This example retrieves DHCP server settings for all interfaces from the OPNSense firewall. + +### Example 2: Get DHCP server settings for a specific interface +```powershell +Get-OPNSenseDHCPServer -Interface "lan" +``` + +This example retrieves DHCP server settings for the LAN interface from the OPNSense firewall. + +## PARAMETERS + +### -Interface +The interface for which to retrieve DHCP server settings. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the DHCP server settings. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[Set-OPNSenseDHCPServer](Set-OPNSenseDHCPServer.md) +[Get-OPNSenseDHCPLease](Get-OPNSenseDHCPLease.md) +[Remove-OPNSenseDHCPLease](Remove-OPNSenseDHCPLease.md) +[Get-OPNSenseDHCPStaticMapping](Get-OPNSenseDHCPStaticMapping.md) +[New-OPNSenseDHCPStaticMapping](New-OPNSenseDHCPStaticMapping.md) +[Set-OPNSenseDHCPStaticMapping](Set-OPNSenseDHCPStaticMapping.md) +[Remove-OPNSenseDHCPStaticMapping](Remove-OPNSenseDHCPStaticMapping.md) diff --git a/docs/cmdlets/Get-OPNSenseDHCPStaticMapping.md b/docs/cmdlets/Get-OPNSenseDHCPStaticMapping.md new file mode 100644 index 0000000..13f53ff --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseDHCPStaticMapping.md @@ -0,0 +1,93 @@ +# Get-OPNSenseDHCPStaticMapping + +## SYNOPSIS +Gets DHCP static mappings from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseDHCPStaticMapping [[-Interface] ] [[-UUID] ] +``` + +## DESCRIPTION +The Get-OPNSenseDHCPStaticMapping cmdlet retrieves DHCP static mappings from an OPNSense firewall. You can retrieve all static mappings, mappings for a specific interface, or a specific mapping by UUID. + +## EXAMPLES + +### Example 1: Get all DHCP static mappings +```powershell +Get-OPNSenseDHCPStaticMapping +``` + +This example retrieves all DHCP static mappings from the OPNSense firewall. + +### Example 2: Get DHCP static mappings for a specific interface +```powershell +Get-OPNSenseDHCPStaticMapping -Interface "lan" +``` + +This example retrieves DHCP static mappings for the LAN interface. + +### Example 3: Get a specific DHCP static mapping +```powershell +Get-OPNSenseDHCPStaticMapping -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example retrieves a specific DHCP static mapping by its UUID. + +## PARAMETERS + +### -Interface +The interface for which to retrieve DHCP static mappings. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -UUID +The UUID of the DHCP static mapping to retrieve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 1 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the DHCP static mappings. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[New-OPNSenseDHCPStaticMapping](New-OPNSenseDHCPStaticMapping.md) +[Set-OPNSenseDHCPStaticMapping](Set-OPNSenseDHCPStaticMapping.md) +[Remove-OPNSenseDHCPStaticMapping](Remove-OPNSenseDHCPStaticMapping.md) +[Get-OPNSenseDHCPServer](Get-OPNSenseDHCPServer.md) +[Set-OPNSenseDHCPServer](Set-OPNSenseDHCPServer.md) +[Get-OPNSenseDHCPLease](Get-OPNSenseDHCPLease.md) +[Remove-OPNSenseDHCPLease](Remove-OPNSenseDHCPLease.md) diff --git a/docs/cmdlets/Get-OPNSenseDNSForwarding.md b/docs/cmdlets/Get-OPNSenseDNSForwarding.md new file mode 100644 index 0000000..51772b3 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseDNSForwarding.md @@ -0,0 +1,47 @@ +# Get-OPNSenseDNSForwarding + +## SYNOPSIS +Gets DNS forwarding settings from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseDNSForwarding +``` + +## DESCRIPTION +The Get-OPNSenseDNSForwarding cmdlet retrieves DNS forwarding settings from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Get DNS forwarding settings +```powershell +Get-OPNSenseDNSForwarding +``` + +This example retrieves the DNS forwarding settings from the OPNSense firewall. + +## PARAMETERS + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the DNS forwarding settings. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[Set-OPNSenseDNSForwarding](Set-OPNSenseDNSForwarding.md) +[Get-OPNSenseDNSForwardingHost](Get-OPNSenseDNSForwardingHost.md) +[New-OPNSenseDNSForwardingHost](New-OPNSenseDNSForwardingHost.md) +[Set-OPNSenseDNSForwardingHost](Set-OPNSenseDNSForwardingHost.md) +[Remove-OPNSenseDNSForwardingHost](Remove-OPNSenseDNSForwardingHost.md) diff --git a/docs/cmdlets/Get-OPNSenseDNSForwardingHost.md b/docs/cmdlets/Get-OPNSenseDNSForwardingHost.md new file mode 100644 index 0000000..044ac32 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseDNSForwardingHost.md @@ -0,0 +1,69 @@ +# Get-OPNSenseDNSForwardingHost + +## SYNOPSIS +Gets DNS forwarding hosts from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseDNSForwardingHost [[-UUID] ] +``` + +## DESCRIPTION +The Get-OPNSenseDNSForwardingHost cmdlet retrieves DNS forwarding hosts from an OPNSense firewall. You can retrieve all forwarding hosts or a specific forwarding host by UUID. + +## EXAMPLES + +### Example 1: Get all DNS forwarding hosts +```powershell +Get-OPNSenseDNSForwardingHost +``` + +This example retrieves all DNS forwarding hosts from the OPNSense firewall. + +### Example 2: Get a specific DNS forwarding host +```powershell +Get-OPNSenseDNSForwardingHost -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example retrieves a specific DNS forwarding host by its UUID. + +## PARAMETERS + +### -UUID +The UUID of the DNS forwarding host to retrieve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the DNS forwarding hosts. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[New-OPNSenseDNSForwardingHost](New-OPNSenseDNSForwardingHost.md) +[Set-OPNSenseDNSForwardingHost](Set-OPNSenseDNSForwardingHost.md) +[Remove-OPNSenseDNSForwardingHost](Remove-OPNSenseDNSForwardingHost.md) +[Get-OPNSenseDNSForwarding](Get-OPNSenseDNSForwarding.md) +[Set-OPNSenseDNSForwarding](Set-OPNSenseDNSForwarding.md) diff --git a/docs/cmdlets/Get-OPNSenseDNSOverride.md b/docs/cmdlets/Get-OPNSenseDNSOverride.md new file mode 100644 index 0000000..1a8301b --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseDNSOverride.md @@ -0,0 +1,67 @@ +# Get-OPNSenseDNSOverride + +## SYNOPSIS +Gets DNS overrides from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseDNSOverride [[-UUID] ] +``` + +## DESCRIPTION +The Get-OPNSenseDNSOverride cmdlet retrieves DNS overrides from an OPNSense firewall. You can retrieve all overrides or a specific override by UUID. + +## EXAMPLES + +### Example 1: Get all DNS overrides +```powershell +Get-OPNSenseDNSOverride +``` + +This example retrieves all DNS overrides from the OPNSense firewall. + +### Example 2: Get a specific DNS override +```powershell +Get-OPNSenseDNSOverride -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example retrieves a specific DNS override by its UUID. + +## PARAMETERS + +### -UUID +The UUID of the DNS override to retrieve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the DNS overrides. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[New-OPNSenseDNSOverride](New-OPNSenseDNSOverride.md) +[Set-OPNSenseDNSOverride](Set-OPNSenseDNSOverride.md) +[Remove-OPNSenseDNSOverride](Remove-OPNSenseDNSOverride.md) diff --git a/docs/cmdlets/Get-OPNSenseDNSServer.md b/docs/cmdlets/Get-OPNSenseDNSServer.md new file mode 100644 index 0000000..9c39d33 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseDNSServer.md @@ -0,0 +1,45 @@ +# Get-OPNSenseDNSServer + +## SYNOPSIS +Gets DNS server settings from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseDNSServer +``` + +## DESCRIPTION +The Get-OPNSenseDNSServer cmdlet retrieves DNS server settings from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Get DNS server settings +```powershell +Get-OPNSenseDNSServer +``` + +This example retrieves the DNS server settings from the OPNSense firewall. + +## PARAMETERS + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the DNS server settings. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[Set-OPNSenseDNSServer](Set-OPNSenseDNSServer.md) +[Get-OPNSenseSystemDNS](Get-OPNSenseSystemDNS.md) +[Set-OPNSenseSystemDNS](Set-OPNSenseSystemDNS.md) diff --git a/docs/cmdlets/Get-OPNSenseFirewallRule.md b/docs/cmdlets/Get-OPNSenseFirewallRule.md new file mode 100644 index 0000000..1856b44 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseFirewallRule.md @@ -0,0 +1,70 @@ +# Get-OPNSenseFirewallRule + +## SYNOPSIS +Gets firewall rules from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseFirewallRule [[-UUID] ] +``` + +## DESCRIPTION +The Get-OPNSenseFirewallRule cmdlet retrieves firewall rules from an OPNSense firewall. You can retrieve all rules or a specific rule by UUID. + +## EXAMPLES + +### Example 1: Get all firewall rules +```powershell +Get-OPNSenseFirewallRule +``` + +This example retrieves all firewall rules from the OPNSense firewall. + +### Example 2: Get a specific firewall rule +```powershell +Get-OPNSenseFirewallRule -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example retrieves a specific firewall rule by its UUID. + +## PARAMETERS + +### -UUID +The UUID of the firewall rule to retrieve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the firewall rules. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[New-OPNSenseFirewallRule](New-OPNSenseFirewallRule.md) +[Set-OPNSenseFirewallRule](Set-OPNSenseFirewallRule.md) +[Remove-OPNSenseFirewallRule](Remove-OPNSenseFirewallRule.md) +[Enable-OPNSenseFirewallRule](Enable-OPNSenseFirewallRule.md) +[Disable-OPNSenseFirewallRule](Disable-OPNSenseFirewallRule.md) +[Apply-OPNSenseFirewallChanges](Apply-OPNSenseFirewallChanges.md) diff --git a/docs/cmdlets/Get-OPNSenseFirmware.md b/docs/cmdlets/Get-OPNSenseFirmware.md new file mode 100644 index 0000000..a856107 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseFirmware.md @@ -0,0 +1,44 @@ +# Get-OPNSenseFirmware + +## SYNOPSIS +Gets firmware information from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseFirmware +``` + +## DESCRIPTION +The Get-OPNSenseFirmware cmdlet retrieves firmware information from an OPNSense firewall, including the current version and available updates. + +## EXAMPLES + +### Example 1: Get firmware information +```powershell +Get-OPNSenseFirmware +``` + +This example retrieves firmware information from the OPNSense firewall. + +## PARAMETERS + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the firmware information, including the current version, available updates, and update status. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[Update-OPNSenseFirmware](Update-OPNSenseFirmware.md) +[Start-OPNSenseFirmwareUpgrade](Start-OPNSenseFirmwareUpgrade.md) diff --git a/docs/cmdlets/Get-OPNSenseGateway.md b/docs/cmdlets/Get-OPNSenseGateway.md new file mode 100644 index 0000000..9500d84 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseGateway.md @@ -0,0 +1,67 @@ +# Get-OPNSenseGateway + +## SYNOPSIS +Gets gateways from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseGateway [[-Name] ] +``` + +## DESCRIPTION +The Get-OPNSenseGateway cmdlet retrieves gateways from an OPNSense firewall. You can retrieve all gateways or a specific gateway by name. + +## EXAMPLES + +### Example 1: Get all gateways +```powershell +Get-OPNSenseGateway +``` + +This example retrieves all gateways from the OPNSense firewall. + +### Example 2: Get a specific gateway +```powershell +Get-OPNSenseGateway -Name "WAN_GW" +``` + +This example retrieves the gateway named "WAN_GW" from the OPNSense firewall. + +## PARAMETERS + +### -Name +The name of the gateway to retrieve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the gateways. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[New-OPNSenseGateway](New-OPNSenseGateway.md) +[Set-OPNSenseGateway](Set-OPNSenseGateway.md) +[Remove-OPNSenseGateway](Remove-OPNSenseGateway.md) diff --git a/docs/cmdlets/Get-OPNSenseInterface.md b/docs/cmdlets/Get-OPNSenseInterface.md new file mode 100644 index 0000000..a8e4fab --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseInterface.md @@ -0,0 +1,67 @@ +# Get-OPNSenseInterface + +## SYNOPSIS +Gets network interfaces from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseInterface [[-Name] ] +``` + +## DESCRIPTION +The Get-OPNSenseInterface cmdlet retrieves network interfaces from an OPNSense firewall. You can retrieve all interfaces or a specific interface by name. + +## EXAMPLES + +### Example 1: Get all interfaces +```powershell +Get-OPNSenseInterface +``` + +This example retrieves all network interfaces from the OPNSense firewall. + +### Example 2: Get a specific interface +```powershell +Get-OPNSenseInterface -Name "lan" +``` + +This example retrieves the LAN interface from the OPNSense firewall. + +## PARAMETERS + +### -Name +The name of the interface to retrieve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the network interfaces. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[Set-OPNSenseInterface](Set-OPNSenseInterface.md) +[Restart-OPNSenseInterface](Restart-OPNSenseInterface.md) +[Get-OPNSenseInterfaceStatistics](Get-OPNSenseInterfaceStatistics.md) diff --git a/docs/cmdlets/Get-OPNSenseInterfaceStatistics.md b/docs/cmdlets/Get-OPNSenseInterfaceStatistics.md new file mode 100644 index 0000000..f15d0d8 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseInterfaceStatistics.md @@ -0,0 +1,67 @@ +# Get-OPNSenseInterfaceStatistics + +## SYNOPSIS +Gets statistics for network interfaces on an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseInterfaceStatistics [[-Name] ] +``` + +## DESCRIPTION +The Get-OPNSenseInterfaceStatistics cmdlet retrieves statistics for network interfaces on an OPNSense firewall. You can retrieve statistics for all interfaces or a specific interface by name. + +## EXAMPLES + +### Example 1: Get statistics for all interfaces +```powershell +Get-OPNSenseInterfaceStatistics +``` + +This example retrieves statistics for all network interfaces on the OPNSense firewall. + +### Example 2: Get statistics for a specific interface +```powershell +Get-OPNSenseInterfaceStatistics -Name "lan" +``` + +This example retrieves statistics for the LAN interface on the OPNSense firewall. + +## PARAMETERS + +### -Name +The name of the interface to retrieve statistics for. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the interface statistics, including information such as packets sent/received, bytes sent/received, and errors. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[Get-OPNSenseInterface](Get-OPNSenseInterface.md) +[Set-OPNSenseInterface](Set-OPNSenseInterface.md) +[Restart-OPNSenseInterface](Restart-OPNSenseInterface.md) diff --git a/docs/cmdlets/Get-OPNSensePlugin.md b/docs/cmdlets/Get-OPNSensePlugin.md new file mode 100644 index 0000000..1aa83bb --- /dev/null +++ b/docs/cmdlets/Get-OPNSensePlugin.md @@ -0,0 +1,68 @@ +# Get-OPNSensePlugin + +## SYNOPSIS +Gets plugins from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSensePlugin [[-Name] ] +``` + +## DESCRIPTION +The Get-OPNSensePlugin cmdlet retrieves plugins from an OPNSense firewall. You can retrieve all plugins or a specific plugin by name. + +## EXAMPLES + +### Example 1: Get all plugins +```powershell +Get-OPNSensePlugin +``` + +This example retrieves all plugins from the OPNSense firewall. + +### Example 2: Get a specific plugin +```powershell +Get-OPNSensePlugin -Name "os-acme-client" +``` + +This example retrieves the plugin with the name "os-acme-client" from the OPNSense firewall. + +## PARAMETERS + +### -Name +The name of the plugin to retrieve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the plugins, including information such as name, version, and installation status. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[Install-OPNSensePlugin](Install-OPNSensePlugin.md) +[Uninstall-OPNSensePlugin](Uninstall-OPNSensePlugin.md) +[Enable-OPNSensePlugin](Enable-OPNSensePlugin.md) +[Disable-OPNSensePlugin](Disable-OPNSensePlugin.md) diff --git a/docs/cmdlets/Get-OPNSensePortForwardingRule.md b/docs/cmdlets/Get-OPNSensePortForwardingRule.md new file mode 100644 index 0000000..3d84bf9 --- /dev/null +++ b/docs/cmdlets/Get-OPNSensePortForwardingRule.md @@ -0,0 +1,67 @@ +# Get-OPNSensePortForwardingRule + +## SYNOPSIS +Gets port forwarding rules from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSensePortForwardingRule [[-UUID] ] +``` + +## DESCRIPTION +The Get-OPNSensePortForwardingRule cmdlet retrieves port forwarding rules from an OPNSense firewall. You can retrieve all rules or a specific rule by UUID. + +## EXAMPLES + +### Example 1: Get all port forwarding rules +```powershell +Get-OPNSensePortForwardingRule +``` + +This example retrieves all port forwarding rules from the OPNSense firewall. + +### Example 2: Get a specific port forwarding rule +```powershell +Get-OPNSensePortForwardingRule -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example retrieves a specific port forwarding rule by its UUID. + +## PARAMETERS + +### -UUID +The UUID of the port forwarding rule to retrieve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the port forwarding rules. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[New-OPNSensePortForwardingRule](New-OPNSensePortForwardingRule.md) +[Set-OPNSensePortForwardingRule](Set-OPNSensePortForwardingRule.md) +[Remove-OPNSensePortForwardingRule](Remove-OPNSensePortForwardingRule.md) diff --git a/docs/cmdlets/Get-OPNSenseRoute.md b/docs/cmdlets/Get-OPNSenseRoute.md new file mode 100644 index 0000000..d2dd855 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseRoute.md @@ -0,0 +1,67 @@ +# Get-OPNSenseRoute + +## SYNOPSIS +Gets static routes from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseRoute [[-UUID] ] +``` + +## DESCRIPTION +The Get-OPNSenseRoute cmdlet retrieves static routes from an OPNSense firewall. You can retrieve all routes or a specific route by UUID. + +## EXAMPLES + +### Example 1: Get all routes +```powershell +Get-OPNSenseRoute +``` + +This example retrieves all static routes from the OPNSense firewall. + +### Example 2: Get a specific route +```powershell +Get-OPNSenseRoute -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example retrieves a specific static route by its UUID. + +## PARAMETERS + +### -UUID +The UUID of the route to retrieve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the static routes. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[New-OPNSenseRoute](New-OPNSenseRoute.md) +[Set-OPNSenseRoute](Set-OPNSenseRoute.md) +[Remove-OPNSenseRoute](Remove-OPNSenseRoute.md) diff --git a/docs/cmdlets/Get-OPNSenseService.md b/docs/cmdlets/Get-OPNSenseService.md new file mode 100644 index 0000000..8468c4a --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseService.md @@ -0,0 +1,67 @@ +# Get-OPNSenseService + +## SYNOPSIS +Gets services from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseService [[-Name] ] +``` + +## DESCRIPTION +The Get-OPNSenseService cmdlet retrieves services from an OPNSense firewall. You can retrieve all services or a specific service by name. + +## EXAMPLES + +### Example 1: Get all services +```powershell +Get-OPNSenseService +``` + +This example retrieves all services from the OPNSense firewall. + +### Example 2: Get a specific service +```powershell +Get-OPNSenseService -Name "dhcpd" +``` + +This example retrieves the DHCP service from the OPNSense firewall. + +## PARAMETERS + +### -Name +The name of the service to retrieve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the services, including information such as name, description, and status. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[Start-OPNSenseService](Start-OPNSenseService.md) +[Stop-OPNSenseService](Stop-OPNSenseService.md) +[Restart-OPNSenseService](Restart-OPNSenseService.md) diff --git a/docs/cmdlets/Get-OPNSenseSystemDNS.md b/docs/cmdlets/Get-OPNSenseSystemDNS.md new file mode 100644 index 0000000..01dfce3 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseSystemDNS.md @@ -0,0 +1,45 @@ +# Get-OPNSenseSystemDNS + +## SYNOPSIS +Gets system DNS settings from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseSystemDNS +``` + +## DESCRIPTION +The Get-OPNSenseSystemDNS cmdlet retrieves system DNS settings from an OPNSense firewall, including DNS servers and domain search list. + +## EXAMPLES + +### Example 1: Get system DNS settings +```powershell +Get-OPNSenseSystemDNS +``` + +This example retrieves the system DNS settings from the OPNSense firewall. + +## PARAMETERS + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the system DNS settings, including DNS servers and domain search list. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[Set-OPNSenseSystemDNS](Set-OPNSenseSystemDNS.md) +[Get-OPNSenseDNSServer](Get-OPNSenseDNSServer.md) +[Set-OPNSenseDNSServer](Set-OPNSenseDNSServer.md) diff --git a/docs/cmdlets/Get-OPNSenseSystemInfo.md b/docs/cmdlets/Get-OPNSenseSystemInfo.md new file mode 100644 index 0000000..83ffcf8 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseSystemInfo.md @@ -0,0 +1,45 @@ +# Get-OPNSenseSystemInfo + +## SYNOPSIS +Gets system information from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseSystemInfo +``` + +## DESCRIPTION +The Get-OPNSenseSystemInfo cmdlet retrieves system information from an OPNSense firewall, including version, platform, hardware details, and installed packages. + +## EXAMPLES + +### Example 1: Get system information +```powershell +Get-OPNSenseSystemInfo +``` + +This example retrieves system information from the OPNSense firewall. + +## PARAMETERS + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the system information. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[Get-OPNSenseSystemStatus](Get-OPNSenseSystemStatus.md) +[Restart-OPNSenseSystem](Restart-OPNSenseSystem.md) +[Stop-OPNSenseSystem](Stop-OPNSenseSystem.md) diff --git a/docs/cmdlets/Get-OPNSenseSystemStatus.md b/docs/cmdlets/Get-OPNSenseSystemStatus.md new file mode 100644 index 0000000..1de4a52 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseSystemStatus.md @@ -0,0 +1,45 @@ +# Get-OPNSenseSystemStatus + +## SYNOPSIS +Gets system status information from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseSystemStatus +``` + +## DESCRIPTION +The Get-OPNSenseSystemStatus cmdlet retrieves system status information from an OPNSense firewall, including CPU usage, memory usage, disk usage, and uptime. + +## EXAMPLES + +### Example 1: Get system status +```powershell +Get-OPNSenseSystemStatus +``` + +This example retrieves system status information from the OPNSense firewall. + +## PARAMETERS + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the system status information. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[Get-OPNSenseSystemInfo](Get-OPNSenseSystemInfo.md) +[Restart-OPNSenseSystem](Restart-OPNSenseSystem.md) +[Stop-OPNSenseSystem](Stop-OPNSenseSystem.md) diff --git a/docs/cmdlets/Get-OPNSenseTailscaleConfig.md b/docs/cmdlets/Get-OPNSenseTailscaleConfig.md new file mode 100644 index 0000000..eec00cb --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseTailscaleConfig.md @@ -0,0 +1,48 @@ +# Get-OPNSenseTailscaleConfig + +## SYNOPSIS +Gets the Tailscale configuration from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseTailscaleConfig +``` + +## DESCRIPTION +The Get-OPNSenseTailscaleConfig cmdlet retrieves the Tailscale configuration from an OPNSense firewall, including settings such as authentication key, advertised routes, and exit node configuration. + +## EXAMPLES + +### Example 1: Get Tailscale configuration +```powershell +Get-OPNSenseTailscaleConfig +``` + +This example retrieves the Tailscale configuration from the OPNSense firewall. + +## PARAMETERS + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the Tailscale configuration. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +The Tailscale plugin must be installed on the OPNSense firewall. + +## RELATED LINKS + +[Set-OPNSenseTailscaleConfig](Set-OPNSenseTailscaleConfig.md) +[Enable-OPNSenseTailscale](Enable-OPNSenseTailscale.md) +[Disable-OPNSenseTailscale](Disable-OPNSenseTailscale.md) +[Get-OPNSenseTailscaleStatus](Get-OPNSenseTailscaleStatus.md) +[Install-OPNSenseTailscale](Install-OPNSenseTailscale.md) diff --git a/docs/cmdlets/Get-OPNSenseTailscaleStatus.md b/docs/cmdlets/Get-OPNSenseTailscaleStatus.md new file mode 100644 index 0000000..9ae1d77 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseTailscaleStatus.md @@ -0,0 +1,48 @@ +# Get-OPNSenseTailscaleStatus + +## SYNOPSIS +Gets the status of Tailscale on an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseTailscaleStatus +``` + +## DESCRIPTION +The Get-OPNSenseTailscaleStatus cmdlet retrieves the status of Tailscale on an OPNSense firewall, including connection state, node information, and subnet routes. + +## EXAMPLES + +### Example 1: Get Tailscale status +```powershell +Get-OPNSenseTailscaleStatus +``` + +This example retrieves the status of Tailscale on the OPNSense firewall. + +## PARAMETERS + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the Tailscale status. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +The Tailscale plugin must be installed and configured on the OPNSense firewall. + +## RELATED LINKS + +[Enable-OPNSenseTailscale](Enable-OPNSenseTailscale.md) +[Disable-OPNSenseTailscale](Disable-OPNSenseTailscale.md) +[Set-OPNSenseTailscaleConfig](Set-OPNSenseTailscaleConfig.md) +[Get-OPNSenseTailscaleConfig](Get-OPNSenseTailscaleConfig.md) +[Install-OPNSenseTailscale](Install-OPNSenseTailscale.md) diff --git a/docs/cmdlets/Get-OPNSenseUser.md b/docs/cmdlets/Get-OPNSenseUser.md new file mode 100644 index 0000000..05d3de8 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseUser.md @@ -0,0 +1,68 @@ +# Get-OPNSenseUser + +## SYNOPSIS +Gets users from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseUser [[-Username] ] +``` + +## DESCRIPTION +The Get-OPNSenseUser cmdlet retrieves users from an OPNSense firewall. You can retrieve all users or a specific user by username. + +## EXAMPLES + +### Example 1: Get all users +```powershell +Get-OPNSenseUser +``` + +This example retrieves all users from the OPNSense firewall. + +### Example 2: Get a specific user +```powershell +Get-OPNSenseUser -Username "admin" +``` + +This example retrieves the user with the username "admin" from the OPNSense firewall. + +## PARAMETERS + +### -Username +The username of the user to retrieve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the users. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +For security reasons, user passwords are not included in the output. + +## RELATED LINKS + +[New-OPNSenseUser](New-OPNSenseUser.md) +[Set-OPNSenseUser](Set-OPNSenseUser.md) +[Remove-OPNSenseUser](Remove-OPNSenseUser.md) diff --git a/docs/cmdlets/Get-OPNSenseVLAN.md b/docs/cmdlets/Get-OPNSenseVLAN.md new file mode 100644 index 0000000..9aa71c3 --- /dev/null +++ b/docs/cmdlets/Get-OPNSenseVLAN.md @@ -0,0 +1,68 @@ +# Get-OPNSenseVLAN + +## SYNOPSIS +Gets VLANs from an OPNSense firewall. + +## SYNTAX + +``` +Get-OPNSenseVLAN [[-UUID] ] +``` + +## DESCRIPTION +The Get-OPNSenseVLAN cmdlet retrieves VLANs from an OPNSense firewall. You can retrieve all VLANs or a specific VLAN by UUID. + +## EXAMPLES + +### Example 1: Get all VLANs +```powershell +Get-OPNSenseVLAN +``` + +This example retrieves all VLANs from the OPNSense firewall. + +### Example 2: Get a specific VLAN +```powershell +Get-OPNSenseVLAN -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example retrieves a specific VLAN by its UUID. + +## PARAMETERS + +### -UUID +The UUID of the VLAN to retrieve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the VLANs. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. + +## RELATED LINKS + +[New-OPNSenseVLAN](New-OPNSenseVLAN.md) +[Set-OPNSenseVLAN](Set-OPNSenseVLAN.md) +[Remove-OPNSenseVLAN](Remove-OPNSenseVLAN.md) +[New-OPNSenseSubnetVLANs](New-OPNSenseSubnetVLANs.md) diff --git a/docs/cmdlets/Install-OPNSensePlugin.md b/docs/cmdlets/Install-OPNSensePlugin.md new file mode 100644 index 0000000..0f3f709 --- /dev/null +++ b/docs/cmdlets/Install-OPNSensePlugin.md @@ -0,0 +1,101 @@ +# Install-OPNSensePlugin + +## SYNOPSIS +Installs a plugin on an OPNSense firewall. + +## SYNTAX + +``` +Install-OPNSensePlugin -Name [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Install-OPNSensePlugin cmdlet installs a plugin on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Install a plugin +```powershell +Install-OPNSensePlugin -Name "os-acme-client" +``` + +This example installs the plugin with the name "os-acme-client" on the OPNSense firewall. + +### Example 2: Install a plugin with confirmation +```powershell +Install-OPNSensePlugin -Name "os-theme-cicada" -Confirm +``` + +This example prompts for confirmation before installing the plugin. + +## PARAMETERS + +### -Name +The name of the plugin to install. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the plugin name to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Installing plugins may require a reboot of the firewall for the changes to take effect. +Some plugins may have dependencies that need to be installed first. + +## RELATED LINKS + +[Get-OPNSensePlugin](Get-OPNSensePlugin.md) +[Uninstall-OPNSensePlugin](Uninstall-OPNSensePlugin.md) +[Enable-OPNSensePlugin](Enable-OPNSensePlugin.md) +[Disable-OPNSensePlugin](Disable-OPNSensePlugin.md) diff --git a/docs/cmdlets/Install-OPNSenseTailscale.md b/docs/cmdlets/Install-OPNSenseTailscale.md new file mode 100644 index 0000000..4f320e8 --- /dev/null +++ b/docs/cmdlets/Install-OPNSenseTailscale.md @@ -0,0 +1,86 @@ +# Install-OPNSenseTailscale + +## SYNOPSIS +Installs the Tailscale plugin on an OPNSense firewall. + +## SYNTAX + +``` +Install-OPNSenseTailscale [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Install-OPNSenseTailscale cmdlet installs the Tailscale plugin on an OPNSense firewall if it is not already installed. + +## EXAMPLES + +### Example 1: Install Tailscale +```powershell +Install-OPNSenseTailscale +``` + +This example installs the Tailscale plugin on the OPNSense firewall. + +### Example 2: Install Tailscale with confirmation +```powershell +Install-OPNSenseTailscale -Confirm +``` + +This example prompts for confirmation before installing the Tailscale plugin. + +## PARAMETERS + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After installing the Tailscale plugin, you need to configure it using Set-OPNSenseTailscaleConfig and enable it using Enable-OPNSenseTailscale. +The firewall may need to be restarted after installing the plugin. + +## RELATED LINKS + +[Get-OPNSenseTailscaleStatus](Get-OPNSenseTailscaleStatus.md) +[Get-OPNSenseTailscaleConfig](Get-OPNSenseTailscaleConfig.md) +[Set-OPNSenseTailscaleConfig](Set-OPNSenseTailscaleConfig.md) +[Enable-OPNSenseTailscale](Enable-OPNSenseTailscale.md) +[Disable-OPNSenseTailscale](Disable-OPNSenseTailscale.md) diff --git a/docs/cmdlets/New-OPNSenseAlias.md b/docs/cmdlets/New-OPNSenseAlias.md new file mode 100644 index 0000000..82ba192 --- /dev/null +++ b/docs/cmdlets/New-OPNSenseAlias.md @@ -0,0 +1,166 @@ +# New-OPNSenseAlias + +## SYNOPSIS +Creates a new alias on an OPNSense firewall. + +## SYNTAX + +``` +New-OPNSenseAlias -Name -Type -Content [-Description ] [-Enabled ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The New-OPNSenseAlias cmdlet creates a new alias on an OPNSense firewall. Aliases are used to define groups of network objects that can be referenced in firewall rules. + +## EXAMPLES + +### Example 1: Create a new host alias +```powershell +New-OPNSenseAlias -Name "WebServers" -Type "host" -Content "192.168.1.10", "192.168.1.11" -Description "Web Servers" +``` + +This example creates a new host alias named "WebServers" containing two IP addresses. + +### Example 2: Create a new network alias +```powershell +New-OPNSenseAlias -Name "RemoteNetworks" -Type "network" -Content "10.0.0.0/24", "172.16.0.0/16" -Description "Remote Networks" +``` + +This example creates a new network alias named "RemoteNetworks" containing two network ranges. + +### Example 3: Create a new port alias +```powershell +New-OPNSenseAlias -Name "WebPorts" -Type "port" -Content "80", "443" -Description "Web Ports" +``` + +This example creates a new port alias named "WebPorts" containing two port numbers. + +## PARAMETERS + +### -Name +The name of the alias to create. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Type +The type of the alias (host, network, port, url, urltable, geoip). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Content +The content of the alias, which depends on the type. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the alias. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Enabled +Whether the alias is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: True +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the newly created alias. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After creating an alias, you may need to apply the changes for them to take effect. +Alias names must be unique and should not contain spaces or special characters. + +## RELATED LINKS + +[Get-OPNSenseAlias](Get-OPNSenseAlias.md) +[Set-OPNSenseAlias](Set-OPNSenseAlias.md) +[Remove-OPNSenseAlias](Remove-OPNSenseAlias.md) diff --git a/docs/cmdlets/New-OPNSenseCronJob.md b/docs/cmdlets/New-OPNSenseCronJob.md new file mode 100644 index 0000000..68c7594 --- /dev/null +++ b/docs/cmdlets/New-OPNSenseCronJob.md @@ -0,0 +1,217 @@ +# New-OPNSenseCronJob + +## SYNOPSIS +Creates a new cron job on an OPNSense firewall. + +## SYNTAX + +``` +New-OPNSenseCronJob -Minutes -Hours -Days -Months -Weekdays -Command + [-Description ] [-Enabled ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The New-OPNSenseCronJob cmdlet creates a new cron job on an OPNSense firewall. Cron jobs are used to schedule commands or scripts to run at specified times. + +## EXAMPLES + +### Example 1: Create a daily backup cron job +```powershell +New-OPNSenseCronJob -Minutes "0" -Hours "2" -Days "*" -Months "*" -Weekdays "*" -Command "/usr/local/bin/backup.sh" -Description "Daily Backup" +``` + +This example creates a cron job that runs a backup script at 2:00 AM every day. + +### Example 2: Create a weekly reboot cron job +```powershell +New-OPNSenseCronJob -Minutes "0" -Hours "4" -Days "*" -Months "*" -Weekdays "0" -Command "/sbin/reboot" -Description "Weekly Reboot" +``` + +This example creates a cron job that reboots the firewall at 4:00 AM every Sunday. + +### Example 3: Create a monthly log cleanup cron job +```powershell +New-OPNSenseCronJob -Minutes "30" -Hours "1" -Days "1" -Months "*" -Weekdays "*" -Command "/usr/local/bin/cleanup_logs.sh" -Description "Monthly Log Cleanup" +``` + +This example creates a cron job that runs a log cleanup script at 1:30 AM on the first day of each month. + +## PARAMETERS + +### -Minutes +The minutes field of the cron job (0-59, *, */5, etc.). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Hours +The hours field of the cron job (0-23, *, */2, etc.). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Days +The days field of the cron job (1-31, *, */2, etc.). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Months +The months field of the cron job (1-12, *, */2, etc.). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Weekdays +The weekdays field of the cron job (0-7, *, etc., where 0 and 7 are Sunday). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Command +The command to execute. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the cron job. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Enabled +Whether the cron job is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: True +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the newly created cron job. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +The cron job time fields use standard cron syntax: +- * means all values +- */n means every n values +- n-m means values from n to m +- n,m means values n and m + +## RELATED LINKS + +[Get-OPNSenseCronJob](Get-OPNSenseCronJob.md) +[Set-OPNSenseCronJob](Set-OPNSenseCronJob.md) +[Remove-OPNSenseCronJob](Remove-OPNSenseCronJob.md) +[Enable-OPNSenseCronJob](Enable-OPNSenseCronJob.md) +[Disable-OPNSenseCronJob](Disable-OPNSenseCronJob.md) diff --git a/docs/cmdlets/New-OPNSenseDHCPOption.md b/docs/cmdlets/New-OPNSenseDHCPOption.md new file mode 100644 index 0000000..0b63d5a --- /dev/null +++ b/docs/cmdlets/New-OPNSenseDHCPOption.md @@ -0,0 +1,162 @@ +# New-OPNSenseDHCPOption + +## SYNOPSIS +Creates a new DHCP option on an OPNSense firewall. + +## SYNTAX + +``` +New-OPNSenseDHCPOption -Interface -Number -Type -Value [-Description ] + [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The New-OPNSenseDHCPOption cmdlet creates a new DHCP option on an OPNSense firewall. DHCP options allow you to provide additional configuration information to DHCP clients. + +## EXAMPLES + +### Example 1: Create a new DHCP option for TFTP server +```powershell +New-OPNSenseDHCPOption -Interface "lan" -Number 66 -Type "string" -Value "tftp.example.com" -Description "TFTP Server" +``` + +This example creates a new DHCP option 66 (TFTP server name) for the LAN interface. + +### Example 2: Create a new DHCP option for boot filename +```powershell +New-OPNSenseDHCPOption -Interface "lan" -Number 67 -Type "string" -Value "pxelinux.0" -Description "Boot Filename" +``` + +This example creates a new DHCP option 67 (boot filename) for the LAN interface. + +## PARAMETERS + +### -Interface +The interface on which to create the DHCP option. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Number +The option number to create. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Type +The type of the DHCP option (string, integer, boolean, etc.). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Value +The value of the DHCP option. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the DHCP option. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the newly created DHCP option. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After creating a DHCP option, the DHCP server service may need to be restarted for the changes to take effect. +The DHCP server must be enabled on the specified interface for options to be provided to clients. + +## RELATED LINKS + +[Get-OPNSenseDHCPOption](Get-OPNSenseDHCPOption.md) +[Set-OPNSenseDHCPOption](Set-OPNSenseDHCPOption.md) +[Remove-OPNSenseDHCPOption](Remove-OPNSenseDHCPOption.md) +[Get-OPNSenseDHCPServer](Get-OPNSenseDHCPServer.md) +[Set-OPNSenseDHCPServer](Set-OPNSenseDHCPServer.md) diff --git a/docs/cmdlets/New-OPNSenseDHCPStaticMapping.md b/docs/cmdlets/New-OPNSenseDHCPStaticMapping.md new file mode 100644 index 0000000..d244ecb --- /dev/null +++ b/docs/cmdlets/New-OPNSenseDHCPStaticMapping.md @@ -0,0 +1,240 @@ +# New-OPNSenseDHCPStaticMapping + +## SYNOPSIS +Creates a new DHCP static mapping on an OPNSense firewall. + +## SYNTAX + +``` +New-OPNSenseDHCPStaticMapping -Interface -MAC -IP [-Hostname ] [-Description ] + [-DNSServers ] [-Domain ] [-Gateway ] [-ARP ] + [-Disabled ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The New-OPNSenseDHCPStaticMapping cmdlet creates a new DHCP static mapping on an OPNSense firewall. This allows you to assign a specific IP address to a device based on its MAC address. + +## EXAMPLES + +### Example 1: Create a new DHCP static mapping +```powershell +New-OPNSenseDHCPStaticMapping -Interface "lan" -MAC "00:11:22:33:44:55" -IP "192.168.1.50" -Hostname "printer" -Description "Office Printer" +``` + +This example creates a new DHCP static mapping for a device with the specified MAC address on the LAN interface. + +### Example 2: Create a new DHCP static mapping with custom DNS settings +```powershell +New-OPNSenseDHCPStaticMapping -Interface "lan" -MAC "AA:BB:CC:DD:EE:FF" -IP "192.168.1.60" -Hostname "server" -Description "File Server" -DNSServers "192.168.1.1", "8.8.8.8" -Domain "example.local" +``` + +This example creates a new DHCP static mapping with custom DNS servers and domain. + +## PARAMETERS + +### -Interface +The interface on which to create the DHCP static mapping. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -MAC +The MAC address of the device. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IP +The IP address to assign to the device. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Hostname +The hostname to assign to the device. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the DHCP static mapping. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DNSServers +The DNS servers to provide to the device. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Domain +The domain name to provide to the device. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Gateway +The gateway to provide to the device. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ARP +Whether to create an ARP table entry for this device. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: True +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Disabled +Whether the DHCP static mapping is disabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the newly created DHCP static mapping. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After creating a DHCP static mapping, the DHCP server service may need to be restarted for the changes to take effect. +The DHCP server must be enabled on the specified interface for static mappings to work. + +## RELATED LINKS + +[Get-OPNSenseDHCPStaticMapping](Get-OPNSenseDHCPStaticMapping.md) +[Set-OPNSenseDHCPStaticMapping](Set-OPNSenseDHCPStaticMapping.md) +[Remove-OPNSenseDHCPStaticMapping](Remove-OPNSenseDHCPStaticMapping.md) +[Get-OPNSenseDHCPServer](Get-OPNSenseDHCPServer.md) +[Set-OPNSenseDHCPServer](Set-OPNSenseDHCPServer.md) +[Get-OPNSenseDHCPLease](Get-OPNSenseDHCPLease.md) +[Remove-OPNSenseDHCPLease](Remove-OPNSenseDHCPLease.md) diff --git a/docs/cmdlets/New-OPNSenseDNSForwardingHost.md b/docs/cmdlets/New-OPNSenseDNSForwardingHost.md new file mode 100644 index 0000000..6ce64ae --- /dev/null +++ b/docs/cmdlets/New-OPNSenseDNSForwardingHost.md @@ -0,0 +1,146 @@ +# New-OPNSenseDNSForwardingHost + +## SYNOPSIS +Creates a new DNS forwarding host on an OPNSense firewall. + +## SYNTAX + +``` +New-OPNSenseDNSForwardingHost -Domain -Server [-Description ] [-Disabled ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The New-OPNSenseDNSForwardingHost cmdlet creates a new DNS forwarding host on an OPNSense firewall. This allows you to forward DNS queries for specific domains to specific DNS servers. + +## EXAMPLES + +### Example 1: Create a new DNS forwarding host +```powershell +New-OPNSenseDNSForwardingHost -Domain "example.com" -Server "192.168.1.10" -Description "Internal DNS Server" +``` + +This example creates a new DNS forwarding host that forwards queries for example.com to the DNS server at 192.168.1.10. + +### Example 2: Create a disabled DNS forwarding host +```powershell +New-OPNSenseDNSForwardingHost -Domain "test.local" -Server "10.0.0.53" -Description "Test DNS Server" -Disabled $true +``` + +This example creates a new DNS forwarding host that is initially disabled. + +## PARAMETERS + +### -Domain +The domain for which DNS queries should be forwarded. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Server +The DNS server to which queries for the domain should be forwarded. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the DNS forwarding host. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Disabled +Whether the DNS forwarding host is disabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the newly created DNS forwarding host. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After creating a DNS forwarding host, you may need to apply the changes for them to take effect. +DNS forwarding must be enabled using Set-OPNSenseDNSForwarding for these settings to be used. + +## RELATED LINKS + +[Get-OPNSenseDNSForwardingHost](Get-OPNSenseDNSForwardingHost.md) +[Set-OPNSenseDNSForwardingHost](Set-OPNSenseDNSForwardingHost.md) +[Remove-OPNSenseDNSForwardingHost](Remove-OPNSenseDNSForwardingHost.md) +[Get-OPNSenseDNSForwarding](Get-OPNSenseDNSForwarding.md) +[Set-OPNSenseDNSForwarding](Set-OPNSenseDNSForwarding.md) diff --git a/docs/cmdlets/New-OPNSenseDNSOverride.md b/docs/cmdlets/New-OPNSenseDNSOverride.md new file mode 100644 index 0000000..691f874 --- /dev/null +++ b/docs/cmdlets/New-OPNSenseDNSOverride.md @@ -0,0 +1,158 @@ +# New-OPNSenseDNSOverride + +## SYNOPSIS +Creates a new DNS override on an OPNSense firewall. + +## SYNTAX + +``` +New-OPNSenseDNSOverride -Host -Domain -IP [-Description ] [-Disabled ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The New-OPNSenseDNSOverride cmdlet creates a new DNS override on an OPNSense firewall. This allows you to override DNS resolution for specific hosts. + +## EXAMPLES + +### Example 1: Create a new DNS override +```powershell +New-OPNSenseDNSOverride -Host "server" -Domain "example.com" -IP "192.168.1.10" -Description "Internal Server" +``` + +This example creates a new DNS override that resolves server.example.com to 192.168.1.10. + +### Example 2: Create a disabled DNS override +```powershell +New-OPNSenseDNSOverride -Host "test" -Domain "local" -IP "10.0.0.5" -Description "Test Server" -Disabled $true +``` + +This example creates a new DNS override that is initially disabled. + +## PARAMETERS + +### -Host +The hostname part of the DNS override. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Domain +The domain part of the DNS override. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IP +The IP address to which the hostname should resolve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the DNS override. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Disabled +Whether the DNS override is disabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the newly created DNS override. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After creating a DNS override, you may need to apply the changes for them to take effect. + +## RELATED LINKS + +[Get-OPNSenseDNSOverride](Get-OPNSenseDNSOverride.md) +[Set-OPNSenseDNSOverride](Set-OPNSenseDNSOverride.md) +[Remove-OPNSenseDNSOverride](Remove-OPNSenseDNSOverride.md) diff --git a/docs/cmdlets/New-OPNSenseFirewallRule.md b/docs/cmdlets/New-OPNSenseFirewallRule.md new file mode 100644 index 0000000..19b6d8c --- /dev/null +++ b/docs/cmdlets/New-OPNSenseFirewallRule.md @@ -0,0 +1,314 @@ +# New-OPNSenseFirewallRule + +## SYNOPSIS +Creates a new firewall rule on an OPNSense firewall. + +## SYNTAX + +``` +New-OPNSenseFirewallRule -Action -Interface -Protocol [-Source ] [-SourcePort ] + [-Destination ] [-DestinationPort ] [-Description ] [-Enabled ] + [-Direction ] [-IPProtocol ] [-Gateway ] [-Log ] + [-Sequence ] [-Category ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The New-OPNSenseFirewallRule cmdlet creates a new firewall rule on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Create a basic firewall rule +```powershell +New-OPNSenseFirewallRule -Action "pass" -Interface "lan" -Protocol "tcp" -Destination "any" -DestinationPort "80" -Description "Allow HTTP" +``` + +This example creates a firewall rule to allow HTTP traffic on the LAN interface. + +### Example 2: Create a more complex firewall rule +```powershell +New-OPNSenseFirewallRule -Action "block" -Interface "wan" -Protocol "tcp/udp" -Source "10.0.0.0/24" -SourcePort "any" -Destination "192.168.1.0/24" -DestinationPort "3389" -Description "Block RDP" -Direction "in" -Log $true +``` + +This example creates a firewall rule to block RDP traffic from a specific source network to a specific destination network, with logging enabled. + +## PARAMETERS + +### -Action +The action to take for the rule (pass, block, reject). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Interface +The interface to apply the rule to. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Protocol +The protocol for the rule (tcp, udp, tcp/udp, icmp, etc.). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Source +The source address or network for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: any +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SourcePort +The source port for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: any +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Destination +The destination address or network for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: any +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DestinationPort +The destination port for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: any +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Enabled +Whether the rule is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: True +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Direction +The direction for the rule (in, out). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: in +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IPProtocol +The IP protocol version for the rule (inet, inet6). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: inet +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Gateway +The gateway to use for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Log +Whether to log matches for the rule. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Sequence +The sequence number for the rule. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: 0 +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Category +The category for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the newly created firewall rule. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After creating firewall rules, you need to apply the changes using Apply-OPNSenseFirewallChanges. + +## RELATED LINKS + +[Get-OPNSenseFirewallRule](Get-OPNSenseFirewallRule.md) +[Set-OPNSenseFirewallRule](Set-OPNSenseFirewallRule.md) +[Remove-OPNSenseFirewallRule](Remove-OPNSenseFirewallRule.md) +[Enable-OPNSenseFirewallRule](Enable-OPNSenseFirewallRule.md) +[Disable-OPNSenseFirewallRule](Disable-OPNSenseFirewallRule.md) +[Apply-OPNSenseFirewallChanges](Apply-OPNSenseFirewallChanges.md) diff --git a/docs/cmdlets/New-OPNSenseGateway.md b/docs/cmdlets/New-OPNSenseGateway.md new file mode 100644 index 0000000..c7eaedd --- /dev/null +++ b/docs/cmdlets/New-OPNSenseGateway.md @@ -0,0 +1,219 @@ +# New-OPNSenseGateway + +## SYNOPSIS +Creates a new gateway on an OPNSense firewall. + +## SYNTAX + +``` +New-OPNSenseGateway -Name -Interface -IPv4Address [-Description ] [-Priority ] + [-Weight ] [-Disabled ] [-Monitor ] [-MonitorIP ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The New-OPNSenseGateway cmdlet creates a new gateway on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Create a new gateway +```powershell +New-OPNSenseGateway -Name "Backup_WAN" -Interface "opt1" -IPv4Address "203.0.113.1" -Description "Backup WAN Gateway" +``` + +This example creates a new gateway named "Backup_WAN" on the opt1 interface with the specified IPv4 address. + +### Example 2: Create a new gateway with monitoring +```powershell +New-OPNSenseGateway -Name "ISP2" -Interface "wan2" -IPv4Address "198.51.100.1" -Description "Secondary ISP" -Monitor $true -MonitorIP "198.51.100.254" +``` + +This example creates a new gateway with monitoring enabled and a specific IP to monitor. + +## PARAMETERS + +### -Name +The name of the gateway. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Interface +The interface for the gateway. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IPv4Address +The IPv4 address of the gateway. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the gateway. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Priority +The priority of the gateway (1-255, lower is higher priority). + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Weight +The weight of the gateway for load balancing. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Disabled +Whether the gateway is disabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Monitor +Whether to monitor the gateway. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -MonitorIP +The IP address to monitor for gateway status. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the newly created gateway. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After creating a gateway, you may need to apply the changes for them to take effect. + +## RELATED LINKS + +[Get-OPNSenseGateway](Get-OPNSenseGateway.md) +[Set-OPNSenseGateway](Set-OPNSenseGateway.md) +[Remove-OPNSenseGateway](Remove-OPNSenseGateway.md) diff --git a/docs/cmdlets/New-OPNSensePortForwardingRule.md b/docs/cmdlets/New-OPNSensePortForwardingRule.md new file mode 100644 index 0000000..759f7c1 --- /dev/null +++ b/docs/cmdlets/New-OPNSensePortForwardingRule.md @@ -0,0 +1,251 @@ +# New-OPNSensePortForwardingRule + +## SYNOPSIS +Creates a new port forwarding rule on an OPNSense firewall. + +## SYNTAX + +``` +New-OPNSensePortForwardingRule -Interface -Protocol -SourceAddress [-SourcePort ] + -DestinationAddress -DestinationPort -TargetIP [-TargetPort ] + [-Description ] [-Enabled ] [-NATReflection ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The New-OPNSensePortForwardingRule cmdlet creates a new port forwarding rule on an OPNSense firewall. Port forwarding rules allow external traffic to be redirected to internal hosts. + +## EXAMPLES + +### Example 1: Create a basic port forwarding rule +```powershell +New-OPNSensePortForwardingRule -Interface "wan" -Protocol "tcp" -SourceAddress "any" -DestinationAddress "WAN address" -DestinationPort "80" -TargetIP "192.168.1.10" -TargetPort "80" -Description "Web Server" +``` + +This example creates a port forwarding rule that forwards HTTP traffic to an internal web server. + +### Example 2: Create a port forwarding rule with a specific source +```powershell +New-OPNSensePortForwardingRule -Interface "wan" -Protocol "tcp" -SourceAddress "203.0.113.0/24" -SourcePort "any" -DestinationAddress "WAN address" -DestinationPort "3389" -TargetIP "192.168.1.20" -TargetPort "3389" -Description "RDP Access" -NATReflection "disable" +``` + +This example creates a port forwarding rule that allows RDP access only from a specific network, with NAT reflection disabled. + +## PARAMETERS + +### -Interface +The interface on which the rule applies. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Protocol +The protocol for the rule (tcp, udp, tcp/udp). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SourceAddress +The source address or network for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SourcePort +The source port for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: any +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DestinationAddress +The destination address for the rule (usually "WAN address"). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DestinationPort +The destination port for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -TargetIP +The internal IP address to which traffic will be forwarded. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -TargetPort +The internal port to which traffic will be forwarded. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Enabled +Whether the rule is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: True +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -NATReflection +The NAT reflection mode for the rule (enable, disable, system default). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: system default +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the newly created port forwarding rule. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After creating a port forwarding rule, you may need to apply the changes for them to take effect. +Port forwarding rules may require corresponding firewall rules to allow the traffic. + +## RELATED LINKS + +[Get-OPNSensePortForwardingRule](Get-OPNSensePortForwardingRule.md) +[Set-OPNSensePortForwardingRule](Set-OPNSensePortForwardingRule.md) +[Remove-OPNSensePortForwardingRule](Remove-OPNSensePortForwardingRule.md) diff --git a/docs/cmdlets/New-OPNSenseRoute.md b/docs/cmdlets/New-OPNSenseRoute.md new file mode 100644 index 0000000..ec69930 --- /dev/null +++ b/docs/cmdlets/New-OPNSenseRoute.md @@ -0,0 +1,143 @@ +# New-OPNSenseRoute + +## SYNOPSIS +Creates a new static route on an OPNSense firewall. + +## SYNTAX + +``` +New-OPNSenseRoute -Network -Gateway [-Description ] [-Disabled ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The New-OPNSenseRoute cmdlet creates a new static route on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Create a new static route +```powershell +New-OPNSenseRoute -Network "192.168.100.0/24" -Gateway "WAN_GW" -Description "Remote Office Network" +``` + +This example creates a new static route to the 192.168.100.0/24 network via the WAN_GW gateway. + +### Example 2: Create a disabled static route +```powershell +New-OPNSenseRoute -Network "10.10.0.0/16" -Gateway "Backup_WAN" -Description "Backup Route" -Disabled $true +``` + +This example creates a new static route that is initially disabled. + +## PARAMETERS + +### -Network +The destination network in CIDR notation. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Gateway +The gateway to use for the route. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the route. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Disabled +Whether the route is disabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the newly created static route. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After creating a static route, you may need to apply the changes for them to take effect. + +## RELATED LINKS + +[Get-OPNSenseRoute](Get-OPNSenseRoute.md) +[Set-OPNSenseRoute](Set-OPNSenseRoute.md) +[Remove-OPNSenseRoute](Remove-OPNSenseRoute.md) diff --git a/docs/cmdlets/New-OPNSenseSubnetVLANs.md b/docs/cmdlets/New-OPNSenseSubnetVLANs.md new file mode 100644 index 0000000..88c8d49 --- /dev/null +++ b/docs/cmdlets/New-OPNSenseSubnetVLANs.md @@ -0,0 +1,252 @@ +# New-OPNSenseSubnetVLANs + +## SYNOPSIS +Creates multiple VLANs and interfaces for a subnet on an OPNSense firewall. + +## SYNTAX + +``` +New-OPNSenseSubnetVLANs -Device -Subnet -VLANStart -VLANCount [-Description ] + [-DHCP ] [-DHCPStart ] [-DHCPEnd ] [-DHCPDNSServer ] + [-DHCPDomain ] [-DHCPLeaseTime ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The New-OPNSenseSubnetVLANs cmdlet creates multiple VLANs and interfaces for a subnet on an OPNSense firewall. This is useful for quickly setting up a network with multiple VLANs. + +## EXAMPLES + +### Example 1: Create multiple VLANs for a subnet +```powershell +New-OPNSenseSubnetVLANs -Device "igb0" -Subnet "10.0.0.0/16" -VLANStart 100 -VLANCount 5 -Description "Department VLANs" +``` + +This example creates 5 VLANs starting at VLAN 100 on the igb0 interface, with subnets derived from 10.0.0.0/16. + +### Example 2: Create multiple VLANs with DHCP enabled +```powershell +New-OPNSenseSubnetVLANs -Device "igb0" -Subnet "192.168.0.0/16" -VLANStart 200 -VLANCount 3 -Description "Guest VLANs" -DHCP $true -DHCPDNSServer "8.8.8.8,8.8.4.4" -DHCPDomain "example.com" +``` + +This example creates 3 VLANs starting at VLAN 200 on the igb0 interface, with subnets derived from 192.168.0.0/16, and DHCP enabled with custom DNS servers and domain. + +## PARAMETERS + +### -Device +The physical interface to create the VLANs on. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Subnet +The base subnet in CIDR notation (e.g., 10.0.0.0/16). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -VLANStart +The starting VLAN tag. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -VLANCount +The number of VLANs to create. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description prefix for the VLANs. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DHCP +Whether to enable DHCP on the VLAN interfaces. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DHCPStart +The starting IP offset for the DHCP range. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: 100 +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DHCPEnd +The ending IP offset for the DHCP range. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: 200 +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DHCPDNSServer +The DNS servers for DHCP clients. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DHCPDomain +The domain name for DHCP clients. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DHCPLeaseTime +The lease time for DHCP clients. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: 7200 +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns objects representing the created VLANs and interfaces. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +This cmdlet creates multiple VLANs and interfaces in a single operation, which can be useful for setting up a network quickly. +The subnet is divided into smaller subnets based on the number of VLANs requested. + +## RELATED LINKS + +[Get-OPNSenseVLAN](Get-OPNSenseVLAN.md) +[New-OPNSenseVLAN](New-OPNSenseVLAN.md) +[Set-OPNSenseVLAN](Set-OPNSenseVLAN.md) +[Remove-OPNSenseVLAN](Remove-OPNSenseVLAN.md) diff --git a/docs/cmdlets/New-OPNSenseUser.md b/docs/cmdlets/New-OPNSenseUser.md new file mode 100644 index 0000000..5e432d7 --- /dev/null +++ b/docs/cmdlets/New-OPNSenseUser.md @@ -0,0 +1,215 @@ +# New-OPNSenseUser + +## SYNOPSIS +Creates a new user on an OPNSense firewall. + +## SYNTAX + +``` +New-OPNSenseUser -Username -Password [-FullName ] [-Email ] [-Comment ] + [-Disabled ] [-ExpireDate ] [-AuthGroup ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The New-OPNSenseUser cmdlet creates a new user on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Create a new user +```powershell +$password = ConvertTo-SecureString "P@ssw0rd" -AsPlainText -Force +New-OPNSenseUser -Username "newuser" -Password $password -FullName "New User" -Email "newuser@example.com" +``` + +This example creates a new user with the specified username, password, full name, and email address. + +### Example 2: Create a new user with an expiration date +```powershell +$password = ConvertTo-SecureString "P@ssw0rd" -AsPlainText -Force +$expireDate = (Get-Date).AddMonths(3) +New-OPNSenseUser -Username "tempuser" -Password $password -FullName "Temporary User" -ExpireDate $expireDate -Comment "Temporary access" +``` + +This example creates a new user that will expire in 3 months. + +### Example 3: Create a new user with specific authorization groups +```powershell +$password = ConvertTo-SecureString "P@ssw0rd" -AsPlainText -Force +New-OPNSenseUser -Username "adminuser" -Password $password -FullName "Admin User" -AuthGroup "admins", "vpnusers" +``` + +This example creates a new user and assigns them to the "admins" and "vpnusers" authorization groups. + +## PARAMETERS + +### -Username +The username for the new user. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Password +The password for the new user as a SecureString. + +```yaml +Type: SecureString +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -FullName +The full name of the user. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Email +The email address of the user. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Comment +A comment or description for the user. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Disabled +Whether the user account is disabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: False +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ExpireDate +The date when the user account will expire. + +```yaml +Type: DateTime +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -AuthGroup +The authorization groups to which the user belongs. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the newly created user. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +For security reasons, it is recommended to use a SecureString for the password parameter. + +## RELATED LINKS + +[Get-OPNSenseUser](Get-OPNSenseUser.md) +[Set-OPNSenseUser](Set-OPNSenseUser.md) +[Remove-OPNSenseUser](Remove-OPNSenseUser.md) diff --git a/docs/cmdlets/New-OPNSenseVLAN.md b/docs/cmdlets/New-OPNSenseVLAN.md new file mode 100644 index 0000000..6a043ec --- /dev/null +++ b/docs/cmdlets/New-OPNSenseVLAN.md @@ -0,0 +1,144 @@ +# New-OPNSenseVLAN + +## SYNOPSIS +Creates a new VLAN on an OPNSense firewall. + +## SYNTAX + +``` +New-OPNSenseVLAN -Device -Tag [-Priority ] [-Description ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The New-OPNSenseVLAN cmdlet creates a new VLAN on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Create a new VLAN +```powershell +New-OPNSenseVLAN -Device "igb0" -Tag 10 -Description "Management VLAN" +``` + +This example creates a new VLAN with tag 10 on the igb0 interface with a description of "Management VLAN". + +### Example 2: Create a new VLAN with priority +```powershell +New-OPNSenseVLAN -Device "igb0" -Tag 20 -Priority 5 -Description "Voice VLAN" +``` + +This example creates a new VLAN with tag 20 and priority 5 on the igb0 interface with a description of "Voice VLAN". + +## PARAMETERS + +### -Device +The physical interface to create the VLAN on. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Tag +The VLAN tag (1-4094). + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Priority +The VLAN priority (0-7). + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the VLAN. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the newly created VLAN. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After creating a VLAN, you may need to configure an interface to use it. + +## RELATED LINKS + +[Get-OPNSenseVLAN](Get-OPNSenseVLAN.md) +[Set-OPNSenseVLAN](Set-OPNSenseVLAN.md) +[Remove-OPNSenseVLAN](Remove-OPNSenseVLAN.md) +[New-OPNSenseSubnetVLANs](New-OPNSenseSubnetVLANs.md) diff --git a/docs/cmdlets/Remove-OPNSenseAlias.md b/docs/cmdlets/Remove-OPNSenseAlias.md new file mode 100644 index 0000000..b775d34 --- /dev/null +++ b/docs/cmdlets/Remove-OPNSenseAlias.md @@ -0,0 +1,100 @@ +# Remove-OPNSenseAlias + +## SYNOPSIS +Removes an alias from an OPNSense firewall. + +## SYNTAX + +``` +Remove-OPNSenseAlias -Name [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Remove-OPNSenseAlias cmdlet removes an alias from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Remove an alias +```powershell +Remove-OPNSenseAlias -Name "WebServers" +``` + +This example removes the alias named "WebServers" from the OPNSense firewall. + +### Example 2: Remove an alias with confirmation +```powershell +Remove-OPNSenseAlias -Name "RemoteNetworks" -Confirm +``` + +This example prompts for confirmation before removing the alias. + +## PARAMETERS + +### -Name +The name of the alias to remove. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the alias name to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After removing an alias, you may need to apply the changes for them to take effect. +Be careful when removing aliases that are used in firewall rules, as this may cause the rules to stop working. + +## RELATED LINKS + +[Get-OPNSenseAlias](Get-OPNSenseAlias.md) +[New-OPNSenseAlias](New-OPNSenseAlias.md) +[Set-OPNSenseAlias](Set-OPNSenseAlias.md) diff --git a/docs/cmdlets/Remove-OPNSenseCronJob.md b/docs/cmdlets/Remove-OPNSenseCronJob.md new file mode 100644 index 0000000..ae776a8 --- /dev/null +++ b/docs/cmdlets/Remove-OPNSenseCronJob.md @@ -0,0 +1,101 @@ +# Remove-OPNSenseCronJob + +## SYNOPSIS +Removes a cron job from an OPNSense firewall. + +## SYNTAX + +``` +Remove-OPNSenseCronJob -UUID [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Remove-OPNSenseCronJob cmdlet removes a cron job from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Remove a cron job +```powershell +Remove-OPNSenseCronJob -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example removes the cron job with the specified UUID. + +### Example 2: Remove a cron job with confirmation +```powershell +Remove-OPNSenseCronJob -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Confirm +``` + +This example prompts for confirmation before removing the cron job. + +## PARAMETERS + +### -UUID +The UUID of the cron job to remove. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a cron job to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Be careful when removing cron jobs that perform important system maintenance tasks. + +## RELATED LINKS + +[Get-OPNSenseCronJob](Get-OPNSenseCronJob.md) +[New-OPNSenseCronJob](New-OPNSenseCronJob.md) +[Set-OPNSenseCronJob](Set-OPNSenseCronJob.md) +[Enable-OPNSenseCronJob](Enable-OPNSenseCronJob.md) +[Disable-OPNSenseCronJob](Disable-OPNSenseCronJob.md) diff --git a/docs/cmdlets/Remove-OPNSenseDHCPLease.md b/docs/cmdlets/Remove-OPNSenseDHCPLease.md new file mode 100644 index 0000000..f4f068c --- /dev/null +++ b/docs/cmdlets/Remove-OPNSenseDHCPLease.md @@ -0,0 +1,118 @@ +# Remove-OPNSenseDHCPLease + +## SYNOPSIS +Removes a DHCP lease from an OPNSense firewall. + +## SYNTAX + +``` +Remove-OPNSenseDHCPLease -Interface -IP [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Remove-OPNSenseDHCPLease cmdlet removes a DHCP lease from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Remove a DHCP lease +```powershell +Remove-OPNSenseDHCPLease -Interface "lan" -IP "192.168.1.100" +``` + +This example removes the DHCP lease for the specified IP address on the LAN interface. + +### Example 2: Remove a DHCP lease with confirmation +```powershell +Remove-OPNSenseDHCPLease -Interface "lan" -IP "192.168.1.100" -Confirm +``` + +This example prompts for confirmation before removing the DHCP lease. + +## PARAMETERS + +### -Interface +The interface from which to remove the DHCP lease. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -IP +The IP address of the DHCP lease to remove. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe strings containing the interface name and IP address to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Removing a DHCP lease will force the client to request a new lease the next time it connects. + +## RELATED LINKS + +[Get-OPNSenseDHCPLease](Get-OPNSenseDHCPLease.md) +[Get-OPNSenseDHCPServer](Get-OPNSenseDHCPServer.md) +[Set-OPNSenseDHCPServer](Set-OPNSenseDHCPServer.md) +[Get-OPNSenseDHCPStaticMapping](Get-OPNSenseDHCPStaticMapping.md) +[New-OPNSenseDHCPStaticMapping](New-OPNSenseDHCPStaticMapping.md) +[Set-OPNSenseDHCPStaticMapping](Set-OPNSenseDHCPStaticMapping.md) +[Remove-OPNSenseDHCPStaticMapping](Remove-OPNSenseDHCPStaticMapping.md) diff --git a/docs/cmdlets/Remove-OPNSenseDHCPOption.md b/docs/cmdlets/Remove-OPNSenseDHCPOption.md new file mode 100644 index 0000000..8915def --- /dev/null +++ b/docs/cmdlets/Remove-OPNSenseDHCPOption.md @@ -0,0 +1,117 @@ +# Remove-OPNSenseDHCPOption + +## SYNOPSIS +Removes a DHCP option from an OPNSense firewall. + +## SYNTAX + +``` +Remove-OPNSenseDHCPOption -Interface -Number [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Remove-OPNSenseDHCPOption cmdlet removes a DHCP option from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Remove a DHCP option +```powershell +Remove-OPNSenseDHCPOption -Interface "lan" -Number 66 +``` + +This example removes DHCP option 66 (TFTP server name) from the LAN interface. + +### Example 2: Remove a DHCP option with confirmation +```powershell +Remove-OPNSenseDHCPOption -Interface "lan" -Number 67 -Confirm +``` + +This example prompts for confirmation before removing DHCP option 67 (boot filename) from the LAN interface. + +## PARAMETERS + +### -Interface +The interface from which to remove the DHCP option. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Number +The option number to remove. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +### System.Int32 +You can pipe strings containing the interface name and integers containing the option number to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After removing a DHCP option, the DHCP server service may need to be restarted for the changes to take effect. + +## RELATED LINKS + +[Get-OPNSenseDHCPOption](Get-OPNSenseDHCPOption.md) +[New-OPNSenseDHCPOption](New-OPNSenseDHCPOption.md) +[Set-OPNSenseDHCPOption](Set-OPNSenseDHCPOption.md) +[Get-OPNSenseDHCPServer](Get-OPNSenseDHCPServer.md) +[Set-OPNSenseDHCPServer](Set-OPNSenseDHCPServer.md) diff --git a/docs/cmdlets/Remove-OPNSenseDHCPStaticMapping.md b/docs/cmdlets/Remove-OPNSenseDHCPStaticMapping.md new file mode 100644 index 0000000..779a7f9 --- /dev/null +++ b/docs/cmdlets/Remove-OPNSenseDHCPStaticMapping.md @@ -0,0 +1,118 @@ +# Remove-OPNSenseDHCPStaticMapping + +## SYNOPSIS +Removes a DHCP static mapping from an OPNSense firewall. + +## SYNTAX + +``` +Remove-OPNSenseDHCPStaticMapping -Interface -UUID [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Remove-OPNSenseDHCPStaticMapping cmdlet removes a DHCP static mapping from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Remove a DHCP static mapping +```powershell +Remove-OPNSenseDHCPStaticMapping -Interface "lan" -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example removes the DHCP static mapping with the specified UUID from the LAN interface. + +### Example 2: Remove a DHCP static mapping with confirmation +```powershell +Remove-OPNSenseDHCPStaticMapping -Interface "lan" -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Confirm +``` + +This example prompts for confirmation before removing the DHCP static mapping. + +## PARAMETERS + +### -Interface +The interface from which to remove the DHCP static mapping. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -UUID +The UUID of the DHCP static mapping to remove. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe strings containing the interface name and UUID to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After removing a DHCP static mapping, the DHCP server service may need to be restarted for the changes to take effect. + +## RELATED LINKS + +[Get-OPNSenseDHCPStaticMapping](Get-OPNSenseDHCPStaticMapping.md) +[New-OPNSenseDHCPStaticMapping](New-OPNSenseDHCPStaticMapping.md) +[Set-OPNSenseDHCPStaticMapping](Set-OPNSenseDHCPStaticMapping.md) +[Get-OPNSenseDHCPServer](Get-OPNSenseDHCPServer.md) +[Set-OPNSenseDHCPServer](Set-OPNSenseDHCPServer.md) +[Get-OPNSenseDHCPLease](Get-OPNSenseDHCPLease.md) +[Remove-OPNSenseDHCPLease](Remove-OPNSenseDHCPLease.md) diff --git a/docs/cmdlets/Remove-OPNSenseDNSForwardingHost.md b/docs/cmdlets/Remove-OPNSenseDNSForwardingHost.md new file mode 100644 index 0000000..e77ef98 --- /dev/null +++ b/docs/cmdlets/Remove-OPNSenseDNSForwardingHost.md @@ -0,0 +1,101 @@ +# Remove-OPNSenseDNSForwardingHost + +## SYNOPSIS +Removes a DNS forwarding host from an OPNSense firewall. + +## SYNTAX + +``` +Remove-OPNSenseDNSForwardingHost -UUID [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Remove-OPNSenseDNSForwardingHost cmdlet removes a DNS forwarding host from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Remove a DNS forwarding host +```powershell +Remove-OPNSenseDNSForwardingHost -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example removes the DNS forwarding host with the specified UUID. + +### Example 2: Remove a DNS forwarding host with confirmation +```powershell +Remove-OPNSenseDNSForwardingHost -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Confirm +``` + +This example prompts for confirmation before removing the DNS forwarding host. + +## PARAMETERS + +### -UUID +The UUID of the DNS forwarding host to remove. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a DNS forwarding host to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After removing a DNS forwarding host, you may need to apply the changes for them to take effect. + +## RELATED LINKS + +[Get-OPNSenseDNSForwardingHost](Get-OPNSenseDNSForwardingHost.md) +[New-OPNSenseDNSForwardingHost](New-OPNSenseDNSForwardingHost.md) +[Set-OPNSenseDNSForwardingHost](Set-OPNSenseDNSForwardingHost.md) +[Get-OPNSenseDNSForwarding](Get-OPNSenseDNSForwarding.md) +[Set-OPNSenseDNSForwarding](Set-OPNSenseDNSForwarding.md) diff --git a/docs/cmdlets/Remove-OPNSenseDNSOverride.md b/docs/cmdlets/Remove-OPNSenseDNSOverride.md new file mode 100644 index 0000000..6f0bc29 --- /dev/null +++ b/docs/cmdlets/Remove-OPNSenseDNSOverride.md @@ -0,0 +1,99 @@ +# Remove-OPNSenseDNSOverride + +## SYNOPSIS +Removes a DNS override from an OPNSense firewall. + +## SYNTAX + +``` +Remove-OPNSenseDNSOverride -UUID [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Remove-OPNSenseDNSOverride cmdlet removes a DNS override from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Remove a DNS override +```powershell +Remove-OPNSenseDNSOverride -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example removes the DNS override with the specified UUID. + +### Example 2: Remove a DNS override with confirmation +```powershell +Remove-OPNSenseDNSOverride -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Confirm +``` + +This example prompts for confirmation before removing the DNS override. + +## PARAMETERS + +### -UUID +The UUID of the DNS override to remove. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a DNS override to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After removing a DNS override, you may need to apply the changes for them to take effect. + +## RELATED LINKS + +[Get-OPNSenseDNSOverride](Get-OPNSenseDNSOverride.md) +[New-OPNSenseDNSOverride](New-OPNSenseDNSOverride.md) +[Set-OPNSenseDNSOverride](Set-OPNSenseDNSOverride.md) diff --git a/docs/cmdlets/Remove-OPNSenseFirewallRule.md b/docs/cmdlets/Remove-OPNSenseFirewallRule.md new file mode 100644 index 0000000..4e95a88 --- /dev/null +++ b/docs/cmdlets/Remove-OPNSenseFirewallRule.md @@ -0,0 +1,102 @@ +# Remove-OPNSenseFirewallRule + +## SYNOPSIS +Removes a firewall rule from an OPNSense firewall. + +## SYNTAX + +``` +Remove-OPNSenseFirewallRule -UUID [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Remove-OPNSenseFirewallRule cmdlet removes a firewall rule from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Remove a firewall rule +```powershell +Remove-OPNSenseFirewallRule -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example removes the firewall rule with the specified UUID. + +### Example 2: Remove a firewall rule with confirmation +```powershell +Remove-OPNSenseFirewallRule -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Confirm +``` + +This example prompts for confirmation before removing the firewall rule. + +## PARAMETERS + +### -UUID +The UUID of the firewall rule to remove. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a firewall rule to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After removing firewall rules, you need to apply the changes using Apply-OPNSenseFirewallChanges. + +## RELATED LINKS + +[Get-OPNSenseFirewallRule](Get-OPNSenseFirewallRule.md) +[New-OPNSenseFirewallRule](New-OPNSenseFirewallRule.md) +[Set-OPNSenseFirewallRule](Set-OPNSenseFirewallRule.md) +[Enable-OPNSenseFirewallRule](Enable-OPNSenseFirewallRule.md) +[Disable-OPNSenseFirewallRule](Disable-OPNSenseFirewallRule.md) +[Apply-OPNSenseFirewallChanges](Apply-OPNSenseFirewallChanges.md) diff --git a/docs/cmdlets/Remove-OPNSenseGateway.md b/docs/cmdlets/Remove-OPNSenseGateway.md new file mode 100644 index 0000000..81808c4 --- /dev/null +++ b/docs/cmdlets/Remove-OPNSenseGateway.md @@ -0,0 +1,100 @@ +# Remove-OPNSenseGateway + +## SYNOPSIS +Removes a gateway from an OPNSense firewall. + +## SYNTAX + +``` +Remove-OPNSenseGateway -Name [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Remove-OPNSenseGateway cmdlet removes a gateway from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Remove a gateway +```powershell +Remove-OPNSenseGateway -Name "Backup_WAN" +``` + +This example removes the gateway named "Backup_WAN". + +### Example 2: Remove a gateway with confirmation +```powershell +Remove-OPNSenseGateway -Name "ISP2" -Confirm +``` + +This example prompts for confirmation before removing the gateway named "ISP2". + +## PARAMETERS + +### -Name +The name of the gateway to remove. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the name of a gateway to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Removing a gateway may affect routing and network connectivity. +Make sure the gateway is not in use by any firewall rules or routes before removing it. + +## RELATED LINKS + +[Get-OPNSenseGateway](Get-OPNSenseGateway.md) +[New-OPNSenseGateway](New-OPNSenseGateway.md) +[Set-OPNSenseGateway](Set-OPNSenseGateway.md) diff --git a/docs/cmdlets/Remove-OPNSensePortForwardingRule.md b/docs/cmdlets/Remove-OPNSensePortForwardingRule.md new file mode 100644 index 0000000..43b1f98 --- /dev/null +++ b/docs/cmdlets/Remove-OPNSensePortForwardingRule.md @@ -0,0 +1,100 @@ +# Remove-OPNSensePortForwardingRule + +## SYNOPSIS +Removes a port forwarding rule from an OPNSense firewall. + +## SYNTAX + +``` +Remove-OPNSensePortForwardingRule -UUID [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Remove-OPNSensePortForwardingRule cmdlet removes a port forwarding rule from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Remove a port forwarding rule +```powershell +Remove-OPNSensePortForwardingRule -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example removes the port forwarding rule with the specified UUID. + +### Example 2: Remove a port forwarding rule with confirmation +```powershell +Remove-OPNSensePortForwardingRule -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Confirm +``` + +This example prompts for confirmation before removing the port forwarding rule. + +## PARAMETERS + +### -UUID +The UUID of the port forwarding rule to remove. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a port forwarding rule to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After removing a port forwarding rule, you may need to apply the changes for them to take effect. +You may also want to remove any corresponding firewall rules that are no longer needed. + +## RELATED LINKS + +[Get-OPNSensePortForwardingRule](Get-OPNSensePortForwardingRule.md) +[New-OPNSensePortForwardingRule](New-OPNSensePortForwardingRule.md) +[Set-OPNSensePortForwardingRule](Set-OPNSensePortForwardingRule.md) diff --git a/docs/cmdlets/Remove-OPNSenseRoute.md b/docs/cmdlets/Remove-OPNSenseRoute.md new file mode 100644 index 0000000..aebcf18 --- /dev/null +++ b/docs/cmdlets/Remove-OPNSenseRoute.md @@ -0,0 +1,99 @@ +# Remove-OPNSenseRoute + +## SYNOPSIS +Removes a static route from an OPNSense firewall. + +## SYNTAX + +``` +Remove-OPNSenseRoute -UUID [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Remove-OPNSenseRoute cmdlet removes a static route from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Remove a static route +```powershell +Remove-OPNSenseRoute -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example removes the static route with the specified UUID. + +### Example 2: Remove a static route with confirmation +```powershell +Remove-OPNSenseRoute -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Confirm +``` + +This example prompts for confirmation before removing the static route. + +## PARAMETERS + +### -UUID +The UUID of the route to remove. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a route to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Removing a static route may affect network connectivity. + +## RELATED LINKS + +[Get-OPNSenseRoute](Get-OPNSenseRoute.md) +[New-OPNSenseRoute](New-OPNSenseRoute.md) +[Set-OPNSenseRoute](Set-OPNSenseRoute.md) diff --git a/docs/cmdlets/Remove-OPNSenseUser.md b/docs/cmdlets/Remove-OPNSenseUser.md new file mode 100644 index 0000000..6d86e82 --- /dev/null +++ b/docs/cmdlets/Remove-OPNSenseUser.md @@ -0,0 +1,100 @@ +# Remove-OPNSenseUser + +## SYNOPSIS +Removes a user from an OPNSense firewall. + +## SYNTAX + +``` +Remove-OPNSenseUser -Username [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Remove-OPNSenseUser cmdlet removes a user from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Remove a user +```powershell +Remove-OPNSenseUser -Username "tempuser" +``` + +This example removes the user with the username "tempuser" from the OPNSense firewall. + +### Example 2: Remove a user with confirmation +```powershell +Remove-OPNSenseUser -Username "olduser" -Confirm +``` + +This example prompts for confirmation before removing the user. + +## PARAMETERS + +### -Username +The username of the user to remove. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the username to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Be careful when removing users, especially the "admin" user, as this could lock you out of the firewall. +You cannot remove the currently logged-in user. + +## RELATED LINKS + +[Get-OPNSenseUser](Get-OPNSenseUser.md) +[New-OPNSenseUser](New-OPNSenseUser.md) +[Set-OPNSenseUser](Set-OPNSenseUser.md) diff --git a/docs/cmdlets/Remove-OPNSenseVLAN.md b/docs/cmdlets/Remove-OPNSenseVLAN.md new file mode 100644 index 0000000..90b8d87 --- /dev/null +++ b/docs/cmdlets/Remove-OPNSenseVLAN.md @@ -0,0 +1,101 @@ +# Remove-OPNSenseVLAN + +## SYNOPSIS +Removes a VLAN from an OPNSense firewall. + +## SYNTAX + +``` +Remove-OPNSenseVLAN -UUID [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Remove-OPNSenseVLAN cmdlet removes a VLAN from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Remove a VLAN +```powershell +Remove-OPNSenseVLAN -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" +``` + +This example removes the VLAN with the specified UUID. + +### Example 2: Remove a VLAN with confirmation +```powershell +Remove-OPNSenseVLAN -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Confirm +``` + +This example prompts for confirmation before removing the VLAN. + +## PARAMETERS + +### -UUID +The UUID of the VLAN to remove. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a VLAN to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Removing a VLAN will affect network connectivity for devices using that VLAN. +Make sure the VLAN is not in use by any interfaces before removing it. + +## RELATED LINKS + +[Get-OPNSenseVLAN](Get-OPNSenseVLAN.md) +[New-OPNSenseVLAN](New-OPNSenseVLAN.md) +[Set-OPNSenseVLAN](Set-OPNSenseVLAN.md) +[New-OPNSenseSubnetVLANs](New-OPNSenseSubnetVLANs.md) diff --git a/docs/cmdlets/Restart-OPNSenseInterface.md b/docs/cmdlets/Restart-OPNSenseInterface.md new file mode 100644 index 0000000..77d8029 --- /dev/null +++ b/docs/cmdlets/Restart-OPNSenseInterface.md @@ -0,0 +1,92 @@ +# Restart-OPNSenseInterface + +## SYNOPSIS +Restarts a network interface on an OPNSense firewall. + +## SYNTAX + +``` +Restart-OPNSenseInterface -Name [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Restart-OPNSenseInterface cmdlet restarts a network interface on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Restart an interface +```powershell +Restart-OPNSenseInterface -Name "lan" +``` + +This example restarts the LAN interface. + +## PARAMETERS + +### -Name +The name of the interface to restart. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the name of an interface to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Restarting an interface may temporarily disrupt network connectivity. + +## RELATED LINKS + +[Get-OPNSenseInterface](Get-OPNSenseInterface.md) +[Set-OPNSenseInterface](Set-OPNSenseInterface.md) +[Get-OPNSenseInterfaceStatistics](Get-OPNSenseInterfaceStatistics.md) diff --git a/docs/cmdlets/Restart-OPNSenseService.md b/docs/cmdlets/Restart-OPNSenseService.md new file mode 100644 index 0000000..b147494 --- /dev/null +++ b/docs/cmdlets/Restart-OPNSenseService.md @@ -0,0 +1,99 @@ +# Restart-OPNSenseService + +## SYNOPSIS +Restarts a service on an OPNSense firewall. + +## SYNTAX + +``` +Restart-OPNSenseService -Name [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Restart-OPNSenseService cmdlet restarts a service on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Restart a service +```powershell +Restart-OPNSenseService -Name "dhcpd" +``` + +This example restarts the DHCP service on the OPNSense firewall. + +### Example 2: Restart a service with confirmation +```powershell +Restart-OPNSenseService -Name "unbound" -Confirm +``` + +This example prompts for confirmation before restarting the DNS resolver service. + +## PARAMETERS + +### -Name +The name of the service to restart. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the service name to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Restarting essential services may temporarily disrupt network connectivity or firewall functionality. + +## RELATED LINKS + +[Get-OPNSenseService](Get-OPNSenseService.md) +[Start-OPNSenseService](Start-OPNSenseService.md) +[Stop-OPNSenseService](Stop-OPNSenseService.md) diff --git a/docs/cmdlets/Restart-OPNSenseSystem.md b/docs/cmdlets/Restart-OPNSenseSystem.md new file mode 100644 index 0000000..1e516d7 --- /dev/null +++ b/docs/cmdlets/Restart-OPNSenseSystem.md @@ -0,0 +1,84 @@ +# Restart-OPNSenseSystem + +## SYNOPSIS +Restarts an OPNSense firewall. + +## SYNTAX + +``` +Restart-OPNSenseSystem [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Restart-OPNSenseSystem cmdlet restarts an OPNSense firewall. + +## EXAMPLES + +### Example 1: Restart the system +```powershell +Restart-OPNSenseSystem +``` + +This example restarts the OPNSense firewall. + +### Example 2: Restart the system with confirmation +```powershell +Restart-OPNSenseSystem -Confirm +``` + +This example prompts for confirmation before restarting the OPNSense firewall. + +## PARAMETERS + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Restarting the firewall will temporarily disrupt network connectivity. +The connection to the firewall will be lost during the restart. + +## RELATED LINKS + +[Stop-OPNSenseSystem](Stop-OPNSenseSystem.md) +[Get-OPNSenseSystemStatus](Get-OPNSenseSystemStatus.md) +[Get-OPNSenseSystemInfo](Get-OPNSenseSystemInfo.md) diff --git a/docs/cmdlets/Set-OPNSenseAlias.md b/docs/cmdlets/Set-OPNSenseAlias.md new file mode 100644 index 0000000..1c9d21e --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseAlias.md @@ -0,0 +1,167 @@ +# Set-OPNSenseAlias + +## SYNOPSIS +Modifies an existing alias on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseAlias -Name [-Type ] [-Content ] [-Description ] [-Enabled ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseAlias cmdlet modifies an existing alias on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Modify an alias description +```powershell +Set-OPNSenseAlias -Name "WebServers" -Description "Updated Web Servers" +``` + +This example updates the description of the alias named "WebServers". + +### Example 2: Modify alias content +```powershell +Set-OPNSenseAlias -Name "WebServers" -Content "192.168.1.10", "192.168.1.11", "192.168.1.12" +``` + +This example updates the content of the alias named "WebServers" to include an additional IP address. + +### Example 3: Disable an alias +```powershell +Set-OPNSenseAlias -Name "WebServers" -Enabled $false +``` + +This example disables the alias named "WebServers". + +## PARAMETERS + +### -Name +The name of the alias to modify. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Type +The type of the alias (host, network, port, url, urltable, geoip). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Content +The content of the alias, which depends on the type. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the alias. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Enabled +Whether the alias is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the alias name to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the modified alias. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After modifying an alias, you may need to apply the changes for them to take effect. +Changing the type of an alias may require adjusting the content to match the new type. + +## RELATED LINKS + +[Get-OPNSenseAlias](Get-OPNSenseAlias.md) +[New-OPNSenseAlias](New-OPNSenseAlias.md) +[Remove-OPNSenseAlias](Remove-OPNSenseAlias.md) diff --git a/docs/cmdlets/Set-OPNSenseCronJob.md b/docs/cmdlets/Set-OPNSenseCronJob.md new file mode 100644 index 0000000..6e256b2 --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseCronJob.md @@ -0,0 +1,233 @@ +# Set-OPNSenseCronJob + +## SYNOPSIS +Modifies an existing cron job on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseCronJob -UUID [-Minutes ] [-Hours ] [-Days ] [-Months ] + [-Weekdays ] [-Command ] [-Description ] [-Enabled ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseCronJob cmdlet modifies an existing cron job on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Modify a cron job description +```powershell +Set-OPNSenseCronJob -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Description "Updated Backup Job" +``` + +This example updates the description of an existing cron job. + +### Example 2: Change the schedule of a cron job +```powershell +Set-OPNSenseCronJob -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Hours "3" -Minutes "30" +``` + +This example changes the schedule of an existing cron job to run at 3:30 AM. + +### Example 3: Disable a cron job +```powershell +Set-OPNSenseCronJob -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Enabled $false +``` + +This example disables an existing cron job. + +## PARAMETERS + +### -UUID +The UUID of the cron job to modify. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Minutes +The minutes field of the cron job (0-59, *, */5, etc.). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Hours +The hours field of the cron job (0-23, *, */2, etc.). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Days +The days field of the cron job (1-31, *, */2, etc.). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Months +The months field of the cron job (1-12, *, */2, etc.). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Weekdays +The weekdays field of the cron job (0-7, *, etc., where 0 and 7 are Sunday). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Command +The command to execute. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the cron job. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Enabled +Whether the cron job is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a cron job to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the modified cron job. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +The cron job time fields use standard cron syntax: +- * means all values +- */n means every n values +- n-m means values from n to m +- n,m means values n and m + +## RELATED LINKS + +[Get-OPNSenseCronJob](Get-OPNSenseCronJob.md) +[New-OPNSenseCronJob](New-OPNSenseCronJob.md) +[Remove-OPNSenseCronJob](Remove-OPNSenseCronJob.md) +[Enable-OPNSenseCronJob](Enable-OPNSenseCronJob.md) +[Disable-OPNSenseCronJob](Disable-OPNSenseCronJob.md) diff --git a/docs/cmdlets/Set-OPNSenseDHCPOption.md b/docs/cmdlets/Set-OPNSenseDHCPOption.md new file mode 100644 index 0000000..9174c17 --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseDHCPOption.md @@ -0,0 +1,164 @@ +# Set-OPNSenseDHCPOption + +## SYNOPSIS +Modifies an existing DHCP option on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseDHCPOption -Interface -Number [-Type ] [-Value ] [-Description ] + [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseDHCPOption cmdlet modifies an existing DHCP option on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Modify a DHCP option value +```powershell +Set-OPNSenseDHCPOption -Interface "lan" -Number 66 -Value "newtftp.example.com" +``` + +This example updates the value of DHCP option 66 (TFTP server name) for the LAN interface. + +### Example 2: Modify a DHCP option description +```powershell +Set-OPNSenseDHCPOption -Interface "lan" -Number 67 -Description "Updated Boot Filename" +``` + +This example updates the description of DHCP option 67 (boot filename) for the LAN interface. + +## PARAMETERS + +### -Interface +The interface on which the DHCP option exists. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Number +The option number to modify. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Type +The type of the DHCP option (string, integer, boolean, etc.). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Value +The value of the DHCP option. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the DHCP option. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +### System.Int32 +You can pipe strings containing the interface name and integers containing the option number to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the modified DHCP option. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After modifying a DHCP option, the DHCP server service may need to be restarted for the changes to take effect. +The DHCP server must be enabled on the specified interface for options to be provided to clients. + +## RELATED LINKS + +[Get-OPNSenseDHCPOption](Get-OPNSenseDHCPOption.md) +[New-OPNSenseDHCPOption](New-OPNSenseDHCPOption.md) +[Remove-OPNSenseDHCPOption](Remove-OPNSenseDHCPOption.md) +[Get-OPNSenseDHCPServer](Get-OPNSenseDHCPServer.md) +[Set-OPNSenseDHCPServer](Set-OPNSenseDHCPServer.md) diff --git a/docs/cmdlets/Set-OPNSenseDHCPServer.md b/docs/cmdlets/Set-OPNSenseDHCPServer.md new file mode 100644 index 0000000..66aa60c --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseDHCPServer.md @@ -0,0 +1,240 @@ +# Set-OPNSenseDHCPServer + +## SYNOPSIS +Modifies DHCP server settings on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseDHCPServer -Interface [-Enabled ] [-RangeFrom ] [-RangeTo ] + [-DNSServers ] [-Domain ] [-Gateway ] [-LeaseTime ] + [-DenyUnknownClients ] [-IgnoreClientIdentifiers ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseDHCPServer cmdlet modifies DHCP server settings on an OPNSense firewall for a specific interface. + +## EXAMPLES + +### Example 1: Enable the DHCP server on an interface +```powershell +Set-OPNSenseDHCPServer -Interface "lan" -Enabled $true +``` + +This example enables the DHCP server on the LAN interface. + +### Example 2: Configure DHCP server settings +```powershell +Set-OPNSenseDHCPServer -Interface "lan" -Enabled $true -RangeFrom "192.168.1.100" -RangeTo "192.168.1.200" -DNSServers "192.168.1.1", "8.8.8.8" -Domain "example.local" -LeaseTime "86400" +``` + +This example configures multiple DHCP server settings for the LAN interface. + +## PARAMETERS + +### -Interface +The interface for which to modify DHCP server settings. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Enabled +Whether the DHCP server is enabled for the interface. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -RangeFrom +The starting IP address of the DHCP range. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -RangeTo +The ending IP address of the DHCP range. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DNSServers +The DNS servers to provide to DHCP clients. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Domain +The domain name to provide to DHCP clients. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Gateway +The gateway to provide to DHCP clients. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -LeaseTime +The lease time in seconds for DHCP leases. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DenyUnknownClients +Whether to deny unknown clients. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IgnoreClientIdentifiers +Whether to ignore client identifiers. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the interface name to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the modified DHCP server settings. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After modifying DHCP server settings, the DHCP server service may need to be restarted for the changes to take effect. + +## RELATED LINKS + +[Get-OPNSenseDHCPServer](Get-OPNSenseDHCPServer.md) +[Get-OPNSenseDHCPLease](Get-OPNSenseDHCPLease.md) +[Remove-OPNSenseDHCPLease](Remove-OPNSenseDHCPLease.md) +[Get-OPNSenseDHCPStaticMapping](Get-OPNSenseDHCPStaticMapping.md) +[New-OPNSenseDHCPStaticMapping](New-OPNSenseDHCPStaticMapping.md) +[Set-OPNSenseDHCPStaticMapping](Set-OPNSenseDHCPStaticMapping.md) +[Remove-OPNSenseDHCPStaticMapping](Remove-OPNSenseDHCPStaticMapping.md) diff --git a/docs/cmdlets/Set-OPNSenseDHCPStaticMapping.md b/docs/cmdlets/Set-OPNSenseDHCPStaticMapping.md new file mode 100644 index 0000000..2be4804 --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseDHCPStaticMapping.md @@ -0,0 +1,263 @@ +# Set-OPNSenseDHCPStaticMapping + +## SYNOPSIS +Modifies an existing DHCP static mapping on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseDHCPStaticMapping -Interface -UUID [-MAC ] [-IP ] [-Hostname ] + [-Description ] [-DNSServers ] [-Domain ] [-Gateway ] + [-ARP ] [-Disabled ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseDHCPStaticMapping cmdlet modifies an existing DHCP static mapping on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Modify a DHCP static mapping description +```powershell +Set-OPNSenseDHCPStaticMapping -Interface "lan" -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Description "Updated Printer Description" +``` + +This example updates the description of an existing DHCP static mapping. + +### Example 2: Change the IP address for a DHCP static mapping +```powershell +Set-OPNSenseDHCPStaticMapping -Interface "lan" -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -IP "192.168.1.55" +``` + +This example changes the IP address used for an existing DHCP static mapping. + +### Example 3: Disable a DHCP static mapping +```powershell +Set-OPNSenseDHCPStaticMapping -Interface "lan" -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Disabled $true +``` + +This example disables an existing DHCP static mapping. + +## PARAMETERS + +### -Interface +The interface on which the DHCP static mapping exists. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -UUID +The UUID of the DHCP static mapping to modify. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -MAC +The MAC address of the device. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IP +The IP address to assign to the device. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Hostname +The hostname to assign to the device. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the DHCP static mapping. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DNSServers +The DNS servers to provide to the device. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Domain +The domain name to provide to the device. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Gateway +The gateway to provide to the device. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ARP +Whether to create an ARP table entry for this device. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Disabled +Whether the DHCP static mapping is disabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe strings containing the interface name and UUID to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the modified DHCP static mapping. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After modifying a DHCP static mapping, the DHCP server service may need to be restarted for the changes to take effect. +The DHCP server must be enabled on the specified interface for static mappings to work. + +## RELATED LINKS + +[Get-OPNSenseDHCPStaticMapping](Get-OPNSenseDHCPStaticMapping.md) +[New-OPNSenseDHCPStaticMapping](New-OPNSenseDHCPStaticMapping.md) +[Remove-OPNSenseDHCPStaticMapping](Remove-OPNSenseDHCPStaticMapping.md) +[Get-OPNSenseDHCPServer](Get-OPNSenseDHCPServer.md) +[Set-OPNSenseDHCPServer](Set-OPNSenseDHCPServer.md) +[Get-OPNSenseDHCPLease](Get-OPNSenseDHCPLease.md) +[Remove-OPNSenseDHCPLease](Remove-OPNSenseDHCPLease.md) diff --git a/docs/cmdlets/Set-OPNSenseDNSForwarding.md b/docs/cmdlets/Set-OPNSenseDNSForwarding.md new file mode 100644 index 0000000..5438bfb --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseDNSForwarding.md @@ -0,0 +1,100 @@ +# Set-OPNSenseDNSForwarding + +## SYNOPSIS +Modifies DNS forwarding settings on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseDNSForwarding [-Enabled ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseDNSForwarding cmdlet modifies DNS forwarding settings on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Enable DNS forwarding +```powershell +Set-OPNSenseDNSForwarding -Enabled $true +``` + +This example enables DNS forwarding on the OPNSense firewall. + +### Example 2: Disable DNS forwarding +```powershell +Set-OPNSenseDNSForwarding -Enabled $false +``` + +This example disables DNS forwarding on the OPNSense firewall. + +## PARAMETERS + +### -Enabled +Whether DNS forwarding is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the modified DNS forwarding settings. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After modifying DNS forwarding settings, the DNS service may need to be restarted for the changes to take effect. + +## RELATED LINKS + +[Get-OPNSenseDNSForwarding](Get-OPNSenseDNSForwarding.md) +[Get-OPNSenseDNSForwardingHost](Get-OPNSenseDNSForwardingHost.md) +[New-OPNSenseDNSForwardingHost](New-OPNSenseDNSForwardingHost.md) +[Set-OPNSenseDNSForwardingHost](Set-OPNSenseDNSForwardingHost.md) +[Remove-OPNSenseDNSForwardingHost](Remove-OPNSenseDNSForwardingHost.md) diff --git a/docs/cmdlets/Set-OPNSenseDNSForwardingHost.md b/docs/cmdlets/Set-OPNSenseDNSForwardingHost.md new file mode 100644 index 0000000..e916951 --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseDNSForwardingHost.md @@ -0,0 +1,170 @@ +# Set-OPNSenseDNSForwardingHost + +## SYNOPSIS +Modifies an existing DNS forwarding host on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseDNSForwardingHost -UUID [-Domain ] [-Server ] [-Description ] + [-Disabled ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseDNSForwardingHost cmdlet modifies an existing DNS forwarding host on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Modify a DNS forwarding host description +```powershell +Set-OPNSenseDNSForwardingHost -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Description "Updated DNS Server" +``` + +This example updates the description of an existing DNS forwarding host. + +### Example 2: Change the server for a DNS forwarding host +```powershell +Set-OPNSenseDNSForwardingHost -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Server "192.168.2.10" +``` + +This example changes the DNS server used for an existing DNS forwarding host. + +### Example 3: Disable a DNS forwarding host +```powershell +Set-OPNSenseDNSForwardingHost -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Disabled $true +``` + +This example disables an existing DNS forwarding host. + +## PARAMETERS + +### -UUID +The UUID of the DNS forwarding host to modify. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Domain +The domain for which DNS queries should be forwarded. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Server +The DNS server to which queries for the domain should be forwarded. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the DNS forwarding host. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Disabled +Whether the DNS forwarding host is disabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a DNS forwarding host to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the modified DNS forwarding host. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After modifying a DNS forwarding host, you may need to apply the changes for them to take effect. +DNS forwarding must be enabled using Set-OPNSenseDNSForwarding for these settings to be used. + +## RELATED LINKS + +[Get-OPNSenseDNSForwardingHost](Get-OPNSenseDNSForwardingHost.md) +[New-OPNSenseDNSForwardingHost](New-OPNSenseDNSForwardingHost.md) +[Remove-OPNSenseDNSForwardingHost](Remove-OPNSenseDNSForwardingHost.md) +[Get-OPNSenseDNSForwarding](Get-OPNSenseDNSForwarding.md) +[Set-OPNSenseDNSForwarding](Set-OPNSenseDNSForwarding.md) diff --git a/docs/cmdlets/Set-OPNSenseDNSOverride.md b/docs/cmdlets/Set-OPNSenseDNSOverride.md new file mode 100644 index 0000000..53ff377 --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseDNSOverride.md @@ -0,0 +1,182 @@ +# Set-OPNSenseDNSOverride + +## SYNOPSIS +Modifies an existing DNS override on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseDNSOverride -UUID [-Host ] [-Domain ] [-IP ] [-Description ] + [-Disabled ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseDNSOverride cmdlet modifies an existing DNS override on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Modify a DNS override description +```powershell +Set-OPNSenseDNSOverride -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Description "Updated Server Description" +``` + +This example updates the description of an existing DNS override. + +### Example 2: Change the IP address for a DNS override +```powershell +Set-OPNSenseDNSOverride -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -IP "192.168.1.20" +``` + +This example changes the IP address used for an existing DNS override. + +### Example 3: Disable a DNS override +```powershell +Set-OPNSenseDNSOverride -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Disabled $true +``` + +This example disables an existing DNS override. + +## PARAMETERS + +### -UUID +The UUID of the DNS override to modify. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Host +The hostname part of the DNS override. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Domain +The domain part of the DNS override. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IP +The IP address to which the hostname should resolve. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the DNS override. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Disabled +Whether the DNS override is disabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a DNS override to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the modified DNS override. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After modifying a DNS override, you may need to apply the changes for them to take effect. + +## RELATED LINKS + +[Get-OPNSenseDNSOverride](Get-OPNSenseDNSOverride.md) +[New-OPNSenseDNSOverride](New-OPNSenseDNSOverride.md) +[Remove-OPNSenseDNSOverride](Remove-OPNSenseDNSOverride.md) diff --git a/docs/cmdlets/Set-OPNSenseDNSServer.md b/docs/cmdlets/Set-OPNSenseDNSServer.md new file mode 100644 index 0000000..4c1b760 --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseDNSServer.md @@ -0,0 +1,266 @@ +# Set-OPNSenseDNSServer + +## SYNOPSIS +Modifies DNS server settings on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseDNSServer [-Enabled ] [-ListenIPs ] [-Port ] [-DNSSECEnabled ] + [-ForwardMode ] [-StrictBindingEnabled ] [-AllQueryLogEnabled ] + [-RegisterIPv4 ] [-RegisterIPv6 ] [-DNSv6PrefixEnabled ] + [-PreferIPv4 ] [-PreferIPv6 ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseDNSServer cmdlet modifies DNS server settings on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Enable the DNS server +```powershell +Set-OPNSenseDNSServer -Enabled $true +``` + +This example enables the DNS server on the OPNSense firewall. + +### Example 2: Configure DNS server settings +```powershell +Set-OPNSenseDNSServer -Enabled $true -ListenIPs "127.0.0.1", "192.168.1.1" -Port 53 -DNSSECEnabled $true -ForwardMode "forward" -AllQueryLogEnabled $true +``` + +This example configures multiple DNS server settings on the OPNSense firewall. + +## PARAMETERS + +### -Enabled +Whether the DNS server is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ListenIPs +The IP addresses on which the DNS server should listen. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Port +The port on which the DNS server should listen. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DNSSECEnabled +Whether DNSSEC is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ForwardMode +The forwarding mode for the DNS server (forward, resolver, etc.). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -StrictBindingEnabled +Whether strict binding is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -AllQueryLogEnabled +Whether to log all DNS queries. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -RegisterIPv4 +Whether to register IPv4 addresses. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -RegisterIPv6 +Whether to register IPv6 addresses. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DNSv6PrefixEnabled +Whether DNSv6 prefix is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -PreferIPv4 +Whether to prefer IPv4. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -PreferIPv6 +Whether to prefer IPv6. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the modified DNS server settings. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After modifying DNS server settings, the DNS server service may need to be restarted. + +## RELATED LINKS + +[Get-OPNSenseDNSServer](Get-OPNSenseDNSServer.md) +[Get-OPNSenseSystemDNS](Get-OPNSenseSystemDNS.md) +[Set-OPNSenseSystemDNS](Set-OPNSenseSystemDNS.md) diff --git a/docs/cmdlets/Set-OPNSenseFirewallRule.md b/docs/cmdlets/Set-OPNSenseFirewallRule.md new file mode 100644 index 0000000..a59ace7 --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseFirewallRule.md @@ -0,0 +1,330 @@ +# Set-OPNSenseFirewallRule + +## SYNOPSIS +Modifies an existing firewall rule on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseFirewallRule -UUID [-Action ] [-Interface ] [-Protocol ] [-Source ] + [-SourcePort ] [-Destination ] [-DestinationPort ] [-Description ] + [-Enabled ] [-Direction ] [-IPProtocol ] [-Gateway ] [-Log ] + [-Sequence ] [-Category ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseFirewallRule cmdlet modifies an existing firewall rule on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Modify a firewall rule +```powershell +Set-OPNSenseFirewallRule -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Description "Updated rule description" -Log $true +``` + +This example updates the description and enables logging for an existing firewall rule. + +### Example 2: Modify multiple properties of a firewall rule +```powershell +Set-OPNSenseFirewallRule -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Action "block" -Protocol "tcp/udp" -DestinationPort "3389,5900" -Description "Block remote access" +``` + +This example updates multiple properties of an existing firewall rule to block remote access protocols. + +## PARAMETERS + +### -UUID +The UUID of the firewall rule to modify. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Action +The action to take for the rule (pass, block, reject). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Interface +The interface to apply the rule to. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Protocol +The protocol for the rule (tcp, udp, tcp/udp, icmp, etc.). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Source +The source address or network for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SourcePort +The source port for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Destination +The destination address or network for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DestinationPort +The destination port for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Enabled +Whether the rule is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Direction +The direction for the rule (in, out). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IPProtocol +The IP protocol version for the rule (inet, inet6). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Gateway +The gateway to use for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Log +Whether to log matches for the rule. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Sequence +The sequence number for the rule. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Category +The category for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a firewall rule to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the modified firewall rule. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After modifying firewall rules, you need to apply the changes using Apply-OPNSenseFirewallChanges. + +## RELATED LINKS + +[Get-OPNSenseFirewallRule](Get-OPNSenseFirewallRule.md) +[New-OPNSenseFirewallRule](New-OPNSenseFirewallRule.md) +[Remove-OPNSenseFirewallRule](Remove-OPNSenseFirewallRule.md) +[Enable-OPNSenseFirewallRule](Enable-OPNSenseFirewallRule.md) +[Disable-OPNSenseFirewallRule](Disable-OPNSenseFirewallRule.md) +[Apply-OPNSenseFirewallChanges](Apply-OPNSenseFirewallChanges.md) diff --git a/docs/cmdlets/Set-OPNSenseGateway.md b/docs/cmdlets/Set-OPNSenseGateway.md new file mode 100644 index 0000000..b9d8bcf --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseGateway.md @@ -0,0 +1,220 @@ +# Set-OPNSenseGateway + +## SYNOPSIS +Modifies an existing gateway on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseGateway -Name [-Interface ] [-IPv4Address ] [-Description ] [-Priority ] + [-Weight ] [-Disabled ] [-Monitor ] [-MonitorIP ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseGateway cmdlet modifies an existing gateway on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Modify a gateway description +```powershell +Set-OPNSenseGateway -Name "WAN_GW" -Description "Updated WAN Gateway" +``` + +This example updates the description of the gateway named "WAN_GW". + +### Example 2: Enable monitoring for a gateway +```powershell +Set-OPNSenseGateway -Name "WAN_GW" -Monitor $true -MonitorIP "8.8.8.8" +``` + +This example enables monitoring for the gateway named "WAN_GW" and sets the monitoring IP to 8.8.8.8. + +## PARAMETERS + +### -Name +The name of the gateway to modify. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Interface +The interface for the gateway. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IPv4Address +The IPv4 address of the gateway. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the gateway. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Priority +The priority of the gateway (1-255, lower is higher priority). + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Weight +The weight of the gateway for load balancing. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Disabled +Whether the gateway is disabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Monitor +Whether to monitor the gateway. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -MonitorIP +The IP address to monitor for gateway status. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the name of a gateway to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the modified gateway. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After modifying a gateway, you may need to apply the changes for them to take effect. + +## RELATED LINKS + +[Get-OPNSenseGateway](Get-OPNSenseGateway.md) +[New-OPNSenseGateway](New-OPNSenseGateway.md) +[Remove-OPNSenseGateway](Remove-OPNSenseGateway.md) diff --git a/docs/cmdlets/Set-OPNSenseInterface.md b/docs/cmdlets/Set-OPNSenseInterface.md new file mode 100644 index 0000000..f23a5eb --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseInterface.md @@ -0,0 +1,220 @@ +# Set-OPNSenseInterface + +## SYNOPSIS +Modifies an existing network interface on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseInterface -Name [-Enabled ] [-IPv4Type ] [-IPv4Address ] [-IPv4Subnet ] + [-IPv6Type ] [-IPv6Address ] [-IPv6Subnet ] [-Description ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseInterface cmdlet modifies an existing network interface on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Modify an interface +```powershell +Set-OPNSenseInterface -Name "lan" -Description "Local Area Network" -IPv4Address "192.168.1.1" -IPv4Subnet 24 +``` + +This example updates the description and IPv4 address/subnet for the LAN interface. + +### Example 2: Disable an interface +```powershell +Set-OPNSenseInterface -Name "opt1" -Enabled $false +``` + +This example disables the opt1 interface. + +## PARAMETERS + +### -Name +The name of the interface to modify. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Enabled +Whether the interface is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IPv4Type +The IPv4 configuration type (none, static, dhcp). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IPv4Address +The IPv4 address for the interface. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IPv4Subnet +The IPv4 subnet mask (CIDR notation) for the interface. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IPv6Type +The IPv6 configuration type (none, static, dhcp6). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IPv6Address +The IPv6 address for the interface. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IPv6Subnet +The IPv6 subnet mask (CIDR notation) for the interface. + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the interface. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the name of an interface to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the modified interface. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After modifying an interface, you may need to restart it using Restart-OPNSenseInterface. + +## RELATED LINKS + +[Get-OPNSenseInterface](Get-OPNSenseInterface.md) +[Restart-OPNSenseInterface](Restart-OPNSenseInterface.md) +[Get-OPNSenseInterfaceStatistics](Get-OPNSenseInterfaceStatistics.md) diff --git a/docs/cmdlets/Set-OPNSensePortForwardingRule.md b/docs/cmdlets/Set-OPNSensePortForwardingRule.md new file mode 100644 index 0000000..6614d93 --- /dev/null +++ b/docs/cmdlets/Set-OPNSensePortForwardingRule.md @@ -0,0 +1,275 @@ +# Set-OPNSensePortForwardingRule + +## SYNOPSIS +Modifies an existing port forwarding rule on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSensePortForwardingRule -UUID [-Interface ] [-Protocol ] [-SourceAddress ] + [-SourcePort ] [-DestinationAddress ] [-DestinationPort ] + [-TargetIP ] [-TargetPort ] [-Description ] [-Enabled ] + [-NATReflection ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSensePortForwardingRule cmdlet modifies an existing port forwarding rule on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Modify a port forwarding rule description +```powershell +Set-OPNSensePortForwardingRule -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Description "Updated Web Server" +``` + +This example updates the description of an existing port forwarding rule. + +### Example 2: Change the target IP for a port forwarding rule +```powershell +Set-OPNSensePortForwardingRule -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -TargetIP "192.168.1.11" +``` + +This example changes the internal IP address to which traffic is forwarded. + +### Example 3: Disable a port forwarding rule +```powershell +Set-OPNSensePortForwardingRule -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Enabled $false +``` + +This example disables an existing port forwarding rule. + +## PARAMETERS + +### -UUID +The UUID of the port forwarding rule to modify. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Interface +The interface on which the rule applies. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Protocol +The protocol for the rule (tcp, udp, tcp/udp). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SourceAddress +The source address or network for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -SourcePort +The source port for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DestinationAddress +The destination address for the rule (usually "WAN address"). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DestinationPort +The destination port for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -TargetIP +The internal IP address to which traffic will be forwarded. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -TargetPort +The internal port to which traffic will be forwarded. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the rule. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Enabled +Whether the rule is enabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -NATReflection +The NAT reflection mode for the rule (enable, disable, system default). + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a port forwarding rule to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the modified port forwarding rule. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After modifying a port forwarding rule, you may need to apply the changes for them to take effect. +Modifying port forwarding rules may require corresponding changes to firewall rules. + +## RELATED LINKS + +[Get-OPNSensePortForwardingRule](Get-OPNSensePortForwardingRule.md) +[New-OPNSensePortForwardingRule](New-OPNSensePortForwardingRule.md) +[Remove-OPNSensePortForwardingRule](Remove-OPNSensePortForwardingRule.md) diff --git a/docs/cmdlets/Set-OPNSenseRoute.md b/docs/cmdlets/Set-OPNSenseRoute.md new file mode 100644 index 0000000..c8b66ea --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseRoute.md @@ -0,0 +1,167 @@ +# Set-OPNSenseRoute + +## SYNOPSIS +Modifies an existing static route on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseRoute -UUID [-Network ] [-Gateway ] [-Description ] [-Disabled ] + [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseRoute cmdlet modifies an existing static route on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Modify a static route description +```powershell +Set-OPNSenseRoute -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Description "Updated Route Description" +``` + +This example updates the description of an existing static route. + +### Example 2: Change the gateway for a static route +```powershell +Set-OPNSenseRoute -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Gateway "Backup_WAN" +``` + +This example changes the gateway used for an existing static route. + +### Example 3: Disable a static route +```powershell +Set-OPNSenseRoute -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Disabled $true +``` + +This example disables an existing static route. + +## PARAMETERS + +### -UUID +The UUID of the route to modify. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Network +The destination network in CIDR notation. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Gateway +The gateway to use for the route. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the route. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Disabled +Whether the route is disabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a route to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the modified static route. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After modifying a static route, you may need to apply the changes for them to take effect. + +## RELATED LINKS + +[Get-OPNSenseRoute](Get-OPNSenseRoute.md) +[New-OPNSenseRoute](New-OPNSenseRoute.md) +[Remove-OPNSenseRoute](Remove-OPNSenseRoute.md) diff --git a/docs/cmdlets/Set-OPNSenseSystemDNS.md b/docs/cmdlets/Set-OPNSenseSystemDNS.md new file mode 100644 index 0000000..b30c26c --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseSystemDNS.md @@ -0,0 +1,113 @@ +# Set-OPNSenseSystemDNS + +## SYNOPSIS +Modifies system DNS settings on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseSystemDNS [-DNSServers ] [-DNSSearchDomains ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseSystemDNS cmdlet modifies system DNS settings on an OPNSense firewall, including DNS servers and domain search list. + +## EXAMPLES + +### Example 1: Set system DNS servers +```powershell +Set-OPNSenseSystemDNS -DNSServers "8.8.8.8", "8.8.4.4" +``` + +This example sets the system DNS servers to Google's public DNS servers. + +### Example 2: Set system DNS servers and search domains +```powershell +Set-OPNSenseSystemDNS -DNSServers "192.168.1.10", "192.168.1.11" -DNSSearchDomains "example.com", "local.example.com" +``` + +This example sets both the system DNS servers and search domains. + +## PARAMETERS + +### -DNSServers +The DNS servers to use for system DNS resolution. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DNSSearchDomains +The domain search list for DNS resolution. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the modified system DNS settings. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +After modifying system DNS settings, the system may need to be restarted for the changes to take effect. + +## RELATED LINKS + +[Get-OPNSenseSystemDNS](Get-OPNSenseSystemDNS.md) +[Get-OPNSenseDNSServer](Get-OPNSenseDNSServer.md) +[Set-OPNSenseDNSServer](Set-OPNSenseDNSServer.md) diff --git a/docs/cmdlets/Set-OPNSenseTailscaleConfig.md b/docs/cmdlets/Set-OPNSenseTailscaleConfig.md new file mode 100644 index 0000000..fe216d6 --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseTailscaleConfig.md @@ -0,0 +1,184 @@ +# Set-OPNSenseTailscaleConfig + +## SYNOPSIS +Modifies the Tailscale configuration on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseTailscaleConfig [-AuthKey ] [-Hostname ] [-AdvertiseRoutes ] [-AcceptRoutes ] + [-ExitNode ] [-ExitNodeAllowLAN ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseTailscaleConfig cmdlet modifies the Tailscale configuration on an OPNSense firewall, including settings such as authentication key, advertised routes, and exit node configuration. + +## EXAMPLES + +### Example 1: Set the Tailscale authentication key +```powershell +Set-OPNSenseTailscaleConfig -AuthKey "tskey-auth-abcdefghijklmnopqrstuvwxyz" +``` + +This example sets the Tailscale authentication key. + +### Example 2: Configure Tailscale to advertise routes +```powershell +Set-OPNSenseTailscaleConfig -AdvertiseRoutes "192.168.1.0/24", "10.0.0.0/8" +``` + +This example configures Tailscale to advertise specific subnet routes. + +### Example 3: Configure Tailscale as an exit node +```powershell +Set-OPNSenseTailscaleConfig -ExitNode $true -ExitNodeAllowLAN $true +``` + +This example configures Tailscale to act as an exit node, allowing access to LAN resources. + +## PARAMETERS + +### -AuthKey +The Tailscale authentication key. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Hostname +The hostname to use for the Tailscale node. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -AdvertiseRoutes +The subnet routes to advertise to the Tailscale network. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -AcceptRoutes +Whether to accept subnet routes from other Tailscale nodes. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ExitNode +Whether to configure this node as a Tailscale exit node. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ExitNodeAllowLAN +Whether to allow access to LAN resources when acting as an exit node. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +The Tailscale plugin must be installed on the OPNSense firewall. +After modifying the configuration, you may need to restart Tailscale for the changes to take effect. + +## RELATED LINKS + +[Get-OPNSenseTailscaleConfig](Get-OPNSenseTailscaleConfig.md) +[Enable-OPNSenseTailscale](Enable-OPNSenseTailscale.md) +[Disable-OPNSenseTailscale](Disable-OPNSenseTailscale.md) +[Get-OPNSenseTailscaleStatus](Get-OPNSenseTailscaleStatus.md) +[Install-OPNSenseTailscale](Install-OPNSenseTailscale.md) diff --git a/docs/cmdlets/Set-OPNSenseUser.md b/docs/cmdlets/Set-OPNSenseUser.md new file mode 100644 index 0000000..c5d6aa0 --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseUser.md @@ -0,0 +1,221 @@ +# Set-OPNSenseUser + +## SYNOPSIS +Modifies an existing user on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseUser -Username [-Password ] [-FullName ] [-Email ] [-Comment ] + [-Disabled ] [-ExpireDate ] [-AuthGroup ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseUser cmdlet modifies an existing user on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Modify a user's email address +```powershell +Set-OPNSenseUser -Username "existinguser" -Email "newemail@example.com" +``` + +This example updates the email address for the user "existinguser". + +### Example 2: Change a user's password +```powershell +$newPassword = ConvertTo-SecureString "NewP@ssw0rd" -AsPlainText -Force +Set-OPNSenseUser -Username "existinguser" -Password $newPassword +``` + +This example changes the password for the user "existinguser". + +### Example 3: Disable a user account +```powershell +Set-OPNSenseUser -Username "existinguser" -Disabled $true +``` + +This example disables the account for the user "existinguser". + +### Example 4: Update a user's authorization groups +```powershell +Set-OPNSenseUser -Username "existinguser" -AuthGroup "users", "vpnusers" +``` + +This example updates the authorization groups for the user "existinguser". + +## PARAMETERS + +### -Username +The username of the user to modify. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Password +The new password for the user as a SecureString. + +```yaml +Type: SecureString +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -FullName +The full name of the user. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Email +The email address of the user. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Comment +A comment or description for the user. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Disabled +Whether the user account is disabled. + +```yaml +Type: Boolean +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ExpireDate +The date when the user account will expire. + +```yaml +Type: DateTime +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -AuthGroup +The authorization groups to which the user belongs. + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the username to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the modified user. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +For security reasons, it is recommended to use a SecureString for the password parameter. +Be careful when modifying the "admin" user, as this could lock you out of the firewall. + +## RELATED LINKS + +[Get-OPNSenseUser](Get-OPNSenseUser.md) +[New-OPNSenseUser](New-OPNSenseUser.md) +[Remove-OPNSenseUser](Remove-OPNSenseUser.md) diff --git a/docs/cmdlets/Set-OPNSenseVLAN.md b/docs/cmdlets/Set-OPNSenseVLAN.md new file mode 100644 index 0000000..73fb835 --- /dev/null +++ b/docs/cmdlets/Set-OPNSenseVLAN.md @@ -0,0 +1,160 @@ +# Set-OPNSenseVLAN + +## SYNOPSIS +Modifies an existing VLAN on an OPNSense firewall. + +## SYNTAX + +``` +Set-OPNSenseVLAN -UUID [-Device ] [-Tag ] [-Priority ] [-Description ] [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Set-OPNSenseVLAN cmdlet modifies an existing VLAN on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Modify a VLAN description +```powershell +Set-OPNSenseVLAN -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Description "Updated VLAN description" +``` + +This example updates the description of an existing VLAN. + +### Example 2: Modify a VLAN priority +```powershell +Set-OPNSenseVLAN -UUID "a1b2c3d4-e5f6-7890-abcd-ef1234567890" -Priority 7 +``` + +This example updates the priority of an existing VLAN. + +## PARAMETERS + +### -UUID +The UUID of the VLAN to modify. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Device +The physical interface for the VLAN. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Tag +The VLAN tag (1-4094). + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Priority +The VLAN priority (0-7). + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Description +A description for the VLAN. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the UUID of a VLAN to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the modified VLAN. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Modifying a VLAN may affect network connectivity for devices using that VLAN. + +## RELATED LINKS + +[Get-OPNSenseVLAN](Get-OPNSenseVLAN.md) +[New-OPNSenseVLAN](New-OPNSenseVLAN.md) +[Remove-OPNSenseVLAN](Remove-OPNSenseVLAN.md) +[New-OPNSenseSubnetVLANs](New-OPNSenseSubnetVLANs.md) diff --git a/docs/cmdlets/Start-OPNSenseFirmwareUpgrade.md b/docs/cmdlets/Start-OPNSenseFirmwareUpgrade.md new file mode 100644 index 0000000..f7a63cc --- /dev/null +++ b/docs/cmdlets/Start-OPNSenseFirmwareUpgrade.md @@ -0,0 +1,84 @@ +# Start-OPNSenseFirmwareUpgrade + +## SYNOPSIS +Starts a firmware upgrade on an OPNSense firewall. + +## SYNTAX + +``` +Start-OPNSenseFirmwareUpgrade [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Start-OPNSenseFirmwareUpgrade cmdlet starts a firmware upgrade on an OPNSense firewall. This cmdlet performs a major version upgrade, not just an update. + +## EXAMPLES + +### Example 1: Start a firmware upgrade +```powershell +Start-OPNSenseFirmwareUpgrade +``` + +This example starts a firmware upgrade on the OPNSense firewall. + +### Example 2: Start a firmware upgrade with confirmation +```powershell +Start-OPNSenseFirmwareUpgrade -Confirm +``` + +This example prompts for confirmation before starting the firmware upgrade. + +## PARAMETERS + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Upgrading the firmware will require a reboot of the firewall for the changes to take effect. +It is strongly recommended to create a backup of the firewall configuration before upgrading the firmware. +This cmdlet performs a major version upgrade, which may have significant changes and potential compatibility issues. + +## RELATED LINKS + +[Get-OPNSenseFirmware](Get-OPNSenseFirmware.md) +[Update-OPNSenseFirmware](Update-OPNSenseFirmware.md) diff --git a/docs/cmdlets/Start-OPNSenseService.md b/docs/cmdlets/Start-OPNSenseService.md new file mode 100644 index 0000000..c4a6f07 --- /dev/null +++ b/docs/cmdlets/Start-OPNSenseService.md @@ -0,0 +1,99 @@ +# Start-OPNSenseService + +## SYNOPSIS +Starts a service on an OPNSense firewall. + +## SYNTAX + +``` +Start-OPNSenseService -Name [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Start-OPNSenseService cmdlet starts a service on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Start a service +```powershell +Start-OPNSenseService -Name "dhcpd" +``` + +This example starts the DHCP service on the OPNSense firewall. + +### Example 2: Start a service with confirmation +```powershell +Start-OPNSenseService -Name "unbound" -Confirm +``` + +This example prompts for confirmation before starting the DNS resolver service. + +## PARAMETERS + +### -Name +The name of the service to start. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the service name to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Some services may require additional configuration before they can be started. + +## RELATED LINKS + +[Get-OPNSenseService](Get-OPNSenseService.md) +[Stop-OPNSenseService](Stop-OPNSenseService.md) +[Restart-OPNSenseService](Restart-OPNSenseService.md) diff --git a/docs/cmdlets/Stop-OPNSenseService.md b/docs/cmdlets/Stop-OPNSenseService.md new file mode 100644 index 0000000..9ffbbd5 --- /dev/null +++ b/docs/cmdlets/Stop-OPNSenseService.md @@ -0,0 +1,99 @@ +# Stop-OPNSenseService + +## SYNOPSIS +Stops a service on an OPNSense firewall. + +## SYNTAX + +``` +Stop-OPNSenseService -Name [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Stop-OPNSenseService cmdlet stops a service on an OPNSense firewall. + +## EXAMPLES + +### Example 1: Stop a service +```powershell +Stop-OPNSenseService -Name "dhcpd" +``` + +This example stops the DHCP service on the OPNSense firewall. + +### Example 2: Stop a service with confirmation +```powershell +Stop-OPNSenseService -Name "unbound" -Confirm +``` + +This example prompts for confirmation before stopping the DNS resolver service. + +## PARAMETERS + +### -Name +The name of the service to stop. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the service name to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Stopping essential services may disrupt network connectivity or firewall functionality. + +## RELATED LINKS + +[Get-OPNSenseService](Get-OPNSenseService.md) +[Start-OPNSenseService](Start-OPNSenseService.md) +[Restart-OPNSenseService](Restart-OPNSenseService.md) diff --git a/docs/cmdlets/Stop-OPNSenseSystem.md b/docs/cmdlets/Stop-OPNSenseSystem.md new file mode 100644 index 0000000..ed5a5e0 --- /dev/null +++ b/docs/cmdlets/Stop-OPNSenseSystem.md @@ -0,0 +1,85 @@ +# Stop-OPNSenseSystem + +## SYNOPSIS +Shuts down an OPNSense firewall. + +## SYNTAX + +``` +Stop-OPNSenseSystem [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Stop-OPNSenseSystem cmdlet shuts down an OPNSense firewall. + +## EXAMPLES + +### Example 1: Shut down the system +```powershell +Stop-OPNSenseSystem +``` + +This example shuts down the OPNSense firewall. + +### Example 2: Shut down the system with confirmation +```powershell +Stop-OPNSenseSystem -Confirm +``` + +This example prompts for confirmation before shutting down the OPNSense firewall. + +## PARAMETERS + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Shutting down the firewall will disrupt network connectivity. +The connection to the firewall will be lost during the shutdown. +The firewall will remain off until it is physically powered on again. + +## RELATED LINKS + +[Restart-OPNSenseSystem](Restart-OPNSenseSystem.md) +[Get-OPNSenseSystemStatus](Get-OPNSenseSystemStatus.md) +[Get-OPNSenseSystemInfo](Get-OPNSenseSystemInfo.md) diff --git a/docs/cmdlets/Uninstall-OPNSensePlugin.md b/docs/cmdlets/Uninstall-OPNSensePlugin.md new file mode 100644 index 0000000..fd25276 --- /dev/null +++ b/docs/cmdlets/Uninstall-OPNSensePlugin.md @@ -0,0 +1,102 @@ +# Uninstall-OPNSensePlugin + +## SYNOPSIS +Uninstalls a plugin from an OPNSense firewall. + +## SYNTAX + +``` +Uninstall-OPNSensePlugin -Name [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Uninstall-OPNSensePlugin cmdlet uninstalls a plugin from an OPNSense firewall. + +## EXAMPLES + +### Example 1: Uninstall a plugin +```powershell +Uninstall-OPNSensePlugin -Name "os-acme-client" +``` + +This example uninstalls the plugin with the name "os-acme-client" from the OPNSense firewall. + +### Example 2: Uninstall a plugin with confirmation +```powershell +Uninstall-OPNSensePlugin -Name "os-theme-cicada" -Confirm +``` + +This example prompts for confirmation before uninstalling the plugin. + +## PARAMETERS + +### -Name +The name of the plugin to uninstall. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### System.String +You can pipe a string containing the plugin name to this cmdlet. + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Uninstalling plugins may require a reboot of the firewall for the changes to take effect. +Some plugins may have dependencies that need to be uninstalled first. +Uninstalling a plugin will remove all configuration data associated with the plugin. + +## RELATED LINKS + +[Get-OPNSensePlugin](Get-OPNSensePlugin.md) +[Install-OPNSensePlugin](Install-OPNSensePlugin.md) +[Enable-OPNSensePlugin](Enable-OPNSensePlugin.md) +[Disable-OPNSensePlugin](Disable-OPNSensePlugin.md) diff --git a/docs/cmdlets/Update-OPNSenseFirmware.md b/docs/cmdlets/Update-OPNSenseFirmware.md new file mode 100644 index 0000000..65a60c1 --- /dev/null +++ b/docs/cmdlets/Update-OPNSenseFirmware.md @@ -0,0 +1,83 @@ +# Update-OPNSenseFirmware + +## SYNOPSIS +Updates the firmware on an OPNSense firewall. + +## SYNTAX + +``` +Update-OPNSenseFirmware [-WhatIf] [-Confirm] +``` + +## DESCRIPTION +The Update-OPNSenseFirmware cmdlet updates the firmware on an OPNSense firewall. This cmdlet checks for updates and installs them if available. + +## EXAMPLES + +### Example 1: Update firmware +```powershell +Update-OPNSenseFirmware +``` + +This example updates the firmware on the OPNSense firewall. + +### Example 2: Update firmware with confirmation +```powershell +Update-OPNSenseFirmware -Confirm +``` + +This example prompts for confirmation before updating the firmware. + +## PARAMETERS + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### System.Object +Returns an object representing the result of the operation. + +## NOTES +This cmdlet requires a connection to an OPNSense firewall. Use Connect-OPNSense to establish a connection. +Updating the firmware may require a reboot of the firewall for the changes to take effect. +It is recommended to create a backup of the firewall configuration before updating the firmware. + +## RELATED LINKS + +[Get-OPNSenseFirmware](Get-OPNSenseFirmware.md) +[Start-OPNSenseFirmwareUpgrade](Start-OPNSenseFirmwareUpgrade.md) diff --git a/src/PSOPNSenseAPI/PSOPNSenseAPI.psd1 b/src/PSOPNSenseAPI/PSOPNSenseAPI.psd1 index 9543e90..e7a92de 100644 --- a/src/PSOPNSenseAPI/PSOPNSenseAPI.psd1 +++ b/src/PSOPNSenseAPI/PSOPNSenseAPI.psd1 @@ -3,7 +3,7 @@ RootModule = 'lib\PSOPNSenseAPI.dll' # Version number of this module. - ModuleVersion = '2025.04.15.1143' + ModuleVersion = '2025.04.15.1033' # Supported PSEditions CompatiblePSEditions = @('Desktop', 'Core')