Basic Architecture
& Deployment
A comprehensive interactive guide covering the core concepts of StrongDM's proxy network, components, control plane, and deployment patterns.
Proxy Architecture
Learn how StrongDM acts as a proxy, routing traffic between users and protected resources through a secure TLS-encrypted channel.
Gateways & Relays
Understand the distinct roles Gateways and Relays play, and when to use each component in real-world deployments.
Control Plane
Discover how the SDM control plane orchestrates authentication, authorization, and routing decisions across the network.
Mesh Routing
Explore how StrongDM's default mesh routing algorithm selects optimal paths and handles failover scenarios automatically.
Learning Objectives
After completing this guide, you will be able to illustrate component relationships, explain node identification, describe how resources are identified, and explain how the API decides to block or allow traffic.
How Proxies Work
StrongDM operates as a proxy — intercepting and forwarding traffic on behalf of users to protected resources, while holding the necessary credentials to authenticate.
| Concept | Detail |
|---|---|
| User Experience | Users connect using familiar tools — terminals, browsers, SQL clients — as if connecting directly. No workflow change required. |
| Internal Transport | Within the StrongDM network, all communication between clients and nodes uses TLS encryption. |
| Final Hop Protocol | The Gateway connects to the resource using the same protocol as the user's initial connection (SSH, PostgreSQL, HTTPS, etc.). |
| Credentials | The proxy (Gateway) holds resource credentials and authenticates on behalf of the user, enabling centralized credential management. |
Key Insight
Users never directly interact with resource credentials. The Gateway handles authentication to the resource, while StrongDM handles user identity and authorization centrally.
Gateways & Relays
Two types of nodes make up the StrongDM proxy network. Understanding when to use each is fundamental to proper deployment design.
Gateway
Publicly accessible node that accepts inbound connections from StrongDM clients. Serves a listen address that clients connect to. The entry point to the StrongDM network.
Public Facing
Relay
Internally deployed node that initiates an outbound connection to a Gateway. Lives inside private/segmented networks with no inbound traffic permitted. Connects to resources on behalf of users.
Internal Only
🔒 Stateful Firewall
Why Relays Matter
Relays initiate the connection outbound to the Gateway, leveraging stateful firewall behavior. This eliminates the need to open inbound firewall ports to your private resource network — a major security advantage.
| Property | Gateway | Relay |
|---|---|---|
| Inbound connections | ✅ Yes (from clients & relays) | ❌ No |
| Outbound connections | To resources (flat) | To Gateway + resources |
| Listen address | ✅ Required | ❌ Not required |
| Network placement | DMZ / public | Private / internal subnet |
| Binary | Same sdm binary — run in "sdm relay" mode | |
StrongDM Control Plane
The control plane (hosted at app.strongdm.com) orchestrates authentication, authorization, and routing — it's the brain of the StrongDM network.
app.strongdm.com
Important Distinction
The client establishes TLS connections to all Gateways returned by the control plane. However, the actual Gateway used for a specific resource connection is selected later as part of the routing decision — not during initial setup.
| Component | Role |
|---|---|
| Control Plane | Hosted SaaS at app.strongdm.com. Manages identity, authorization, resource definitions, audit logs, and routing metadata. |
| Data Plane | The actual traffic flow through Client → Gateway → (Relay →) Resource. User data never passes through StrongDM's cloud. |
| Communication | All components communicate to control plane over TCP 443. Nodes identify themselves using tokens issued at registration. |
| Resilience | If control plane connectivity is lost, existing sessions continue using cached data. New connections may be affected until connectivity restores. |
Deployment: Flat Network
The simplified Gateway-only architecture — used in lab environments and specific production use cases where all components share network visibility.
Lab Environment Pattern
This is the architecture used in both the StrongDM-in-a-box lab guide and the default Instruqt lab environment — designed for learning, not production use.
When to Use
• Lab & testing environments
• Proxying public websites or cloud consoles
• Databases needing private admin access but with public exposure
• Cloud CLIs and management interfaces
Requirements
• Resource must be directly accessible by Gateway
• Gateway must be publicly reachable from the SDM client
• If a firewall exists between resource and Gateway, allow TCP 5000
• Nodes are hardened for public exposure
Do Not Use StrongDM-in-a-box in Production
The lab network has critical shortcomings: only one Gateway (no HA), no Relay deployed, client/Gateway/resources all share the same network, and resources are directly accessible without security devices between them.
Deployment: Gateway & Relay
The recommended production architecture. Relays allow resources to remain in private subnets with no inbound access, dramatically reducing the attack surface.
Production Recommendation
StrongDM strongly recommends deploying Relays in production environments. Best practice is to deploy both Gateways and Relays in an HA (High Availability) configuration — at minimum two of each.
| Benefit | Explanation |
|---|---|
| No inbound firewall rules needed | Relays initiate outbound connections to the Gateway. The stateful firewall allows return traffic without needing to open inbound ports to private resources. |
| Resources stay private | Resources only need to be accessible from the Relay — never from the internet or public-facing segments. |
| Segmentation preserved | Multiple Relays can serve different network segments (Dev, Prod) from a single Gateway pair. |
| Reduced blast radius | Even if the Gateway is compromised, resources remain inaccessible without the Relay acting as an internal intermediary. |
Mesh Routing
StrongDM's default routing algorithm — clients discover available routes from the control plane and intelligently select paths to resources.
What is a Route?
A route is a path through available nodes that leads to a desired resource. For example: GW → Resource or GW → Relay → Resource
Route Selection
Listeners retrieve routes from the control plane (or 15-second TTL cache), randomize order, sort by length (direct routes preferred), then attempt each in order until one succeeds.
Only one route exists, so it always gets used. Straightforward — client connects directly through the single Gateway to the resource.
Either Gateway will be chosen per new connection, randomly. This provides automatic load balancing across the two Gateways for that resource.
The route will switch between the two Relays per new connection, randomly. Load is distributed across both Relays automatically.
Only the route through the accessible Gateway will be used. The inaccessible Gateway's route will fail during the attempt phase and the algorithm moves on.
New connections will take a little longer (~15 seconds) until the listener recognizes GW2 is offline and updates its route cache. Existing sessions are unaffected.
Half of new connections will go to Australia (and time out due to geographic distance), and half to Europe. This is a cautionary case — geographic proximity matters for routing efficiency and HA design.
Advanced Routing Options
Explicit routing and Proxy Clusters are covered in StrongDM 201 – Deployment (Advanced). These are not used in StrongDM-in-a-box or the default Instruqt environment.
Knowledge Check
Test your understanding of the StrongDM architecture concepts covered in this guide. Click an answer to check it.
Question 01 / 08Within the StrongDM network, what protocol is used for communication between the SDM client and the Gateway?
Question 02 / 08What is the key difference between a Gateway and a Relay in StrongDM?
Question 03 / 08Why do Relays eliminate the need to reconfigure firewalls for inbound access to resource networks?
Question 04 / 08What does the StrongDM control plane return to a client after the user logs on?
Question 05 / 08In StrongDM's default mesh routing, how are routes ordered before attempting connections?
Question 06 / 08Which architecture is used in the StrongDM-in-a-box lab environment?
Question 07 / 08If a client has two Gateways available but one goes offline, how long does it typically take for the client to stop attempting the offline Gateway?
Question 08 / 08Why is a Gateway + Relay deployment preferred over a flat (Gateway-only) network for production?
Training Complete!
You've completed the StrongDM 101 — Basic Architecture & Deployment training guide. You're now ready to work with StrongDM deployments confidently.
Basic Architecture
Next Steps
Proceed to StrongDM 201 — Deployment (Advanced) to learn about explicit routing, proxy clusters, and multi-environment architectures.
Key References
Bookmark How StrongDM Works and the StrongDM Docs for ongoing reference.