Firewall configuration
Seqera Platform Cloud (cloud.seqera.io) connects to resources in your network, such as your storage server, container registry, or Git server. Your compute environments and your users connect to Seqera services. Configure your firewall to allow the traffic in each direction.
IP addresses
Seqera keeps a current list of its IP addresses at meta.seqera.io. Parse its JSON response to update your firewall rules. For example, in Python with the requests package:
$ python3
>>> import requests
>>> requests.get("https://meta.seqera.io").json()
{
"egress": ["a.b.c.d/32", "..."],
"ingress": ["e.f.g.h/32", "..."]
}
The response contains two lists. The list you need depends on the direction of the traffic:
| To allow | Use | The list contains |
|---|---|---|
| Seqera to reach a resource in your network, such as your storage server, container registry, or Git server | egress | The addresses Seqera connects from |
Your compute environments or your network to reach a Seqera service, such as wave.seqera.io | ingress | The addresses Seqera services are reachable at |
You only need the ingress list if your outbound rules are IP-based rather than DNS-based. For DNS-based rules, see DNS allowlist.
Always query meta.seqera.io when you build or review your firewall rules. A copied list becomes stale as we may add or remove IPs when needed.
Wave
Wave traffic runs in both directions, and each direction uses a different list:
- To let Wave read from or write into your container registry, allow the
egressaddresses in your registry's network rules. Wave connects to your registry from Seqera's network in every mode, including augment, mirror, and freeze. - To let your compute environments call Wave, allow the
ingressaddresses in your outbound rules if those rules are IP-based.
Wave cannot reach a registry that is exposed only through a private endpoint inside your network, and allowlisting does not change this.
Studios
A Studio session needs no inbound connections. The Connect client in each session opens an outbound tunnel to the Connect server, and users reach the session through the Connect proxy. Allow the following connections:
| From | To | Port | Used for |
|---|---|---|---|
| Your users' browsers | connect.cloud.seqera.io and *.connect.cloud.seqera.io | 443 | Opening Studio sessions over HTTPS and secure WebSocket (WSS) |
| Studio sessions in your compute environments | connect.cloud.seqera.io and *.connect.cloud.seqera.io | 443 | The Connect client's WSS tunnel, which carries all session traffic, including SSH |
| Studio sessions in your compute environments | The Seqera Platform domains in the DNS allowlist | 443 | Session status notifications and authentication |
| Your users' SSH clients | The Connect domain in your SSH connection string | 2222 | SSH connections to Studio sessions (public preview). See Connect to a Studio via SSH. |
The browser and SSH rows apply to your users' own networks, not only to your compute environments. If a corporate firewall or web proxy blocks WebSocket traffic to connect.cloud.seqera.io or its subdomains, sessions reach running status but the browser can't display them. See Session is running but the interface is blank.
DNS allowlist
To access resources such as Fusion tarballs, nf-xpack files, Wave containers, and other Seqera services, add *.seqera.io.cdn.cloudflare.net to the allowlist in your network firewall. If your firewall doesn't support DNS wildcards, add the following:
cloud.seqera.ioapi.cloud.seqera.iouser-data.cloud.seqera.iotower.nfapi.tower.nfconnect.cloud.seqera.ioand its subdomains*.connect.cloud.seqera.iohub.seqera.ioai.seqera.ioai-api.seqera.iowave.seqera.iocommunity.wave.seqera.iocerbero.seqera.iopublic.cr.seqera.ioauth.cr.seqera.iocr.seqera.iolicenses.seqera.ioapi.multiqc.infofusionfs.seqera.ionf-xpack.seqera.iocommunity-cr-prod.seqera.iopublic-cr-prod.seqera.iowave-cache-prod-cloudflare.seqera.iofusionfs.seqera.io.cdn.cloudflare.netnf-xpack.seqera.io.cdn.cloudflare.netcommunity-cr-prod.seqera.io.cdn.cloudflare.netpublic-cr-prod.seqera.io.cdn.cloudflare.netwave-cache-prod-cloudflare.seqera.io.cdn.cloudflare.netregistry.nextflow.io(required from Nextflow 25.10)
Nextflow calls registry.nextflow.io to resolve and download plugins. It also calls the registry when plugins are cached locally, to check for updates and resolve plugin metadata. If your firewall blocks this domain, runs fail.
If you allowlist individual DNS records, review this list when you update your rules, because Seqera adds services over time.
If your allowlist is based on IP addresses, allow all of the Cloudflare IP addresses.