Open source zero trust access for distributed engineering teams starts with who reaches what
A self-hosted WireGuard overlay with SSO groups as access policy covers most engineer-to-service paths in a SaaS company, and a privileged access management tool is the better fit for the sessions that need recording. Start by listing the paths engineers, contractors and CI runners actually use: staging web apps, internal dashboards, SSH to cloud VMs, and connections to databases that sit near production. Overlay tools such as NetBird or Headscale suit the network-level paths, because each device joins a private network and is reached by identity rather than by a shared VPN subnet. Sessions where an administrator must be recorded, approved or time-boxed belong in a PAM product, which is a separate decision covered on its own page.
This differs from a regulated-sector deployment in two ways. First, developer velocity matters: staging environments and cloud VMs appear and disappear, so group membership and setup keys must be automated, and the team should confirm how the chosen tool handles ephemeral nodes and key rotation. Second, the main outside pressure is a customer security questionnaire rather than one sector regulator, so the evidence you keep (access lists, MFA enforcement, device checks, logs) must answer buyer questions consistently. Licensing affects self-hosting too. NetBird's repository is BSD-3-Clause except its management, signal, relay and combined directories, which are AGPLv3, so modifying and running those services carries source-sharing duties that your legal team should review. Headscale is BSD-3-Clause.
Which requirements shape a SaaS engineering access design
This table maps five access requirements that SaaS engineering teams usually face to what each one means for groups, device posture and log retention. Sector rules such as HIPAA and the FTC Safeguards Rule appear only as analogues that customers may ask about, while SOC 2 common criteria set the evidence most SaaS buyers expect.
| Requirement | What it asks for and the evidence to expect | What it means for the design |
|---|---|---|
| Per-engineer identity | Each engineer signs in with a unique identity, so every session traces to one person. SOC 2 common criteria CC6 expect logical access tied to named users. HIPAA 164.312 uses the same unique-user idea as a sector analogue. | No shared staging or database accounts. Map SSO groups to roles, and make group membership the source of access policy rather than manual grants on each host. |
| MFA for every access path | MFA applies to the VPN replacement, SSH, database consoles and web tools alike. FTC Safeguards Rule 314.4 requires MFA for any individual accessing an information system, a sector analogue customers may cite. | Enforce MFA at the identity provider and check it at the overlay or proxy. Confirm whether database clients and CLI tools honor the same session, since some paths bypass the browser login. |
| Encryption in transit | Traffic between engineer devices, relays and internal services is encrypted, and the design shows where encryption ends. Assessors look for this under the SOC 2 security criteria and for transmission security under HIPAA 164.312. | WireGuard encrypts overlay traffic, but a service behind a proxy may still speak plain protocols internally. Document each hop, and confirm TLS on database connections that leave the overlay. |
| Activity logging and retention | Logs record who connected, to what, when and from which device, and they are kept for a period you set and can show. SOC 2 CC7 expects monitoring of system activity. FTC 314.4 expects logging of authorized user activity as a sector analogue. | Define retention with your audit team before rollout. Confirm which connection events the overlay exports, whether the self-hosted control plane keeps them, and whether they reach your SIEM. |
| Offboarding within the day | Access ends promptly when someone leaves or changes role, and the removal is provable. SOC 2 CC6 expects timely deprovisioning, and customers often ask for the time to revoke. | Deprovisioning in the identity provider must cascade to overlay peers, setup keys and SSH access. Test revocation with a sample account and keep the result as evidence. Confirm whether SCIM sync is available in your chosen edition. |
NetBird, Headscale or a PAM tool: which fits which access pattern
NetBird is the most complete option in this group for a distributed SaaS engineering team that wants a self-hosted control plane. It combines a WireGuard overlay with groups, access rules, SSO, and an admin UI, so engineers reach staging hosts, internal tools, and SSH targets without a shared VPN. Its licensing splits the repository: the client code is BSD-3-Clause, while the management, signal, relay, and combined directories are AGPLv3, which your legal team should review before modifying the server components.
- Identity and access policy: SSO and MFA are listed on the Team tier, with SCIM provisioning and audit event logging, so group membership in your identity provider can drive access.
- Device controls: Device approvals, MDM and EDR device controls, posture checks, and traffic logging and streaming are listed on the Business tier.
- SSH with central policy: NetBird lists SSH with central access policies, which keeps shell access under the same rules as network access.
- Infrastructure as code: A Terraform provider and an Ansible collection let you manage groups, rules, and setup keys as code.
- Self-hosting effort: Your team runs backups, upgrades, and scaling. The quickstart needs a Linux VM, a public domain, TCP 80 and 443, and UDP 3478.
Confirm which features your deployment needs before you pick a tier, because the self-hosted feature set and the cloud tiers do not map one to one. Ask the vendor which logs are retained locally and which leave your environment.
Headscale is an open source, self-hosted implementation of the Tailscale control server, licensed under BSD-3-Clause. It is a good fit for a small engineering group that wants a single tailnet and is comfortable operating a control plane. Its stated design goal is a narrow scope aimed at self-hosters and hobbyists, which matters when a SaaS company expects a growing number of users, groups, and audit requirements.
- Single tailnet model: Headscale manages one tailnet, which suits a small team with uniform access, not multiple teams with separate boundaries.
- Policy has to use users and tags: Basic OIDC login works and updates user profiles, but OIDC groups cannot be used in ACLs and autogroups are only partly supported. Build policy around users and tags.
- Deployment constraints: The README says the project does not support or encourage running Headscale behind reverse proxies or in containers. Plan your host and ingress model with that in mind.
- Feature set: ACLs, grants, MagicDNS, subnet routers, exit nodes, pre-authenticated keys, and an embedded DERP server are listed in the documentation.
- Community maintenance: The project is community-maintained, so confirm the support model you need in writing before you depend on it.
Check whether your identity provider groups must drive access, because the current OIDC limits may force manual tag assignment. Ask for a written statement of the versions you will run and the upgrade path.
A PAM tool fits when the access you need to control is administrative and must be recorded, not just allowed. Database sessions, Kubernetes access, and production shell work often need approvals, session recording, and per-command audit, which an overlay network does not provide by itself. Most SaaS teams use an overlay for broad engineering reach and a PAM tool for the narrower set of privileged paths.
- Recorded privileged sessions: Database and Kubernetes sessions are where a PAM tool adds the most, because you need to show who ran what and when.
- Approvals and time limits: Just-in-time access and approval workflows are typical PAM capabilities. Confirm which of these each candidate supports.
- Overlap with the overlay: Network reach and session control can overlap. Decide which tool is the source of truth for each path to avoid two inconsistent policies.
- Scope of the PAM group: The open source PAM group covers Teleport, JumpServer, and Apache Guacamole, and compares session, approval, and audit rules by sector.
- Evidence needs: Retention and review of session records should match the frameworks your customers ask about.
If your audit questions focus on administrator actions rather than network reach, start with a PAM tool and add an overlay later. Ask each vendor where session recordings are stored and who can read them.
Which platforms fit an engineering team and why
An engineering team needs three things from zero trust access: a network path to staging and internal tools, group-based policy driven by the identity provider, and credentials that are short-lived and recorded. No single product covers all three, so the cards below pair a network layer with an identity source and a credential or session control. Check each license and self-hosting limit before you commit to a design.
NetBird for group-based policy
NetBird pairs a WireGuard overlay with a central access control system, so you can write rules against groups rather than individual IP addresses. Its repository is BSD-3-Clause except the management, signal, relay and combined directories, which are AGPLv3, so confirm that your legal team accepts the AGPLv3 parts if you modify and host them. Self-hosting means your team runs backups, upgrades and scaling. Check which SSO, SCIM and posture features sit in the tier you need, because the published plans gate them differently.
Headscale for a narrow team
Headscale is a self-hosted implementation of the Tailscale control server, licensed under BSD-3-Clause. Its stated design goal is a single tailnet for a small group, and its documentation does not support running it behind a reverse proxy or in containers. OIDC groups cannot be used in ACLs, so group-based policy needs more manual upkeep than in NetBird. Choose it only if your team size and deployment pattern match that scope, and test the policy model against your real access rules before a rollout.
Workforce IdP as the group source
Keycloak, authentik and ZITADEL each act as the workforce identity provider that feeds group membership into the overlay. Keycloak is Apache-2.0 and supports OpenID Connect, SAML 2.0 and LDAP or Active Directory federation. authentik is MIT except the authentik/enterprise directory, and ZITADEL is AGPL-3.0 with passkey and SCIM support. Decide which one owns the joiner and leaver process, because removing a user there is what cuts off overlay access. Confirm which claims each product sends to the overlay.
Identity-aware proxy for browser tools
Browser-only internal tools such as dashboards, admin consoles and staging web apps often do not need a network client at all. An identity-aware proxy such as Pomerium can sit in front of them and apply per-route policy from the identity provider. The contractor access page covers this pattern in depth, so use it as the next read for browser-based access. Confirm that the proxy covers the protocols your tools use, since SSH, database and non-HTTP traffic still need the overlay or a PAM tool.
OpenBao for database and SSH credentials
OpenBao is MPL-2.0 licensed and manages secrets, certificates and keys, which makes it the place to issue short-lived database credentials and signed SSH certificates. Overlay access gets an engineer to the host, but it does not decide which database user they become. Plan who operates the OpenBao cluster, how unseal keys are held and how audit logs are shipped. HashiCorp Vault 1.15.0 and later is under the Business Source License 1.1, which is not an OSI-approved open source license, so factor that into your choice.
PAM for session recording
Overlay access controls who reaches a network segment, but it does not record what an engineer does once connected. A privileged access management tool such as Teleport, JumpServer or Apache Guacamole adds approval workflows and session recording for servers, databases and Kubernetes. Use the PAM group to decide which production and data paths need recorded sessions. Ask each candidate where recordings are stored, how long they are kept and whether access reviews can be exported.
How a SaaS team moves engineers off the shared VPN in phases
The sequence moves staging, internal tools and databases to identity-based access one group at a time, so the VPN can be restricted and then retired only after each cutover has a recorded result.
Inventory hosts and databases by environment
Engineering leads and the platform team list every host, database, internal tool and port the VPN currently reaches, grouped by environment (production, staging, development and internal tooling). Each entry records the owner, protocol (web, SSH, database or other), the teams that use it and whether it can be reached through an overlay or a proxy. The output is an inventory that becomes the starting point for the access matrix. The step is done when the platform team and each owner have signed off that nothing in use is missing from the list.
Map identity provider groups to access roles
The identity team and engineering managers translate the inventory into an access matrix that pairs each role (for example, backend engineer, data engineer or on-call responder) with the environments and resources it needs. Each role is then mapped to a group in the identity provider, since group membership becomes the access policy. Where the overlay's directory integration cannot use a group directly, the team records the workaround. The output is the access matrix, reviewed by security and by the owners of production data. It is done when every inventory item has at least one role and every role has a named group owner.
Pilot with one team and one staging network
A single engineering team and one staging network are placed behind the new overlay, with the VPN still available as a fallback. Engineers in the pilot use the overlay for the staging resources in the matrix, and the platform team watches connection failures, DNS resolution and access denials in the activity logs. The pilot runbook records setup steps, rollback steps and who can approve a rollback. The step closes with a pilot report listing the issues found, their fixes and the decision to proceed or pause. Ask the implementation partner to confirm how the chosen platform handles relay fallback when direct peer connections fail.
Align device posture with MDM
The endpoint and IT teams connect device posture checks to the mobile device management or endpoint tooling already used on engineering laptops. They confirm which signals the overlay can read (such as operating system version, disk encryption or enrollment status), which devices are unmanaged, and how unmanaged devices are handled, for example by limiting them to a read-only subset or blocking them. The output is a posture policy document and a device exception list with an owner for each exception. The step is complete when a test device that fails a posture check is denied access and the denial appears in the logs.
Migrate internal tools in waves
Internal tools such as dashboards, admin consoles, CI services and database clients are moved in waves that follow the access matrix. For each tool, the team writes a short cutover entry: the tool, the group that gets access, the connection method, the test cases and the rollback step. Web tools can be placed behind an identity-aware proxy where that fits better than a network overlay, and SSH or database paths are checked against the policies for each role. The output is a cutover record for each wave. A wave is done when the affected users have confirmed access and no open incidents remain.
Restrict the VPN to legacy paths
Once the main waves are complete, the VPN's routing and firewall rules are narrowed so it reaches only the systems that cannot yet move, such as older appliances or vendor-managed services. Each remaining path gets a named owner, a justification and a review date recorded in the runbook. The network team confirms in writing that no migrated system still accepts VPN traffic that was not intended. The output is a legacy path register. The step is done when the register is approved and access to the narrowed VPN has been tested for each legacy path.
Decommission the VPN and keep the evidence
After the legacy register is closed or accepted, the VPN service, its accounts and its firewall rules are removed under change control. The team archives the access matrix, cutover records, posture policy, legacy register and activity log exports in the location used for audit evidence. Ask the implementation partner to confirm the retention period for overlay and proxy logs, since that period depends on your own policy and any regulation you are subject to. The step is done when the VPN is switched off, the change record is closed and the evidence set has been filed with its owner.
Where the control plane, relays and exit nodes should run
Should the NetBird control plane run in our own cloud account or in a vendor-hosted service?
For regulated or data-sensitive teams, running the control plane in your own cloud account is the common choice, because you keep the coordination server, signal, relay and logs under your control. NetBird's self-hosting quickstart runs management, signal, relay and STUN from one combined configuration, with a dashboard container, a Traefik reverse proxy with Let's Encrypt by default, and an embedded Dex identity provider that can add external SSO providers. The minimum host it lists is a Linux VM with at least 1 CPU and 2 GB of memory, a public domain, TCP ports 80 and 443 and UDP port 3478 open, and Docker with the Compose plugin. Confirm the sizing for your user and device count with your architect, since the quickstart describes a starting point, not a capacity plan.
Where should relays sit so remote engineers get a fast connection?
Place relays close to where most engineers and workloads are, and keep them reachable on the ports the overlay needs. NetBird uses peer-to-peer WireGuard connections where it can and falls back to relays when direct paths fail, so relay placement mainly affects the connections that cannot go direct, such as those behind strict NAT. A relay in a region far from your users adds latency to every fallback path. Measure how often traffic relays in your environment before adding relays, and confirm with the vendor how relay traffic is encrypted end to end.
How do exit nodes control where engineer internet traffic goes?
An exit node is a peer that forwards another peer's internet-bound traffic, so you can route engineer egress through a company-controlled network path. NetBird supports exit nodes as part of its overlay feature set, alongside routes to external networks and private DNS. Use exit nodes when you need one egress point for logging, allow-listing or geographic control, and remember that every exit node adds bandwidth load and a single point of failure. Put at least two in separate availability zones if the team depends on them, and confirm how each exit node is patched.
How do subnet routers give engineers access to private VPC networks?
A subnet router is an overlay peer inside a private network that advertises routes to that network, so enrolled engineers can reach databases and internal services without a public IP on each resource. NetBird supports routes to external networks, which is the mechanism to use for VPC or data center subnets. Limit each router to the subnets it needs, give it a dedicated role in your access policy, and check that security groups allow traffic only from the router. Confirm the failover model before relying on one router for production database access.
Can we manage ZTNA access policy with Terraform instead of clicking through a console?
Yes, if the platform exposes an API or infrastructure provider, and NetBird lists a public API, a Terraform provider and an Ansible collection among its features. Managing groups, access rules and setup keys as code gives you review through pull requests, change history and a repeatable rebuild of the control plane. Plan for drift between the console and code, decide which team owns the state file, and store setup keys in a secrets manager rather than in the repository. Confirm which resources the provider covers for your version before writing the module.
Who handles backups and upgrades when we self-host the control plane?
Your team does, when you self-host. NetBird's documentation states that self-hosted operators handle backups, upgrades and scaling themselves, while NetBird Cloud is the managed version that needs no servers or domain. That means you need an owner for the VM or containers, a tested restore procedure for the management database and configuration, a schedule for applying releases, and monitoring for the relay and signal services. Ask a partner to write those runbooks and test a restore before go-live, and agree in writing who is on call for control plane incidents.
Evidence a SOC 2 auditor will ask for from the access layer
This table lists the evidence items an auditor typically requests for access controls in a self-hosted ZTNA and SSO setup, which component produces each item, and the CC6 family it supports. Read it as a preparation checklist: DeployOpen prepares and organizes this evidence, while the independent auditor decides whether the controls operated effectively over the audit period.
| Evidence item | Produced by which component | Control reference (CC6 family) |
|---|---|---|
| Access review exports from IdP groups | Identity provider (for example Keycloak, authentik or ZITADEL) group membership exports, reviewed by the engineering manager and security owner | CC6.2 and CC6.3, user registration, authorization and periodic access review |
| MFA enforcement settings | IdP authentication policy export showing MFA required for the ZTNA application and admin consoles, plus the NetBird or Headscale SSO and MFA configuration | CC6.1 and CC6.6, logical access and protection of access from outside the boundary |
| Connection and policy change logs from the control plane | NetBird management or Headscale ACL change history, with admin actions and policy version records exported to the log store | CC6.1 and CC7.2, access restriction and monitoring of system components |
| Offboarding tickets matched to group removal | Ticketing system entries for leavers paired with IdP group removal timestamps and revoked overlay peer or device records | CC6.2 and CC6.3, timely removal of access when roles change or end |
| Device posture and approval records | Posture check results and device approval logs from the overlay control plane, tied to managed device inventory | CC6.6 and CC6.7, restriction of access from unmanaged or noncompliant endpoints |
| PAM session recordings for privileged SSH or database access | PAM tool (for example Teleport or JumpServer) session logs and recordings for engineer access to staging databases and servers | CC6.1, CC6.2 and CC7.2, privileged access control and monitoring |
| Encryption configuration for transport | Overlay WireGuard tunnel settings, relay TLS certificates and reverse proxy configuration evidence | CC6.1 and CC6.7, protection of information in transit |
Questions to ask an implementation partner about engineering access
Start with the policy model, because most engineering access failures trace back to who can change a group and how. Ask the partner how SSO groups from your identity provider become access rules in NetBird or Headscale, and who approves a change to a group that grants database or staging access. Headscale's documentation says OIDC groups cannot be used in its ACLs, so a Headscale design needs a different mapping, and the partner should show it working in your tenant. Ask for the written approval path, the audit trail of group and rule changes, and whether production and staging use separate networks, separate control planes or only separate rules. A partner that cannot show the difference in a test environment is describing intent, not a control.
Next, ask where every component runs and what it can see. Ask where the management, signal and relay services of a self-hosted NetBird deployment sit, which of them carry traffic when peers cannot connect directly, and what the relay can observe. Ask who holds the administrator keys, where logs are stored and how long they are kept. For revocation, ask for the exact steps and timing for a lost laptop: removing the peer, revoking its setup keys, disabling the user in the identity provider and confirming that existing sessions to databases end. Ask the partner to demonstrate this on a test device and to record the result.
Finally, clarify what the partner operates after go-live and what your team keeps. Ask who performs upgrades, backups and scaling, who gets notified of security releases, and how long a rollback takes. Ask which self-hosted edition you will run and which features sit behind a paid tier. NetBird's pricing page places SCIM provisioning, audit event logging and device posture checks in its paid plans, so confirm which of those your self-hosted build includes. For customer questionnaires, ask for a written evidence pack that maps each answer to a configuration export, a log sample and a named owner. DeployOpen prepares that evidence but does not issue audit reports, so your auditor remains the judge. Agree in writing which tasks belong to your engineers, such as access reviews and offboarding checks.
How much does open source zero trust access cost for an engineering team?
What drives the cost of open source zero trust access for an engineering team?
The cost is driven by the number of people and machines that connect, the number of internal targets they reach, how many identity sources you integrate, and how much device posture work you take on. The software itself is often free to download, so most of the spend goes to infrastructure, integration, migration and the people who run it. Ask any quote to break those components out separately: control plane hosting, relay or gateway capacity, identity provider integration, policy design per application, device posture checks, and documentation and handover. Each of these grows with scope, so a team of 20 engineers reaching three staging environments is a very different job from 200 people reaching production databases from unmanaged laptops.
What does NetBird charge per user, and what does that include?
NetBird's pricing page lists Free for up to 5 users and 100 machines, Team at 6 euros and Business at 12 euros per user per month with 100 machines plus 10 per user and extra machines at 0.50 euros, and custom Enterprise pricing, according to NetBird pricing. Billing counts only active users and machines. Team adds SSO and MFA with an enterprise identity provider, SCIM provisioning and audit event logging. Business adds device approvals, MDM and EDR device controls, posture checks and traffic logging and streaming. These are list prices for NetBird Cloud, so confirm current terms on the pricing page before budgeting, and remember that a self-hosted deployment replaces the per-user subscription with your own hosting and operations effort.
What recurring costs come with self-hosting a zero trust overlay?
Recurring costs are the ones you pay every month or every release cycle, whether or not anything breaks. For a self-hosted NetBird deployment, NetBird's documentation says operators handle backups, upgrades and scaling themselves, so those tasks recur. The main items are virtual machine or cloud hosting for the management, signal, relay and dashboard components, a public domain and certificate renewal, identity provider licensing if your IdP is commercial, and time spent on patching and release upgrades. Add on-call coverage for access outages, because a broken control plane can block every engineer at once. Ask the implementation partner to quote these as a monthly run cost with a named owner for each item.
Can an in-house platform team run a self-hosted ZTNA stack without outside help?
Often yes for a small, well-scoped deployment, but the answer depends on the skills you already have. A team that runs Linux, Docker, reverse proxies, TLS certificates and an identity provider can usually operate a single-region overlay with a clear runbook. The harder parts are policy design across SSO groups, posture signals from managed devices, migration app by app from an existing VPN, and tested recovery when the control plane fails. Note that the Headscale README says its project is aimed at self-hosters and small open-source organizations, so it fits smaller teams differently than a commercial-grade overlay. Assess your staffing against those tasks, and use a fixed-scope partner engagement if you want a documented handover.
How long does a pilot for engineering access take to run?
The length of a pilot depends on how many apps are in scope, how clean your SSO groups are, and whether devices already have a management agent that can report posture. A pilot limited to one staging environment and a small group of volunteer engineers moves much faster than one that covers production databases, SSH and internal tools at once. Before agreeing a timeline, ask the partner to list the apps, protocols and identity sources in scope, the success criteria for the pilot, and the rollback plan if the overlay blocks a release. Written scope and a dated plan should replace any generic estimate, because no published duration applies to every environment.
When is a PAM tool required instead of an overlay for engineer access?
An overlay such as NetBird controls which devices can reach which networks, but it does not, by itself, record privileged sessions or require approval for each administrative action. A privileged access management tool becomes necessary when you must record and review administrator sessions to databases or servers, enforce just-in-time elevation, or give auditors per-session evidence. Compliance drivers include the audit controls in the HIPAA Security Rule at 45 CFR 164.312 and the monitoring and logging duty in the FTC Safeguards Rule at 16 CFR 314.4. Many teams use both: the overlay for network reachability and a PAM tool for the database and root sessions inside it. Confirm the exact evidence your framework requires before choosing.
What should I ask for in a quote for this engagement?
Ask for a written scope that lists every user group, device type, application, protocol and identity source covered, with each deliverable named. The quote should separate one-time work (design, integration, migration, documentation, handover) from recurring work (hosting, upgrades, monitoring, support). Ask which components the partner will hand over to your team and which they will keep operating under a retainer. Request the assumptions behind the effort, such as how many policies exist today and what happens when an app is out of scope. DeployOpen does not publish a price list, and a quote follows from that written scope.
How DeployOpen scopes and runs this for engineering teams
Scope is agreed in writing before any work starts. For a distributed engineering team, the written scope should list the user groups and the SSO groups that map to them, the resources each group reaches (staging hosts, internal tools, databases, Kubernetes APIs), the device signals to be checked, and the exit node and relay placement. DeployOpen's engagements are fixed-scope, so deliverables, acceptance checks and timelines are fixed in the same document. Ask for the scope to name the control plane option explicitly, whether that is NetBird self-hosted with its embedded Dex provider or an external identity provider, and to state which features depend on a paid NetBird tier, since the pricing page ties SCIM, audit event logging, device approvals and traffic logging to specific plans. Confirm current tier contents on the pricing page before the scope is signed.
Deployment runs in your own cloud account, under your change control. DeployOpen installs the self-hosted components inside your accounts: the management, signal, relay and STUN services from one combined configuration, the dashboard, the reverse proxy with certificate handling, and the identity integration. NetBird's quickstart lists a Linux VM with at least 1 CPU and 2 GB of memory, a public domain, TCP 80 and 443 and UDP 3478, and Docker with the Compose plugin, which is the baseline your platform team should confirm against its own network rules. Hardening covers closing unused inbound ports, restricting the admin API token, enforcing MFA for administrators, setting ACL defaults to deny, and sending activity logs to your SIEM. Documentation covers the runbook for backups, upgrades and key rotation, since NetBird's documentation states that self-hosted operators own those tasks.
Retainer support is the decision that follows the build. Once the overlay is live, someone must own version upgrades, certificate renewal, group changes driven by joiners and leavers, and the review of access policies. Ask for the retainer terms in writing: which upgrade paths are covered, response expectations, who holds administrator credentials at handover, and how the client's team is trained to run changes without DeployOpen. DeployOpen does not issue audit reports or certifications, so any evidence package it prepares (policy exports, access logs, change records) is input for your auditor, and the scope should say which artifacts are delivered.

