mirror of
https://github.com/freedbygrace/PSOPNSenseAPI.git
synced 2026-08-07 09:23:17 +00:00
Add port forwarding support, improve XML documentation, and add unit tests
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
# Import the module
|
||||
Import-Module PSOPNSenseAPI
|
||||
|
||||
# Connect to the OPNSense firewall
|
||||
Connect-OPNSense -Server "https://firewall.example.com" -ApiKey "your_api_key" -ApiSecret "your_api_secret" -SkipCertificateCheck
|
||||
|
||||
# Get all gateways
|
||||
$gateways = Get-OPNSenseGateway
|
||||
Write-Output "Gateways:"
|
||||
$gateways | Format-Table
|
||||
|
||||
# Get gateways with status information
|
||||
$gatewaysWithStatus = Get-OPNSenseGateway -IncludeStatus
|
||||
Write-Output "Gateways with Status:"
|
||||
$gatewaysWithStatus | Format-Table
|
||||
|
||||
# Create a new gateway
|
||||
$newGateway = New-OPNSenseGateway -Name "WAN2_GW" -Interface "opt1" -IpAddress "203.0.113.1" -Description "Secondary WAN" -Apply
|
||||
Write-Output "Created new gateway with UUID: $newGateway"
|
||||
|
||||
# Update a gateway
|
||||
Set-OPNSenseGateway -Uuid $newGateway -MonitorIp "8.8.8.8" -Weight 2 -Apply
|
||||
Write-Output "Updated gateway monitor IP and weight"
|
||||
|
||||
# Make a gateway the default gateway
|
||||
Set-OPNSenseGateway -Uuid $newGateway -Default -Apply
|
||||
Write-Output "Set gateway as default"
|
||||
|
||||
# Get all routes
|
||||
$routes = Get-OPNSenseRoute
|
||||
Write-Output "Routes:"
|
||||
$routes | Format-Table
|
||||
|
||||
# Create a new route
|
||||
$newRoute = New-OPNSenseRoute -Network "192.168.100.0/24" -Gateway "WAN2_GW" -Description "Remote Office" -Apply
|
||||
Write-Output "Created new route with UUID: $newRoute"
|
||||
|
||||
# Update a route
|
||||
Set-OPNSenseRoute -Uuid $newRoute -Gateway "WAN_GW" -Apply
|
||||
Write-Output "Updated route gateway"
|
||||
|
||||
# Disable a route
|
||||
Set-OPNSenseRoute -Uuid $newRoute -Disabled -Apply
|
||||
Write-Output "Disabled route"
|
||||
|
||||
# Enable a route
|
||||
Set-OPNSenseRoute -Uuid $newRoute -Enabled -Apply
|
||||
Write-Output "Enabled route"
|
||||
|
||||
# Remove a route
|
||||
Remove-OPNSenseRoute -Uuid $newRoute -Force -Apply
|
||||
Write-Output "Removed route"
|
||||
|
||||
# Remove a gateway
|
||||
Remove-OPNSenseGateway -Uuid $newGateway -Force -Apply
|
||||
Write-Output "Removed gateway"
|
||||
|
||||
# Disconnect from the firewall
|
||||
Disconnect-OPNSense
|
||||
Reference in New Issue
Block a user