Skip to main content

Networking

Networking is key to setting up Private Runner Groups on the StackGuardian platform. This document covers the essential networking requirements and endpoints needed for your runners to operate securely and efficiently.

Networking with SG Runner Groups

The following table lists the domains required for communication between StackGuardian and private runner instances. Ensure that traffic is allowed and DNS resolution works for each endpoint.

Region-Specific Configuration
  • Replace <aws_region> with the specific AWS regions where your StackGuardian deployment is hosted.
  • For EU deployments: Use eu-central-1 (primary) and eu-west-1 (backup)
    • Example: *.dkr.ecr.eu-central-1.amazonaws.com and *.dkr.ecr.eu-west-1.amazonaws.com
  • For US deployments: Use us-east-2 (primary) and us-west-2 (backup)
    • Example: *.dkr.ecr.us-east-2.amazonaws.com and *.dkr.ecr.us-west-2.amazonaws.com
  • These endpoints host workflow runtimes in the form of docker images and other essential services.
  • Contact your StackGuardian representative if you're unsure which regions to configure.

Required Domains

DomainPurpose
*.stackguardian.ioNecessary for the registration and de-registration process of private runners.
*.github.comRequired during registration for downloading the runner installation script.
*.docker.ioUsed during the registration process for private runners.
*.amazonaws.comEssential for registration and workflow executions.
*.dkr.ecr.<aws_region>.amazonaws.comHosts SG Terraform Docker images used in workflow steps.
ec2messages.<aws_region>.amazonaws.comRequired for SSM and ECS Anywhere to connect private runners to the ECS cluster (SG control plane).
*.s3.<aws_region>.amazonaws.comRequired to fetch AWS runtime parameters for workflows.
ecs.<aws_region>.amazonaws.comEssential for connecting private runners to ECS services.
ecs-*.<aws_region>.amazonaws.comEssential for ECS service connections.
api.ecr.<aws_region>.amazonaws.comAccess to Docker images hosted in ECR.
*.elb.<aws_region>.amazonaws.comLoad balancer for AWS Elastic Container Service.
ssm.<aws_region>.amazonaws.comRequired for AWS Systems Manager operations.
*.raw.githubusercontent.comRequired for downloading raw scripts or dependencies hosted on GitHub.
Ubuntu-specific domains

The following domains are required only if provisioning private runners on Ubuntu OS. These are needed for the ECS Anywhere setup script to fetch packages and security updates.

DomainPurpose
<aws_region>.ec2.archive.ubuntu.comFetch system packages on Ubuntu OS during private runner provisioning
security.ubuntu.comInstall security packages

Azure Blob Storage Endpoints

For setups utilizing Azure Blob Storage, ensure the following endpoints are accessible:

DomainPurpose
blob.storage.azure.netRequired for Azure Blob Storage as the storage backend.
<storage-account-name>.blob.core.windows.netSpecific Azure storage endpoints for multiple uses.
azcopyvnextrelease.blob.core.windows.netFor Azure storage data transfer operations.

Outgoing Permissions for Terraform Workflows

Ensure the following endpoints are accessible for Terraform workflows:

DomainPurpose
releases.hashicorp.comUsed for downloading Terraform binaries during deployment processes.
*.github.comRequired for downloading the runner installation script during registration.
registry.terraform.ioFacilitates the retrieval of Terraform modules and providers.
note

Ensure configuration of firewall settings to allow access to all specified domains, using wildcard domains (e.g., *.) where applicable to prevent disruptions.