Skip to main content

Network Requirements

This page details the network connectivity requirements for a self-hosted Atrium deployment.

Inbound access

PortProtocolSourcePurpose
80TCPInternetHTTP → HTTPS redirect. Required for Let's Encrypt HTTP-01 challenge.
443TCPInternet / LANHTTPS — dashboard, API, kiosk, agent WebSocket.

Port 80 can be closed if you use DNS-01 challenge or custom certificates. Port 443 must be accessible from everywhere that needs to reach Atrium: admin browsers, kiosk tablets, and the Atrium Agent.

Outbound access

The Atrium server needs outbound HTTPS (port 443) to several destinations:

Required

DestinationPurposeImpact if blocked
ghcr.io, *.ghcr.ioContainer image pullsCannot update. Current version continues to work.
cp.atrium.sprocksystems.deControl Plane check-inLicense grace period starts (30 days). After grace period: read-only mode.
ACME CA (acme-v02.api.letsencrypt.org)TLS certificate issuance/renewalCertificate renewal fails. Use custom certificates instead.

Conditional (depends on configuration)

DestinationPurposeWhen needed
Your SMTP serverEmail deliveryIf SMTP is configured
Your OIDC provider (e.g., login.microsoftonline.com)User authenticationIf using external IdP
CRM APIs (e.g., *.salesforce.com)CRM integrationIf CRM integration is configured
Calendar APIs (e.g., graph.microsoft.com)Calendar integrationIf calendar integration is configured

Agent-to-Server connectivity

The Atrium Agent connects to the Atrium Server over WebSocket (WSS — port 443). This is an outbound connection from the Agent's perspective. No inbound ports need to be opened on the Atrium server for Agent connectivity — the Agent initiates the connection.

If the Agent is on a different network segment than the server:

  • Ensure outbound HTTPS from the Agent to the server.
  • If there's a proxy, it must support WebSocket upgrades.

Air-gapped operation

Atrium can operate without internet access, with these limitations:

FeatureBehavior without internet
Core operationsFully functional. Visitor management, check-in, documents, and kiosk all work locally.
LicenseValid for the grace period (default: 30 days from last successful check-in). After that, the instance enters read-only mode — existing data is accessible but new check-ins are blocked.
UpdatesNo automatic updates. Images must be transferred manually (export/import).
TLS certificatesMust be provided manually. Let's Encrypt is not available.
EmailOnly if an SMTP server is reachable on the local network.
CRM / CalendarNot available (these require external API access).
OIDCOnly if the IdP is reachable on the local network (e.g., on-premises Keycloak or ADFS). The built-in IdP works fully offline.

For extended air-gapped operation, contact support about offline licensing arrangements.

DNS resolution

All containers use Docker's built-in DNS for inter-container communication. No custom DNS configuration is needed for the stack itself. The server only needs external DNS for outbound connections (SMTP, IdP, CRM, Control Plane).