published on Wednesday, Jul 15, 2026 by UpCloudLtd
published on Wednesday, Jul 15, 2026 by UpCloudLtd
This resource represents an UpCloud SDN firewall ruleset. Rules are managed as an ordered list; their position in the API is determined by their order in the rules list.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as upcloud from "@upcloud/pulumi-upcloud";
// Create a stateful firewall ruleset with default DNS rules enabled
const example = new upcloud.FirewallRuleset("example", {
name: "example-ruleset",
description: "Example firewall ruleset for production servers",
defaultDnsRulesEnabled: true,
labels: {
environment: "production",
managed_by: "terraform",
},
});
// Create a firewall ruleset attached to a specific server
const exampleServer = new upcloud.Server("example", {
hostname: "terraform.example.tld",
zone: "de-fra1",
plan: "1xCPU-1GB",
template: {
storage: "Ubuntu Server 24.04 LTS (Noble Numbat)",
},
networkInterfaces: [{
type: "utility",
}],
});
const serverRuleset = new upcloud.FirewallRuleset("server_ruleset", {
name: "server-ruleset",
description: "Firewall rules for example server",
serverUuid: exampleServer.id,
});
import pulumi
import pulumi_upcloud as upcloud
# Create a stateful firewall ruleset with default DNS rules enabled
example = upcloud.FirewallRuleset("example",
name="example-ruleset",
description="Example firewall ruleset for production servers",
default_dns_rules_enabled=True,
labels={
"environment": "production",
"managed_by": "terraform",
})
# Create a firewall ruleset attached to a specific server
example_server = upcloud.Server("example",
hostname="terraform.example.tld",
zone="de-fra1",
plan="1xCPU-1GB",
template={
"storage": "Ubuntu Server 24.04 LTS (Noble Numbat)",
},
network_interfaces=[{
"type": "utility",
}])
server_ruleset = upcloud.FirewallRuleset("server_ruleset",
name="server-ruleset",
description="Firewall rules for example server",
server_uuid=example_server.id)
package main
import (
"github.com/UpCloudLtd/pulumi-upcloud/sdk/go/upcloud"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Create a stateful firewall ruleset with default DNS rules enabled
_, err := upcloud.NewFirewallRuleset(ctx, "example", &upcloud.FirewallRulesetArgs{
Name: pulumi.String("example-ruleset"),
Description: pulumi.String("Example firewall ruleset for production servers"),
DefaultDnsRulesEnabled: pulumi.Bool(true),
Labels: pulumi.StringMap{
"environment": pulumi.String("production"),
"managed_by": pulumi.String("terraform"),
},
})
if err != nil {
return err
}
// Create a firewall ruleset attached to a specific server
exampleServer, err := upcloud.NewServer(ctx, "example", &upcloud.ServerArgs{
Hostname: pulumi.String("terraform.example.tld"),
Zone: pulumi.String("de-fra1"),
Plan: pulumi.String("1xCPU-1GB"),
Template: &upcloud.ServerTemplateArgs{
Storage: pulumi.String("Ubuntu Server 24.04 LTS (Noble Numbat)"),
},
NetworkInterfaces: upcloud.ServerNetworkInterfaceArray{
&upcloud.ServerNetworkInterfaceArgs{
Type: pulumi.String("utility"),
},
},
})
if err != nil {
return err
}
_, err = upcloud.NewFirewallRuleset(ctx, "server_ruleset", &upcloud.FirewallRulesetArgs{
Name: pulumi.String("server-ruleset"),
Description: pulumi.String("Firewall rules for example server"),
ServerUuid: exampleServer.ID(),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using UpCloud = UpCloud.Pulumi.UpCloud;
return await Deployment.RunAsync(() =>
{
// Create a stateful firewall ruleset with default DNS rules enabled
var example = new UpCloud.FirewallRuleset("example", new()
{
Name = "example-ruleset",
Description = "Example firewall ruleset for production servers",
DefaultDnsRulesEnabled = true,
Labels =
{
{ "environment", "production" },
{ "managed_by", "terraform" },
},
});
// Create a firewall ruleset attached to a specific server
var exampleServer = new UpCloud.Server("example", new()
{
Hostname = "terraform.example.tld",
Zone = "de-fra1",
Plan = "1xCPU-1GB",
Template = new UpCloud.Inputs.ServerTemplateArgs
{
Storage = "Ubuntu Server 24.04 LTS (Noble Numbat)",
},
NetworkInterfaces = new[]
{
new UpCloud.Inputs.ServerNetworkInterfaceArgs
{
Type = "utility",
},
},
});
var serverRuleset = new UpCloud.FirewallRuleset("server_ruleset", new()
{
Name = "server-ruleset",
Description = "Firewall rules for example server",
ServerUuid = exampleServer.Id,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.upcloud.FirewallRuleset;
import com.pulumi.upcloud.FirewallRulesetArgs;
import com.pulumi.upcloud.Server;
import com.pulumi.upcloud.ServerArgs;
import com.pulumi.upcloud.inputs.ServerTemplateArgs;
import com.pulumi.upcloud.inputs.ServerNetworkInterfaceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
// Create a stateful firewall ruleset with default DNS rules enabled
var example = new FirewallRuleset("example", FirewallRulesetArgs.builder()
.name("example-ruleset")
.description("Example firewall ruleset for production servers")
.defaultDnsRulesEnabled(true)
.labels(Map.ofEntries(
Map.entry("environment", "production"),
Map.entry("managed_by", "terraform")
))
.build());
// Create a firewall ruleset attached to a specific server
var exampleServer = new Server("exampleServer", ServerArgs.builder()
.hostname("terraform.example.tld")
.zone("de-fra1")
.plan("1xCPU-1GB")
.template(ServerTemplateArgs.builder()
.storage("Ubuntu Server 24.04 LTS (Noble Numbat)")
.build())
.networkInterfaces(ServerNetworkInterfaceArgs.builder()
.type("utility")
.build())
.build());
var serverRuleset = new FirewallRuleset("serverRuleset", FirewallRulesetArgs.builder()
.name("server-ruleset")
.description("Firewall rules for example server")
.serverUuid(exampleServer.id())
.build());
}
}
resources:
# Create a stateful firewall ruleset with default DNS rules enabled
example:
type: upcloud:FirewallRuleset
properties:
name: example-ruleset
description: Example firewall ruleset for production servers
defaultDnsRulesEnabled: true # Add labels for organization
labels:
environment: production
managed_by: terraform
# Create a firewall ruleset attached to a specific server
exampleServer:
type: upcloud:Server
name: example
properties:
hostname: terraform.example.tld
zone: de-fra1
plan: 1xCPU-1GB
template:
storage: Ubuntu Server 24.04 LTS (Noble Numbat)
networkInterfaces:
- type: utility
serverRuleset:
type: upcloud:FirewallRuleset
name: server_ruleset
properties:
name: server-ruleset
description: Firewall rules for example server
serverUuid: ${exampleServer.id}
Example coming soon!
Create FirewallRuleset Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new FirewallRuleset(name: string, args?: FirewallRulesetArgs, opts?: CustomResourceOptions);@overload
def FirewallRuleset(resource_name: str,
args: Optional[FirewallRulesetArgs] = None,
opts: Optional[ResourceOptions] = None)
@overload
def FirewallRuleset(resource_name: str,
opts: Optional[ResourceOptions] = None,
default_dns_rules_enabled: Optional[bool] = None,
description: Optional[str] = None,
enabled: Optional[bool] = None,
labels: Optional[Mapping[str, str]] = None,
name: Optional[str] = None,
rules: Optional[Sequence[FirewallRulesetRuleArgs]] = None,
server_uuid: Optional[str] = None)func NewFirewallRuleset(ctx *Context, name string, args *FirewallRulesetArgs, opts ...ResourceOption) (*FirewallRuleset, error)public FirewallRuleset(string name, FirewallRulesetArgs? args = null, CustomResourceOptions? opts = null)
public FirewallRuleset(String name, FirewallRulesetArgs args)
public FirewallRuleset(String name, FirewallRulesetArgs args, CustomResourceOptions options)
type: upcloud:FirewallRuleset
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "upcloud_firewall_ruleset" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args FirewallRulesetArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args FirewallRulesetArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args FirewallRulesetArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args FirewallRulesetArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args FirewallRulesetArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var firewallRulesetResource = new UpCloud.FirewallRuleset("firewallRulesetResource", new()
{
DefaultDnsRulesEnabled = false,
Description = "string",
Enabled = false,
Labels =
{
{ "string", "string" },
},
Name = "string",
Rules = new[]
{
new UpCloud.Inputs.FirewallRulesetRuleArgs
{
Direction = "string",
Family = "string",
Action = "string",
Enabled = false,
IcmpType = 0,
DestinationPortEnd = 0,
DestinationPortStart = 0,
DestinationAddressEnd = "string",
DestinationAddressCidr = "string",
Comment = "string",
DestinationAddressStart = "string",
Position = 0,
Protocol = "string",
SourceAddressCidr = "string",
SourceAddressEnd = "string",
SourceAddressStart = "string",
SourcePortEnd = 0,
SourcePortStart = 0,
},
},
ServerUuid = "string",
});
example, err := upcloud.NewFirewallRuleset(ctx, "firewallRulesetResource", &upcloud.FirewallRulesetArgs{
DefaultDnsRulesEnabled: pulumi.Bool(false),
Description: pulumi.String("string"),
Enabled: pulumi.Bool(false),
Labels: pulumi.StringMap{
"string": pulumi.String("string"),
},
Name: pulumi.String("string"),
Rules: upcloud.FirewallRulesetRuleArray{
&upcloud.FirewallRulesetRuleArgs{
Direction: pulumi.String("string"),
Family: pulumi.String("string"),
Action: pulumi.String("string"),
Enabled: pulumi.Bool(false),
IcmpType: pulumi.Int(0),
DestinationPortEnd: pulumi.Int(0),
DestinationPortStart: pulumi.Int(0),
DestinationAddressEnd: pulumi.String("string"),
DestinationAddressCidr: pulumi.String("string"),
Comment: pulumi.String("string"),
DestinationAddressStart: pulumi.String("string"),
Position: pulumi.Int(0),
Protocol: pulumi.String("string"),
SourceAddressCidr: pulumi.String("string"),
SourceAddressEnd: pulumi.String("string"),
SourceAddressStart: pulumi.String("string"),
SourcePortEnd: pulumi.Int(0),
SourcePortStart: pulumi.Int(0),
},
},
ServerUuid: pulumi.String("string"),
})
resource "upcloud_firewall_ruleset" "firewallRulesetResource" {
lifecycle {
create_before_destroy = true
}
default_dns_rules_enabled = false
description = "string"
enabled = false
labels = {
"string" = "string"
}
name = "string"
rules {
direction = "string"
family = "string"
action = "string"
enabled = false
icmp_type = 0
destination_port_end = 0
destination_port_start = 0
destination_address_end = "string"
destination_address_cidr = "string"
comment = "string"
destination_address_start = "string"
position = 0
protocol = "string"
source_address_cidr = "string"
source_address_end = "string"
source_address_start = "string"
source_port_end = 0
source_port_start = 0
}
server_uuid = "string"
}
var firewallRulesetResource = new FirewallRuleset("firewallRulesetResource", FirewallRulesetArgs.builder()
.defaultDnsRulesEnabled(false)
.description("string")
.enabled(false)
.labels(Map.of("string", "string"))
.name("string")
.rules(FirewallRulesetRuleArgs.builder()
.direction("string")
.family("string")
.action("string")
.enabled(false)
.icmpType(0)
.destinationPortEnd(0)
.destinationPortStart(0)
.destinationAddressEnd("string")
.destinationAddressCidr("string")
.comment("string")
.destinationAddressStart("string")
.position(0)
.protocol("string")
.sourceAddressCidr("string")
.sourceAddressEnd("string")
.sourceAddressStart("string")
.sourcePortEnd(0)
.sourcePortStart(0)
.build())
.serverUuid("string")
.build());
firewall_ruleset_resource = upcloud.FirewallRuleset("firewallRulesetResource",
default_dns_rules_enabled=False,
description="string",
enabled=False,
labels={
"string": "string",
},
name="string",
rules=[{
"direction": "string",
"family": "string",
"action": "string",
"enabled": False,
"icmp_type": 0,
"destination_port_end": 0,
"destination_port_start": 0,
"destination_address_end": "string",
"destination_address_cidr": "string",
"comment": "string",
"destination_address_start": "string",
"position": 0,
"protocol": "string",
"source_address_cidr": "string",
"source_address_end": "string",
"source_address_start": "string",
"source_port_end": 0,
"source_port_start": 0,
}],
server_uuid="string")
const firewallRulesetResource = new upcloud.FirewallRuleset("firewallRulesetResource", {
defaultDnsRulesEnabled: false,
description: "string",
enabled: false,
labels: {
string: "string",
},
name: "string",
rules: [{
direction: "string",
family: "string",
action: "string",
enabled: false,
icmpType: 0,
destinationPortEnd: 0,
destinationPortStart: 0,
destinationAddressEnd: "string",
destinationAddressCidr: "string",
comment: "string",
destinationAddressStart: "string",
position: 0,
protocol: "string",
sourceAddressCidr: "string",
sourceAddressEnd: "string",
sourceAddressStart: "string",
sourcePortEnd: 0,
sourcePortStart: 0,
}],
serverUuid: "string",
});
type: upcloud:FirewallRuleset
properties:
defaultDnsRulesEnabled: false
description: string
enabled: false
labels:
string: string
name: string
rules:
- action: string
comment: string
destinationAddressCidr: string
destinationAddressEnd: string
destinationAddressStart: string
destinationPortEnd: 0
destinationPortStart: 0
direction: string
enabled: false
family: string
icmpType: 0
position: 0
protocol: string
sourceAddressCidr: string
sourceAddressEnd: string
sourceAddressStart: string
sourcePortEnd: 0
sourcePortStart: 0
serverUuid: string
FirewallRuleset Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The FirewallRuleset resource accepts the following input properties:
- Default
Dns boolRules Enabled - Whether default DNS rules are enabled.
- Description string
- Description of the firewall ruleset.
- Enabled bool
- Whether the ruleset is enabled.
- Labels Dictionary<string, string>
- Ruleset labels as key/value pairs.
- Name string
- Name of the firewall ruleset.
- Rules
List<Up
Cloud. Pulumi. Up Cloud. Inputs. Firewall Ruleset Rule> - Ordered list of firewall rules. Rules are applied in list order; the position attribute reflects the 1-based index assigned by the API and cannot be configured.
- Server
Uuid string - Optional server UUID to bind with this ruleset. Create-only in API.
- Default
Dns boolRules Enabled - Whether default DNS rules are enabled.
- Description string
- Description of the firewall ruleset.
- Enabled bool
- Whether the ruleset is enabled.
- Labels map[string]string
- Ruleset labels as key/value pairs.
- Name string
- Name of the firewall ruleset.
- Rules
[]Firewall
Ruleset Rule Args - Ordered list of firewall rules. Rules are applied in list order; the position attribute reflects the 1-based index assigned by the API and cannot be configured.
- Server
Uuid string - Optional server UUID to bind with this ruleset. Create-only in API.
- default_
dns_ boolrules_ enabled - Whether default DNS rules are enabled.
- description string
- Description of the firewall ruleset.
- enabled bool
- Whether the ruleset is enabled.
- labels map(string)
- Ruleset labels as key/value pairs.
- name string
- Name of the firewall ruleset.
- rules list(object)
- Ordered list of firewall rules. Rules are applied in list order; the position attribute reflects the 1-based index assigned by the API and cannot be configured.
- server_
uuid string - Optional server UUID to bind with this ruleset. Create-only in API.
- default
Dns BooleanRules Enabled - Whether default DNS rules are enabled.
- description String
- Description of the firewall ruleset.
- enabled Boolean
- Whether the ruleset is enabled.
- labels Map<String,String>
- Ruleset labels as key/value pairs.
- name String
- Name of the firewall ruleset.
- rules
List<Firewall
Ruleset Rule> - Ordered list of firewall rules. Rules are applied in list order; the position attribute reflects the 1-based index assigned by the API and cannot be configured.
- server
Uuid String - Optional server UUID to bind with this ruleset. Create-only in API.
- default
Dns booleanRules Enabled - Whether default DNS rules are enabled.
- description string
- Description of the firewall ruleset.
- enabled boolean
- Whether the ruleset is enabled.
- labels {[key: string]: string}
- Ruleset labels as key/value pairs.
- name string
- Name of the firewall ruleset.
- rules
Firewall
Ruleset Rule[] - Ordered list of firewall rules. Rules are applied in list order; the position attribute reflects the 1-based index assigned by the API and cannot be configured.
- server
Uuid string - Optional server UUID to bind with this ruleset. Create-only in API.
- default_
dns_ boolrules_ enabled - Whether default DNS rules are enabled.
- description str
- Description of the firewall ruleset.
- enabled bool
- Whether the ruleset is enabled.
- labels Mapping[str, str]
- Ruleset labels as key/value pairs.
- name str
- Name of the firewall ruleset.
- rules
Sequence[Firewall
Ruleset Rule Args] - Ordered list of firewall rules. Rules are applied in list order; the position attribute reflects the 1-based index assigned by the API and cannot be configured.
- server_
uuid str - Optional server UUID to bind with this ruleset. Create-only in API.
- default
Dns BooleanRules Enabled - Whether default DNS rules are enabled.
- description String
- Description of the firewall ruleset.
- enabled Boolean
- Whether the ruleset is enabled.
- labels Map<String>
- Ruleset labels as key/value pairs.
- name String
- Name of the firewall ruleset.
- rules List<Property Map>
- Ordered list of firewall rules. Rules are applied in list order; the position attribute reflects the 1-based index assigned by the API and cannot be configured.
- server
Uuid String - Optional server UUID to bind with this ruleset. Create-only in API.
Outputs
All input properties are implicitly available as output properties. Additionally, the FirewallRuleset resource produces the following output properties:
- created_
at string - Creation timestamp.
- id string
- The provider-assigned unique ID for this managed resource.
- updated_
at string - Last update timestamp.
- version number
- Ruleset version.
- created_
at str - Creation timestamp.
- id str
- The provider-assigned unique ID for this managed resource.
- updated_
at str - Last update timestamp.
- version int
- Ruleset version.
Look up Existing FirewallRuleset Resource
Get an existing FirewallRuleset resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: FirewallRulesetState, opts?: CustomResourceOptions): FirewallRuleset@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
created_at: Optional[str] = None,
default_dns_rules_enabled: Optional[bool] = None,
description: Optional[str] = None,
enabled: Optional[bool] = None,
labels: Optional[Mapping[str, str]] = None,
name: Optional[str] = None,
rules: Optional[Sequence[FirewallRulesetRuleArgs]] = None,
server_uuid: Optional[str] = None,
updated_at: Optional[str] = None,
version: Optional[int] = None) -> FirewallRulesetfunc GetFirewallRuleset(ctx *Context, name string, id IDInput, state *FirewallRulesetState, opts ...ResourceOption) (*FirewallRuleset, error)public static FirewallRuleset Get(string name, Input<string> id, FirewallRulesetState? state, CustomResourceOptions? opts = null)public static FirewallRuleset get(String name, Output<String> id, FirewallRulesetState state, CustomResourceOptions options)resources: _: type: upcloud:FirewallRuleset get: id: ${id}import {
to = upcloud_firewall_ruleset.example
id = "${id}"
}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Created
At string - Creation timestamp.
- Default
Dns boolRules Enabled - Whether default DNS rules are enabled.
- Description string
- Description of the firewall ruleset.
- Enabled bool
- Whether the ruleset is enabled.
- Labels Dictionary<string, string>
- Ruleset labels as key/value pairs.
- Name string
- Name of the firewall ruleset.
- Rules
List<Up
Cloud. Pulumi. Up Cloud. Inputs. Firewall Ruleset Rule> - Ordered list of firewall rules. Rules are applied in list order; the position attribute reflects the 1-based index assigned by the API and cannot be configured.
- Server
Uuid string - Optional server UUID to bind with this ruleset. Create-only in API.
- Updated
At string - Last update timestamp.
- Version int
- Ruleset version.
- Created
At string - Creation timestamp.
- Default
Dns boolRules Enabled - Whether default DNS rules are enabled.
- Description string
- Description of the firewall ruleset.
- Enabled bool
- Whether the ruleset is enabled.
- Labels map[string]string
- Ruleset labels as key/value pairs.
- Name string
- Name of the firewall ruleset.
- Rules
[]Firewall
Ruleset Rule Args - Ordered list of firewall rules. Rules are applied in list order; the position attribute reflects the 1-based index assigned by the API and cannot be configured.
- Server
Uuid string - Optional server UUID to bind with this ruleset. Create-only in API.
- Updated
At string - Last update timestamp.
- Version int
- Ruleset version.
- created_
at string - Creation timestamp.
- default_
dns_ boolrules_ enabled - Whether default DNS rules are enabled.
- description string
- Description of the firewall ruleset.
- enabled bool
- Whether the ruleset is enabled.
- labels map(string)
- Ruleset labels as key/value pairs.
- name string
- Name of the firewall ruleset.
- rules list(object)
- Ordered list of firewall rules. Rules are applied in list order; the position attribute reflects the 1-based index assigned by the API and cannot be configured.
- server_
uuid string - Optional server UUID to bind with this ruleset. Create-only in API.
- updated_
at string - Last update timestamp.
- version number
- Ruleset version.
- created
At String - Creation timestamp.
- default
Dns BooleanRules Enabled - Whether default DNS rules are enabled.
- description String
- Description of the firewall ruleset.
- enabled Boolean
- Whether the ruleset is enabled.
- labels Map<String,String>
- Ruleset labels as key/value pairs.
- name String
- Name of the firewall ruleset.
- rules
List<Firewall
Ruleset Rule> - Ordered list of firewall rules. Rules are applied in list order; the position attribute reflects the 1-based index assigned by the API and cannot be configured.
- server
Uuid String - Optional server UUID to bind with this ruleset. Create-only in API.
- updated
At String - Last update timestamp.
- version Integer
- Ruleset version.
- created
At string - Creation timestamp.
- default
Dns booleanRules Enabled - Whether default DNS rules are enabled.
- description string
- Description of the firewall ruleset.
- enabled boolean
- Whether the ruleset is enabled.
- labels {[key: string]: string}
- Ruleset labels as key/value pairs.
- name string
- Name of the firewall ruleset.
- rules
Firewall
Ruleset Rule[] - Ordered list of firewall rules. Rules are applied in list order; the position attribute reflects the 1-based index assigned by the API and cannot be configured.
- server
Uuid string - Optional server UUID to bind with this ruleset. Create-only in API.
- updated
At string - Last update timestamp.
- version number
- Ruleset version.
- created_
at str - Creation timestamp.
- default_
dns_ boolrules_ enabled - Whether default DNS rules are enabled.
- description str
- Description of the firewall ruleset.
- enabled bool
- Whether the ruleset is enabled.
- labels Mapping[str, str]
- Ruleset labels as key/value pairs.
- name str
- Name of the firewall ruleset.
- rules
Sequence[Firewall
Ruleset Rule Args] - Ordered list of firewall rules. Rules are applied in list order; the position attribute reflects the 1-based index assigned by the API and cannot be configured.
- server_
uuid str - Optional server UUID to bind with this ruleset. Create-only in API.
- updated_
at str - Last update timestamp.
- version int
- Ruleset version.
- created
At String - Creation timestamp.
- default
Dns BooleanRules Enabled - Whether default DNS rules are enabled.
- description String
- Description of the firewall ruleset.
- enabled Boolean
- Whether the ruleset is enabled.
- labels Map<String>
- Ruleset labels as key/value pairs.
- name String
- Name of the firewall ruleset.
- rules List<Property Map>
- Ordered list of firewall rules. Rules are applied in list order; the position attribute reflects the 1-based index assigned by the API and cannot be configured.
- server
Uuid String - Optional server UUID to bind with this ruleset. Create-only in API.
- updated
At String - Last update timestamp.
- version Number
- Ruleset version.
Supporting Types
FirewallRulesetRule, FirewallRulesetRuleArgs
- Action string
- Rule action.
- Direction string
- Traffic direction the rule applies to.
- Family string
- Address family.
- Comment string
- Rule comment.
- Destination
Address stringCidr - Destination CIDR block.
- Destination
Address stringEnd - End of destination IP address range.
- Destination
Address stringStart - Start of destination IP address range.
- Destination
Port intEnd - End of destination port range.
- Destination
Port intStart - Start of destination port range.
- Enabled bool
- Whether the rule is enabled.
- Icmp
Type int - ICMP type number.
- Position int
- Rule position (1-based). Computed from the rule's index in the list.
- Protocol string
- IP protocol.
- Source
Address stringCidr - Source CIDR block.
- Source
Address stringEnd - End of source IP address range.
- Source
Address stringStart - Start of source IP address range.
- Source
Port intEnd - End of source port range.
- Source
Port intStart - Start of source port range.
- Action string
- Rule action.
- Direction string
- Traffic direction the rule applies to.
- Family string
- Address family.
- Comment string
- Rule comment.
- Destination
Address stringCidr - Destination CIDR block.
- Destination
Address stringEnd - End of destination IP address range.
- Destination
Address stringStart - Start of destination IP address range.
- Destination
Port intEnd - End of destination port range.
- Destination
Port intStart - Start of destination port range.
- Enabled bool
- Whether the rule is enabled.
- Icmp
Type int - ICMP type number.
- Position int
- Rule position (1-based). Computed from the rule's index in the list.
- Protocol string
- IP protocol.
- Source
Address stringCidr - Source CIDR block.
- Source
Address stringEnd - End of source IP address range.
- Source
Address stringStart - Start of source IP address range.
- Source
Port intEnd - End of source port range.
- Source
Port intStart - Start of source port range.
- action string
- Rule action.
- direction string
- Traffic direction the rule applies to.
- family string
- Address family.
- comment string
- Rule comment.
- destination_
address_ stringcidr - Destination CIDR block.
- destination_
address_ stringend - End of destination IP address range.
- destination_
address_ stringstart - Start of destination IP address range.
- destination_
port_ numberend - End of destination port range.
- destination_
port_ numberstart - Start of destination port range.
- enabled bool
- Whether the rule is enabled.
- icmp_
type number - ICMP type number.
- position number
- Rule position (1-based). Computed from the rule's index in the list.
- protocol string
- IP protocol.
- source_
address_ stringcidr - Source CIDR block.
- source_
address_ stringend - End of source IP address range.
- source_
address_ stringstart - Start of source IP address range.
- source_
port_ numberend - End of source port range.
- source_
port_ numberstart - Start of source port range.
- action String
- Rule action.
- direction String
- Traffic direction the rule applies to.
- family String
- Address family.
- comment String
- Rule comment.
- destination
Address StringCidr - Destination CIDR block.
- destination
Address StringEnd - End of destination IP address range.
- destination
Address StringStart - Start of destination IP address range.
- destination
Port IntegerEnd - End of destination port range.
- destination
Port IntegerStart - Start of destination port range.
- enabled Boolean
- Whether the rule is enabled.
- icmp
Type Integer - ICMP type number.
- position Integer
- Rule position (1-based). Computed from the rule's index in the list.
- protocol String
- IP protocol.
- source
Address StringCidr - Source CIDR block.
- source
Address StringEnd - End of source IP address range.
- source
Address StringStart - Start of source IP address range.
- source
Port IntegerEnd - End of source port range.
- source
Port IntegerStart - Start of source port range.
- action string
- Rule action.
- direction string
- Traffic direction the rule applies to.
- family string
- Address family.
- comment string
- Rule comment.
- destination
Address stringCidr - Destination CIDR block.
- destination
Address stringEnd - End of destination IP address range.
- destination
Address stringStart - Start of destination IP address range.
- destination
Port numberEnd - End of destination port range.
- destination
Port numberStart - Start of destination port range.
- enabled boolean
- Whether the rule is enabled.
- icmp
Type number - ICMP type number.
- position number
- Rule position (1-based). Computed from the rule's index in the list.
- protocol string
- IP protocol.
- source
Address stringCidr - Source CIDR block.
- source
Address stringEnd - End of source IP address range.
- source
Address stringStart - Start of source IP address range.
- source
Port numberEnd - End of source port range.
- source
Port numberStart - Start of source port range.
- action str
- Rule action.
- direction str
- Traffic direction the rule applies to.
- family str
- Address family.
- comment str
- Rule comment.
- destination_
address_ strcidr - Destination CIDR block.
- destination_
address_ strend - End of destination IP address range.
- destination_
address_ strstart - Start of destination IP address range.
- destination_
port_ intend - End of destination port range.
- destination_
port_ intstart - Start of destination port range.
- enabled bool
- Whether the rule is enabled.
- icmp_
type int - ICMP type number.
- position int
- Rule position (1-based). Computed from the rule's index in the list.
- protocol str
- IP protocol.
- source_
address_ strcidr - Source CIDR block.
- source_
address_ strend - End of source IP address range.
- source_
address_ strstart - Start of source IP address range.
- source_
port_ intend - End of source port range.
- source_
port_ intstart - Start of source port range.
- action String
- Rule action.
- direction String
- Traffic direction the rule applies to.
- family String
- Address family.
- comment String
- Rule comment.
- destination
Address StringCidr - Destination CIDR block.
- destination
Address StringEnd - End of destination IP address range.
- destination
Address StringStart - Start of destination IP address range.
- destination
Port NumberEnd - End of destination port range.
- destination
Port NumberStart - Start of destination port range.
- enabled Boolean
- Whether the rule is enabled.
- icmp
Type Number - ICMP type number.
- position Number
- Rule position (1-based). Computed from the rule's index in the list.
- protocol String
- IP protocol.
- source
Address StringCidr - Source CIDR block.
- source
Address StringEnd - End of source IP address range.
- source
Address StringStart - Start of source IP address range.
- source
Port NumberEnd - End of source port range.
- source
Port NumberStart - Start of source port range.
Package Details
- Repository
- upcloud UpCloudLtd/pulumi-upcloud
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
upcloudTerraform Provider.
published on Wednesday, Jul 15, 2026 by UpCloudLtd