Tag criterion category=value[,category=value]: a vNIC is a member when its VM has every tag of one criterion (repeat for alternatives)
--vm
Every vNIC of this VM (repeat)
--vnic
This vNIC, vm-N:nic-key (repeat)
--network
Every vNIC on this host-bridge network (repeat)
--mac
Every vNIC with this MAC address (repeat)
--prefix
Address or prefix outside the platform (repeat)
--group
Nested group fwgroup-N (repeat)
--shared
Visible to tenants by name (a provider group) values true, false
--tenant
Tenant of the new group
--body
Inline JSON body
--body-file
File with the JSON body (- for stdin)
--if-match
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Change a group: the flags given replace those fields (a list flag replaces the whole list), the rest stays. --body replaces the group
Usage
kyvernon firewall groups update [OPTIONS] <ID>
Argument
Description
Required
<ID>
Group id
yes
--name
Name (unique in its scope; sys: is reserved)
--description
Description
--criterion
Tag criterion category=value[,category=value]: a vNIC is a member when its VM has every tag of one criterion (repeat for alternatives)
--vm
Every vNIC of this VM (repeat)
--vnic
This vNIC, vm-N:nic-key (repeat)
--network
Every vNIC on this host-bridge network (repeat)
--mac
Every vNIC with this MAC address (repeat)
--prefix
Address or prefix outside the platform (repeat)
--group
Nested group fwgroup-N (repeat)
--shared
Visible to tenants by name (a provider group) values true, false
--body
Inline JSON body
--body-file
File with the JSON body (- for stdin)
--if-match
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Order inside the category (lower first; default: after the last policy)
--stateful
Replies are allowed automatically (default true) values true, false
--applied-to
Group the policy applies to (repeat; none: every vNIC, a tenant's: its own)
--enabled
Enabled (default true) values true, false
--tenant
Tenant of the new policy
--body
Inline JSON body
--body-file
File with the JSON body (- for stdin)
--if-match
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Order inside the category (lower first; default: after the last policy)
--stateful
Replies are allowed automatically (default true) values true, false
--applied-to
Group the policy applies to (repeat; none: every vNIC, a tenant's: its own)
--enabled
Enabled (default true) values true, false
--body
Inline JSON body
--body-file
File with the JSON body (- for stdin)
--if-match
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Direction relative to the vNIC (default in-out) values in, out, in-out
--source
Source: group id, address or prefix (repeat; none: any)
--sources-negated
Match everything except the sources values true, false
--destination
Destination: group id, address or prefix (repeat; none: any)
--destinations-negated
Match everything except the destinations values true, false
--service
Service proto[:detail] such as tcp:22,443, or named:fwsvc-N (repeat; none: any IP traffic)
--log
Log matches values true, false
--applied-to
Group the rule applies to (repeat; none: the policy's)
--enabled
Enabled (default true) values true, false
--ip-version
IP families (default any) values any, v4, v6
--position
Position in the policy (0 first; default: last)
--body
Inline JSON body
--body-file
File with the JSON body (- for stdin)
--if-match
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Change a rule: the flags given replace those fields
Usage
kyvernon firewall rules update [OPTIONS] <RULE>
Argument
Description
Required
<RULE>
Rule id or number
yes
--policy
Policy id
yes
--name
Display name
--action
Action values allow, drop, reject, pass
--direction
Direction relative to the vNIC (default in-out) values in, out, in-out
--source
Source: group id, address or prefix (repeat; none: any)
--sources-negated
Match everything except the sources values true, false
--destination
Destination: group id, address or prefix (repeat; none: any)
--destinations-negated
Match everything except the destinations values true, false
--service
Service proto[:detail] such as tcp:22,443, or named:fwsvc-N (repeat; none: any IP traffic)
--log
Log matches values true, false
--applied-to
Group the rule applies to (repeat; none: the policy's)
--enabled
Enabled (default true) values true, false
--ip-version
IP families (default any) values any, v4, v6
--body
Inline JSON body
--body-file
File with the JSON body (- for stdin)
--if-match
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Open a port of a VM: an inbound allow rule in the VM's own policy
Usage
kyvernon firewall open-port [OPTIONS] <VM>
Argument
Description
Required
<VM>
VM id
yes
--tcp
TCP port or range to open, e.g. 443 or 8000-8100 (repeat)
--udp
UDP port or range to open (repeat)
--from
Source allowed: address or prefix (repeat; none: any)
--ip-version
IP families values any, v4, v6
--name
Rule name (default open <protocol> <ports>)
--if-match
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Create or replace a provider template from a JSON body ({description, note, rules: [{name, services, from, ipVersion}]})
Usage
kyvernon firewall templates set [OPTIONS] <TEMPLATE>
Argument
Description
Required
<TEMPLATE>
Template id
yes
--body
Inline JSON body
--body-file
File with the JSON body (- for stdin)
--if-match
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Create a provider profile (--name, --inbound and --outbound are required)
Usage
kyvernon firewall profiles create [OPTIONS]
Argument
Description
Required
--name
Name
--inbound
Default action for traffic arriving at the vNIC values allow, drop, reject
--outbound
Default action for traffic leaving the vNIC values allow, drop, reject
--baseline
Baseline policy id (none removes it)
--selectable
Tenants may choose it values true, false
--body
Inline JSON body
--body-file
File with the JSON body (- for stdin)
--if-match
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Change a profile: the flags given replace those fields (a built-in profile is overridden, not deleted)
Usage
kyvernon firewall profiles set [OPTIONS] <ID>
Argument
Description
Required
<ID>
Profile id
yes
--name
Name
--inbound
Default action for traffic arriving at the vNIC values allow, drop, reject
--outbound
Default action for traffic leaving the vNIC values allow, drop, reject
--baseline
Baseline policy id (none removes it)
--selectable
Tenants may choose it values true, false
--body
Inline JSON body
--body-file
File with the JSON body (- for stdin)
--if-match
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
Change settings: the flags given replace those values
Usage
kyvernon firewall settings set [OPTIONS]
Argument
Description
Required
--log-rate-pps
Log rate per host, packets per second
--reject-rate-pps
Reject answers per second per bridge
--flow-limit-per-bridge
Firewall flows per host bridge
--ct-limit-per-port
Connection-tracking entries per vNIC
--monitor-report-days
Days a monitor report covers (1 to 90)
--enforce-new
New vNICs get mode enforce (stored; this release starts new vNICs in mode off) values true, false
--body
Inline JSON body
--body-file
File with the JSON body (- for stdin)
--if-match
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)
kyvernon firewall tag-categories set [OPTIONS] <ID>
Argument
Description
Required
<ID>
Category id (category-N)
yes
--provider-managed
Only the provider attaches its tags, and provider groups evaluate only such categories values true, false
yes
--if-match
Record version the write is based on (If-Match); a stale version fails with a conflict. Updates made with flags read the object first and use the version they read
--wait
Answer when the hosts concerned applied the change (?wait=realized); the hosts that did not in time are listed in pendingHosts and the exit code is 1
--wait-timeout
Longest --wait, in seconds (server default 30, at most 300)