feat: support Zone-Based Firewalls (#33)
* feat: support Zone-Based Firewalls * chore: add usage example of zone-based firewall * chore: add note to readme to support unifi controller v2 * fix: invalid path for reordering firewall zone policies
This commit is contained in:
committed by
GitHub
parent
16f71e7fe9
commit
637809c663
@@ -52,4 +52,46 @@ if err != nil {
|
||||
log.Fatalf("Error updating guest access setting: %v", err)
|
||||
}
|
||||
// Use the updated setting
|
||||
```
|
||||
|
||||
## Create a Firewall Zone
|
||||
|
||||
To create firewall zone:
|
||||
|
||||
```go
|
||||
fz, err := c.CreateFirewallZone(ctx, "default", &unifi.FirewallZone{
|
||||
Name: "my-zone",
|
||||
NetworkIDs: []string{},
|
||||
})
|
||||
if err != nil {
|
||||
fmt.Printf("Error: %v\n", err)
|
||||
} else {
|
||||
fmt.Printf("Firewall Zone created: %v\n", fz)
|
||||
}
|
||||
```
|
||||
|
||||
Then you can create a firewall zone policy (minimal example):
|
||||
|
||||
```go
|
||||
fzp, err := c.CreateFirewallZonePolicy(ctx, "default", &unifi.FirewallZonePolicy{
|
||||
Name: "my-zone-policy",
|
||||
Action: "REJECT",
|
||||
Enabled: true,
|
||||
IPVersion: "BOTH",
|
||||
Source: unifi.FirewallZonePolicySource{
|
||||
ZoneID: fz.ID,
|
||||
},
|
||||
Destination: unifi.FirewallZonePolicyDestination{
|
||||
ZoneID: fz.ID,
|
||||
},
|
||||
Schedule: unifi.FirewallZonePolicySchedule{
|
||||
Mode: "ALWAYS",
|
||||
},
|
||||
})
|
||||
if err != nil {
|
||||
fmt.Printf("Error: %v\n", err)
|
||||
return
|
||||
} else {
|
||||
fmt.Printf("Firewall Zone Policy created: %v\n", fzp)
|
||||
}
|
||||
```
|
||||
Reference in New Issue
Block a user