Vultr Firewall groups enable the creation of firewall rules to filter incoming traffic on an instance's public network interface. Firewall rules consist of IPv4 or IPv6 port and service definitons to filter network traffic.
Follow this guide to enable a Vultr Firewall group on a Vultr Cloud GPU instance using the Vultr Customer Portal, API, CLI, or Terraform.
Send a GET
request to the List Instances endpoint and note the target instance's ID in your output.
$ curl "https://api.vultr.com/v2/instances" \
-X GET \
-H "Authorization: Bearer ${VULTR_API_KEY}"
Send a GET
request to the List Firewall Groups endpoint to list all firewall groups in your Vultr account.
$ curl "https://api.vultr.com/v2/firewalls" \
-X GET \
-H "Authorization: Bearer ${VULTR_API_KEY}"
Send a PATCH
request to the Update Instance endpoint to attach a firewall group to the instance.
$ curl "https://api.vultr.com/v2/instances/{instance-id}" \
-X PATCH \
-H "Authorization: Bearer ${VULTR_API_KEY}" \
-H "Content-Type: application/json" \
--data '{
"firewall_group_id" : "<firewall-id>",
}'
List all firewall groups in your Vultr account and note the target firewall group's ID.
$ vultr-cli firewall group list
List all instances in your Vultr account and note the target instance's ID.
$ vultr-cli instance list
Attach the firewall group to the instance.
$ vultr-cli instance update-firewall-group --instance-id <instance-id> --firewall-group-id <firewall-id>
Open your Terraform configuration for the existing Cloud GPU instance.
Create or reference a vultr_firewall_group
resource and attach it to the instance.
# Create a firewall group
resource "vultr_firewall_group" "web" {
description = "Web server firewall group"
}
# Add example rules to the group
resource "vultr_firewall_rule" "allow_http" {
firewall_group_id = vultr_firewall_group.web.id
protocol = "tcp"
ip_type = "v4"
subnet = "0.0.0.0"
subnet_size = 0
port = "80"
}
resource "vultr_firewall_rule" "allow_https" {
firewall_group_id = vultr_firewall_group.web.id
protocol = "tcp"
ip_type = "v4"
subnet = "0.0.0.0"
subnet_size = 0
port = "443"
}
# Attach the firewall group to the GPU instance
resource "vultr_instance" "gpu" {
# ...existing fields (region, plan, os_id, label, etc.)
firewall_group_id = vultr_firewall_group.web.id
}
Apply the configuration and observe the following output:
Apply complete! Resources: 3 added, 0 changed, 0 destroyed.
No comments yet.