Skip to main content

Outbound network access

The hosts and ports CertAutoPilot reaches from your network. Use this page to scope egress firewall rules. Only the services you actually configure need to be reachable — there is no mandatory always-on egress, so open each group as you turn its feature on.

Legend

On use — only required when you enable that feature or configure that provider. Customer-defined — host is whatever you point it at; listed here so the category isn't forgotten.

License activation

On use — only when you activate a license in online mode. A Free instance (no license key) and an offline (signed-file) license make no call to this host; the product runs fully without it.

ServiceHostPort
License API (online activation + periodic re-check)license-api.cloudnativeworks.com443 / HTTPS

Public certificate authorities

Open only the CAs you plan to issue from.

ServiceHostPort
Let's Encrypt (production)acme-v02.api.letsencrypt.org443 / HTTPS
Let's Encrypt (staging)acme-staging-v02.api.letsencrypt.org443 / HTTPS
Google Trust Services (production)dv.acme-v02.api.pki.goog443 / HTTPS
Google Trust Services (staging)dv.acme-v02.test-api.pki.goog443 / HTTPS
Sectigoacme.sectigo.com443 / HTTPS
GlobalSign Atlasemea.acme.atlas.globalsign.com443 / HTTPS
DigiCertone.digicert.com443 / HTTPS
SSL.comacme.ssl.com443 / HTTPS
ZeroSSLacme.zerossl.com443 / HTTPS
Actalisacme-api.actalis.com443 / HTTPS
GoDaddy ACMEacme.godaddy.com443 / HTTPS
Custom / private ACMECustomer-defined directory URL443 / HTTPS (or custom)

Private / on-prem ACME CAs. Every ACME call made on behalf of an existing account — issuance, renewal, order finalisation, ARI refresh, account validation and revocation — deliberately allows RFC1918 (and loopback) destinations, so an internal ACME directory such as step-ca, EJBCA or Pebble works. Link-local addresses, cloud-metadata endpoints and DNS-rebinding are still refused on those calls, and a custom CA root is trusted through LEGO_CA_CERTIFICATES.

warning
Also set LEGO_CA_SYSTEM_CERT_POOL if you use a public CA as well

LEGO_CA_CERTIFICATES replaces the system trust store rather than adding to it. On an instance that issues from a public CA (Let's Encrypt, Sectigo, …) and an internal one, pointing it at your private root alone makes every public-CA call — issuance, ARI refresh and revocation included — fail with x509: certificate signed by unknown authority.

Set both:

LEGO_CA_CERTIFICATES=/etc/certautopilot/private-ca-root.pem
LEGO_CA_SYSTEM_CERT_POOL=true

LEGO_CA_SYSTEM_CERT_POOL has no effect on its own — it requires LEGO_CA_CERTIFICATES. Leave both unset when you only use public CAs: that is the default and it uses the system trust store.

Creating (registering) the account is the one step that keeps the strict stance and will not dial a private address, so an account for an internal CA has to be provisioned out of band today.

Internal issuers (Microsoft AD CS)

On use — only when you issue from Microsoft AD CS via CES/CEP.

ServiceHostPort
Microsoft AD CS (CES / CEP, WSTEP/XCEP SOAP)Customer-defined443 / HTTPS

Revocation checks

Hosts come from the OCSP / CRL extensions inside each CA's certificate chain. They are not fixed up front. The list below is what most public CAs use today; treat it as guidance, not as a closed set.

ServiceHost (typical)Port
OCSP respondersocsp.* hosts of the issuing CA80 / HTTP
CRL distribution pointscrl.* hosts of the issuing CA80 / HTTP (sometimes 443)

DNS providers

Open only the providers you store credentials for.

ServiceHostPort
Cloudflareapi.cloudflare.com443 / HTTPS
AWS Route 53route53.amazonaws.com443 / HTTPS
AWS Lightsaillightsail.*.amazonaws.com (regional)443 / HTTPS
Google Cloud DNSdns.googleapis.com443 / HTTPS
Azure DNSmanagement.azure.com, login.microsoftonline.com (service-principal auth; sovereign clouds use the matching login.* + management endpoints)443 / HTTPS
DigitalOceanapi.digitalocean.com443 / HTTPS
GoDaddyapi.godaddy.com443 / HTTPS
UltraDNSapi.ultradns.com443 / HTTPS
Akamai Edge DNS*.akamaiapis.net443 / HTTPS
Hetznerdns.hetzner.com443 / HTTPS
OVH*.api.ovh.com (regional)443 / HTTPS
Namecheapapi.namecheap.com, api.sandbox.namecheap.com443 / HTTPS
Hostingerapi.hostinger.com443 / HTTPS
cPanel / WHMCustomer-defined panel host (:2083 / :2087)443 / HTTPS
PleskCustomer-defined Plesk host (:8443)443 / HTTPS
DirectAdminCustomer-defined DirectAdmin host (:2222)443 / HTTPS
RFC 2136 (dynamic DNS update)Customer-defined DNS server53 / TCP + UDP
Windows DNS (over WinRM)Customer-defined Windows DNS server5985 / 5986 (WinRM)

Discovery and domain tracking

On use — these turn on with the matching feature.

ServiceHostPort
Certificate Transparency searchcrt.sh443 / HTTPS
WHOIS / domain expirationRegistry-specific (e.g. whois.verisign-grs.com)43 / TCP
TLS scannerCustomer-defined targets443 / TLS (or custom)
AXFR zone-transfer sourceVetted DNS servers (allowlisted in settings)53 / TCP
DNS resolution (forward + reverse)Configured discovery resolvers53 / TCP + UDP

Notifications

ServiceHostPort
Slack incoming webhookshooks.slack.com443 / HTTPS
Microsoft Teams webhooks*.webhook.office.com, outlook.office.com443 / HTTPS
SMTP relay (notification)Customer-defined25 / 465 / 587
Webhook notification receiverCustomer-defined443 / HTTPS (plain HTTP allowed by operator choice; link-local and cloud-metadata addresses always refused)

Distribution targets

Customer-defined hosts. Listed by module so the firewall request covers them.

ModuleHostPort (default)
SSHCustomer-defined22 / SSH
WinRM (generic)Customer-defined5985 / 5986
Microsoft IISCustomer-defined5985 / 5986 (WinRM)
Kubernetes APICustomer-defined443 / 6443
F5 BIG-IPCustomer-defined443 / HTTPS
Citrix NetScalerCustomer-defined443 / HTTPS
HashiCorp VaultCustomer-defined8200 / HTTPS
WebhookCustomer-defined443 / HTTPS
SMTP deliveryCustomer-defined25 / 465 / 587
Huawei Cloud (ELB / CDN / WAF)*.myhuaweicloud.com (regional)443 / HTTPS
AWS ACMacm.<region>.amazonaws.com443 / HTTPS
Cloudflareapi.cloudflare.com443 / HTTPS
Azure Key Vault{vault}.vault.azure.net, login.microsoftonline.com (sovereign clouds: {vault}.vault.azure.cn + login.chinacloudapi.cn, or {vault}.vault.usgovcloudapi.net + login.microsoftonline.us)443 / HTTPS
MerlinCDNapi.merlincdn.com443 / HTTPS
cPanel / WHMCustomer-defined2083 (cPanel) / 2087 (WHM) / HTTPS
Microsoft Exchange (on-prem)Customer-defined5985 / 5986 (WinRM) — to every Exchange server the target covers, not only the one named on it, when the target restarts services across an organization

(Microsoft AD CS is an issuer, not a distribution target — see Internal issuers.)

External secret stores

On use — only when a distribution credential reads its value from an external store instead of storing it locally. The store is contacted on every credential resolution (deploy, dry-run and each health check), never cached, so the value is always current. Both use the same SSRF-guarded dialer (link-local and cloud-metadata addresses are always refused).

StoreHostPort (default)
HashiCorp Vault / OpenBao (KV v1/v2)Customer-defined8200 / HTTPS
ManageEngine PAM360Customer-defined443 / HTTPS

Post-distribution validation

ServiceHostPort
TLS fingerprint checkCustomer-defined endpoints443 / TLS (or custom)

Authentication & directory (LDAP)

On use — only when LDAP authentication is configured.

ServiceHostPort
LDAP / LDAPS (directory bind + user lookup)Customer-defined directory server389 (LDAP) / 636 (LDAPS)

Audit log forwarding (syslog)

On use — only when syslog forwarding is enabled (Settings → Syslog).

ServiceHostPort
Syslog forwarder (audit trail)Customer-defined syslog server514 / UDP or TCP (or a custom TCP+TLS port)

Telemetry (optional)

Disabled by default. Only outbound when an OTLP endpoint is configured.

ServiceHostPort
OpenTelemetry collector (gRPC)Customer-defined4317 / gRPC, plaintext

Air-gapped notes

  • There is no mandatory always-on egress. A Free or offline-licensed instance never contacts the license host; talk to support for offline license activation if you run online mode today.
  • Public ACME CAs are not reachable in an isolated network — issue from Microsoft AD CS or another internal CA instead.
  • OCSP / CRL fetches cannot currently be disabled — there is no revocation setting. Route them through an HTTP proxy or block them at the firewall; the check then fails soft.
  • WHOIS (port 43) is frequently blocked on enterprise networks; turn off domain expiration tracking if it is.

See also