Commit Graph

59 Commits

Author SHA1 Message Date
Jack Carter
ba471cd044 Rebuild the connecting-from-the-office guide on Networks (#956)
* docs: rebuild connecting-from-the-office on Networks

The page walked the legacy Network Routes flow: create a route, assign
distribution groups, and gate the routing-peer policy. Networks is the
current model, and there was no Networks version of this use case
anywhere in the docs.

Rewritten around the Networks building blocks: the posture check hangs
off the access policy whose destination is the office resource, so the
route is not distributed while the device is on site. Adds a limits
section (re-evaluation delay after a network change, ranges carry no
identity, platform coverage) and a summary. Drops the three legacy
route-UI screenshots.

* docs: Android reports local network addresses from 0.77.1

PR #7235 landed the Android side of PeerNetworkRange: the client now
parses local interface addresses from the host app's interface
discovery, so NetworkAddresses is no longer empty. First release
containing it is v0.77.1.

Scopes the known limitation to Android clients older than 0.77.1 and
leads with the fix, mirroring how the iOS 0.69.0 note reads. Also
matches the posture check name in the office guide to the screenshot.

* docs: correct client command, alt text and wording in the office guide

netbird routes is a deprecated alias; the command is netbird networks
list. Alt text now describes what each screenshot actually shows, and
the check name, Wi-Fi spelling and description line are consistent.

* docs: use documentation-only public ranges, scope the Android note in the Zero Trust guide

1.0.0.0/24 and 3.0.0.0/23 are allocated space and a reader can copy
them into a Block check, so the public-block examples now use RFC 5737
documentation ranges.

The Zero Trust guide still stated the Android limitation
unconditionally, which contradicted the posture check reference after
0.77.1.

* docs: tighten the office guide and the Android limitation

Scopes the intro claim to what the page's own screenshots show, stops
overstating what netbird networks list reports, restores the
platform-targeting bullet with Android 0.77.1 included, and leads the
Android section with the version scope so it reads correctly under
Known Limitations.

* docs: do not present macOS interface names as cross-platform

utun100 is the macOS default (client/iface/configurer/name_darwin.go);
wt0 is the default everywhere else. The verify section now names both
once, and the summary talks about the local link and the NetBird
interface instead of en0 and utun100.
2026-08-28 12:17:19 +02:00
Brandon Hopkins
d810fdc457 Improve CrowdSec hardening and reverse proxy troubleshooting (#917)
* Improve CrowdSec setup, recovery, monitoring, and access-log documentation

* Refine CrowdSec dashboard recovery and access-log field documentation

* Image and API ref update

* Api ref fix

* Probe both api/.env
2026-08-19 10:58:01 -07:00
Brandon Hopkins
b1629b1d11 Settings docs accuracy audit: gap fixes and three new pages (#936)
* Enforce periodic user authentication

* Multi-Factor Authentication

* IPv6 minor fixes

* Delete account clarification

* Notifications, perms, and billing

* Update metrics, auto-update, lazy connections

* Settings docs audit fixes plus two new pages

* Update self-hosted notications

* rework client page and navigation

* Matching naming to product

* Coberabbit suggested fixes

* Peer Session Expiration title

* Remove dash
2026-08-19 08:07:46 -07:00
Misha Bragin
3f08eafb7b docs: explain how to update billing info and payment method (#934)
Add a "Updating Billing Information and Payment Method" section to the
  Plans & Billing page covering the path from Settings > Plans & Billing >
  Manage Plan into the Stripe billing portal, where users can change their
  payment method and use "Update information" to edit company name, billing
  address, billing email, and tax information.

  Note that this is NetBird Cloud specific functionality — self-hosted
  deployments are not billed through the Stripe billing portal.
2026-08-18 19:59:05 +02:00
Brandon Hopkins
627d18fda0 Document the Permissions settings tab (#931)
* Add new permissions page and fix zero trust doc

* Remove API mention
2026-08-17 10:23:14 -07:00
Jack Carter
a11bb4dcca Add Regional Exit Nodes use case and clarify Auto Apply (#928)
* docs: add Regional Exit Nodes use case

* docs: explain Auto Apply as default-vs-lock in plain terms
2026-08-17 10:35:31 +02:00
Bethuel Mmbaga
f5dacdd2fb Add IIJ ID SSO and SCIM provisioning guides (#922) 2026-08-14 19:21:58 +03:00
Jack Carter
2cbebc3323 docs: explain macOS DNS resolver behavior for match-only vs primary nameservers (#912)
* docs: explain macOS two-resolver-stack DNS behavior and the match-only vs primary nameserver split

Lab-validated against client 0.76.3 (macOS 26, NetBird Cloud):

- DNS troubleshooting: new Issue 5 'dig and host fail, but browsers and
  curl work (macOS)' with the scoped-resolver vs resolv.conf explanation,
  the language-runtime split table (pure-Go/dnspython/c-ares vs
  getaddrinfo), and the Windows nslookup-vs-NRPT analog; renumbered
  Issues 5-8 to 6-9; checklist step 6 now says why it prescribes
  dscacheutil/Resolve-DnsName
- Internal DNS Servers: primary-vs-match now explains that match-only
  leaves resolv.conf untouched on macOS; new warning that emptying a
  match group's domains silently drops the search suffix (masked on
  domain-joined Windows); split-horizon example gains the
  route-everything-internal variant (the OpenVPN migration shape)
- DNS overview: macOS line now distinguishes scoped resolvers from the
  primary case, where configd regenerates resolv.conf with NetBird's
  resolver

* docs: add dashboard screenshot for the route-all-internal nameserver example

* docs: polish wording in the macOS DNS additions

* docs: promote the route-all-internal example to its own section

* docs: drop the Example prefix from the nameserver scenario headings

* docs: state the public-resolution prerequisite for an internal primary nameserver

* docs: make the direct-resolver check precise

* docs: anchor the scoped-resolver term to scutil output and split the dense solution paragraph
2026-08-11 16:47:56 +02:00
Bethuel Mmbaga
fd04046f5f Update Entra ID SCIM docs for the new Azure portal UI (#909) 2026-08-10 12:25:39 +03:00
Jack Carter
f403129f66 Navigation cleanup: MDM deployment under Peers, purge stale tutorials, MSP portal refresh (#906)
* docs: move MDM deployment guides under Manage > Peers

The five fleet-deployment guides (GPO, macOS .pkg, Jamf Pro, Kandji,
Intune) lived under Integrations, but nothing in them integrates with
NetBird's platform — they are peer onboarding at scale, which lives
under Peers. The label also collided with Access Control's
'Integrate MDM & EDR', which uses MDM in the opposite sense.

- Move pages from /manage/integrations/mdm-deployment/ to
  /manage/peers/mdm-deployment/ with a permanent wildcard redirect
- Re-point legacy /how-to redirects directly at the new paths
- Move the nav group under Peers as 'MDM Deployment'; remove the
  now-empty Integrations group
- Update internal links

* docs: link full GPO deployment guide from MDM integration page

* docs: show setup-key secret wiring and replica naming for k8s routing peers

Fold the two verified-novel bits from the Access Infrastructure
autoscaling tutorial before purging it:

- Replace the 'use a secret' Note with the actual kubectl create
  secret + secretKeyRef wiring (matches what the NetBird operator
  injects for routing peers)
- In the HA section, note that removing the static NB_HOSTNAME lets
  each replica register under its pod name (client falls back to
  os.Hostname(), which is the pod name in Kubernetes)

* docs: purge redundant Access Infrastructure tutorials

The four pages under Manage > Peers > Access Infrastructure were
2024-era SEO tutorials that duplicated canonical feature docs and
carried outdated claims (pre-rewrite SSH model without the built-in
SSH server, a Docker section that never actually enrolls the
container with a setup key, CrowdStrike presented as the only EDR
integration, stale v0.29 output and vintage-UI screenshots).

Cross-checked each page against its canonical counterpart; nothing
novel remained (the two useful Kubernetes snippets were folded into
the routing-peers use case in the previous commit).

- Delete the four pages and their screenshot directory
- Remove the Access Infrastructure nav group
- Redirect each URL to its canonical replacement:
  secure-remote-webserver-access -> /manage/peers/ssh
  setup-keys-add-servers-to-network -> /manage/peers/register-machines-using-setup-keys
  access-internal-resources-from-autoscaled-environments -> /use-cases/kubernetes
  peer-approval-for-remote-worker-access -> /manage/peers/approve-peers
- Re-point the legacy /how-to redirects at the same targets to avoid
  redirect chains

* docs: reorder Peers nav into enrollment, approval, day-2 flow

Group the five enrollment methods first (Add Peers, Setup Keys,
Bootstrap via Config File, MDM Deployment, Browser Client), then the
Approve Peers admission gate, then running-peer features (SSH, Lazy
Connections, Remote Jobs) and Auto Update last. Approve Peers
previously sat between two enrollment pages.

* docs: cross-link DNS aliases and internal DNS pages, fix tutorial inaccuracies

The two pages solve adjacent problems (NetBird-hosted records vs
forwarding to existing internal DNS) but never pointed at each other.
Add a which-page-do-I-need Note to each.

Also fix defects in the DNS Aliases tutorial found while cross-checking
it against the Custom Zones reference and dashboard source:

- 'Keep this enabled' implied search domain is on by default; it is
  off by default (DNSZoneModal.tsx: enable_search_domain ?? false)
- Step 3 said 'wildcard resource' but the steps add exact-name domain
  resources
- Wrong alt text ('Delete DNS Zone') on the zone-config screenshot
- Add missing meta description and a link to the Custom Zones
  reference

* docs: align MSP portal page with 2026 partner program, rename For Partners nav

Cross-checked the MSP portal page against the 2026 MSP/MSSP Partner
Program document:

- Point the application link at netbird.io/use-cases/msp (the program's
  canonical page) instead of a demo-form URL displayed as netbird.io/msp
- State tenant plan options (Team or Business) and the post-trial
  minimum (Team plan with one user)
- Mention CSV/PDF usage export alongside the API
- Clarify the 3-day trial for existing accounts brought in as tenants:
  it is a window to subscribe the tenant under the MSP account
- Add a subtle msp@netbird.io contact line at the bottom

Also rename the For Partners nav entries by deliverable instead of
audience (the section header already says who it's for): MSP Portal,
Distributor Portal, Deploy with Acronis.

* docs: update CLAUDE.md for agent-network, proxy.js, and tooling gaps

Audited every claim against the current repo. Stack, routing, security,
and convention claims all still hold; four gaps had accumulated:

- Add agent-network/ to the content structure list
- Document src/proxy.js in URL Routing: /api data requests must be
  rewritten there because the config rewrite loses data-request context
  on client-side navigation (Next.js #39669) and strips pageProps
- Add npm run lint:mdx; note npm run gen requires a Go toolchain
- Note fenced mermaid code blocks render as diagrams

* docs: address review findings on PR #906

- Move the MDM deployment screenshot directories to match the new page
  paths; the URL rewrite had updated MDX image references without
  moving the assets, breaking all Intune/Jamf/Kandji images
- Normalize pre-existing double slashes in Jamf and Kandji image URLs
- Align the routing-peers secret example with bootstrap-via-config-file
  (same secret name, so both now use the NB_SETUP_KEY data key)
- DNS aliases: include the routing peer's group in the zone's
  distribution groups. Verified in client source: the DNS route
  interceptor (priority 100) outranks local zone records (priority 75)
  and never falls through, so clients forward routed-domain queries to
  the routing peer, which must receive the zone to answer
2026-08-07 14:37:41 +02:00
PizzaLovingNerd
b867aa85c8 Updates for the NetBird 0.75 update (#881) 2026-07-24 07:43:56 -07:00
PizzaLovingNerd
07bd7a187c resolve merge conflict (#827) 2026-07-06 18:42:01 -07:00
Jack Carter
955ba43566 docs: add "Route to a Kubernetes service with HA" how-to (#810)
* docs: add Highly Available Routing Peers use-case page (Kubernetes operator)

Add a standalone use-case page under a new Use Cases group in the Kubernetes
nav, covering how to run the operator's routing peers in HA: NetworkRouter
workloadOverride.replicas (default 3), the auto-created PodDisruptionBudget
(maxUnavailable: 1), equal-metric automatic failover, and spreading replicas
across failure domains via workloadOverride.podTemplate. Models least-privilege
(named destination group + access policy) rather than the All group.

* docs: add topology diagrams to HA routing peers page

Two SVG topology diagrams: replicas on a single node (single point of
failure) and replicas spread one-per-node via topologySpreadConstraints.
Embedded in Step 1 and the failure-domains section.

* docs: correct HA scheduling framing; drop single-node diagram

kube-scheduler spreads a Deployment's replicas across nodes by default
(best-effort, via built-in PodTopologySpread defaults). The earlier text/
diagram wrongly implied replicas co-locate by default. Reframe: multi-node
spread is the default; topologySpreadConstraints turns it into a guarantee
(or spans zones). Remove the single-node diagram (non-HA case, out of scope).

* docs: add Friendly DNS names appendix to HA routing peers page

Document exposing a service under a cleaner name via a CNAME in a custom
zone pointing at the operator's <service>.<namespace>.<zone> record (verified
end-to-end). Placed as an appendix for now; can move to a shared location later.

* docs: use ScheduleAnyway in spread example; note DoNotSchedule rollout deadlock

Multi-node verification: default scheduling already spreads replicas one-per-node;
the operator merges workloadOverride.podTemplate.topologySpreadConstraints into the
Deployment. DoNotSchedule with replicas == schedulable nodes deadlocks rolling updates
(surge pod can't place). Switch the example to ScheduleAnyway (verified clean rollout)
and document DoNotSchedule + the node-count/maxSurge caveat for a hard guarantee.

* docs: clarify custom-zone records are per-name (no whole-domain shadowing)

Verified on the lab: a NetBird custom zone serves only the records you add; other
names under the domain fall through to upstream DNS. Reusing a real internal domain
for friendly names is safe except for exact-name collisions.

* docs: expand into full 'Route to a Kubernetes service' how-to

Restructure the HA use-case page into an end-to-end guide covering the whole
journey: create the custom DNS zone, groups, and access policy (dashboard) ->
deploy HA routing peers (NetworkRouter, replicas:3) -> expose a Service
(NetworkResource) -> verify + failover. Generic, human-readable example names
(k8s.company.internal, kubernetes-clients/-services, network 'kubernetes',
nginx). Keeps the failure-domains diagram + ScheduleAnyway/DoNotSchedule note
and the friendly-DNS appendix. Adds <img> slots for 5 dashboard/terminal
screenshots (to be supplied). Renames the page + nav entry to
route-to-a-kubernetes-service; old slug removed.

* docs: add dashboard/terminal screenshots to the K8s how-to

Four screenshots (DNS zone, access policy, the kubernetes network with HA +
3 routing peers, kubectl pods-across-nodes). Drop the groups screenshot and
renumber the <img> refs to match.

* docs: swap in cleaner pods-across-nodes screenshot for Step 5

* docs: make node-spread central to the HA guide

Node-spread is the point of an HA guide, not a tail-end section. Move the
topology diagram up to 'What you'll achieve', fold the node-spread story into
Step 3 (deploy HA routing peers) - leading with the verified fact that the
scheduler spreads replicas across nodes by default (HA out of the box), with
topologySpreadConstraints as optional hardening - and drop the orphaned
'Spread across failure domains' section.

* docs: clarify the custom zone is created empty (operator fills the record)

Step 1 showed the auto-created A record without saying you don't enter it.
Note that you create only the zone (no hostname/IP/TTL by hand) and the
operator adds <service>.<namespace>.<zone> -> ClusterIP (5-min TTL) in Step 4.

* docs: replace Excalidraw topology with a custom dark-mode SVG

Hand-authored dark-background topology diagram (NetBird overlay -> routing
peers one-per-node -> Service) that matches the dark docs theme, replacing the
light Excalidraw-derived SVG. Removes the orphaned ha-routing-peers-spread-nodes.svg.

* docs: add CNAME dialog screenshot to the friendly-DNS appendix

Show the Add DNS Record dialog (CNAME 'app' -> nginx.default.k8s.company.internal)
and align the example hostname to 'app' to match.

* docs: drop maxSurge:0 workaround (not configurable via the operator)

The operator's workloadOverride only exposes annotations, labels, podTemplate,
and replicas — there is no hook for the Deployment's strategy.rollingUpdate.maxSurge.
Keep the achievable workaround (more schedulable nodes than replicas).

* docs: drop manual topology spread guidance (operator handles it by default)
2026-07-03 12:26:26 +02:00
Brandon Hopkins
b70301ee4d Image Audit: Unreferenced Images (#787) 2026-06-11 19:22:11 -07:00
Jack Carter
6a31154b96 Add dedicated User Roles page (#789)
Create a standalone User Roles reference covering all six roles (Owner,
Admin, Network Admin, Billing Admin, Auditor, User) with a permission
matrix aligned to the current dashboard, per-role sections, API/token
notes, and role-assignment steps.

Reduce the role section on the Add Users page to a pointer (keeping the
existing anchor), repoint inbound links from delete-account,
control-center, and msp-portal, add the page to the Team sidebar, and
refresh the role screenshots.
2026-06-11 16:19:08 +02:00
Brandon Hopkins
39303d1c48 Align docs with the new dashboard UI (Phase 1) (#778)
* bulk text edit to fit new flows

* Updated screenshots, some minor docs fix. (#782)

* Update Settings on site-to-site.mdx

* fix image names and embedded links

* Update high level dia

* general dashboard images and auto-update stucture fix

* remove temp audit file

---------

Co-authored-by: PizzaLovingNerd <cameron@stillhq.io>
2026-06-10 09:24:36 -07:00
Bruno Mercier Costa
6107943b50 Update Entra Provisioning Screenshot (#785) 2026-06-10 09:59:16 +02:00
Jack Carter
7fb329aba7 docs: rewrite Networks page as a teaching guide (#779)
* docs: rewrite Networks page as a teaching guide

Rework /manage/networks from a reference-style concept page into a
structured teaching guide: mental model, the four building blocks
(Network, Resource, Access policy, Routing peer), how a packet reaches
a resource, and an end-to-end walkthrough for reaching two internal
apps with Zero Trust access by default.

- Add a production checklist (HA, monitoring, masquerade, internal DNS,
  routing-peer access) and a clear "Networks or Network Routes?" split:
  Networks now covers every remote-access scenario except exit nodes.
- Add worked-example and resource-list screenshots.
- how-routing-peers-work: point site-to-site at Networks, describe
  Routing Peer DNS Resolution as on by default, and restore the
  0.59.x domain-resolution compatibility note.
- Rename the sidebar entry from "Concept" to "Overview".

* image organization into /networks dir

* fix embedded images in networks/index.mdx

* docs: note no inbound ports and Linux-only masquerade on Networks page

---------

Co-authored-by: TechHutTV <brandon@techhut.tv>
2026-06-09 17:06:22 +02:00
Bethuel Mmbaga
a8c86c48e0 Add Zoho Directory SSO (#780) 2026-06-08 18:12:40 +03:00
Maycon Santos
c2ccdf43e0 Documented NetBird-Only Access and Proxy Cluster features in reverse … (#767)
* Documented NetBird-Only Access and Proxy Cluster features in reverse proxy settings. Updated authentication methods, backend configuration guides, and cluster capability requirements.

* Expanded documentation for NetBird-Only services, updated Access Control baseline behavior, added details on Direct Upstream and Proxy Cluster features, and refined cluster capability descriptions.

* add private services diagrams and update auth screenshot

* Document ProxyService gRPC routes and expand reverse proxy configuration details

---------

Co-authored-by: TechHutTV <brandon@techhut.tv>
2026-06-05 08:16:03 -07:00
Misha Bragin
14efe3f46a User Servers ref when relevant instead of User Devices (#770) 2026-05-27 16:38:39 +02:00
Maycon Santos
30cb1bff3b Update BYOP documentation to reflect "Clusters" terminology (#762)
* Update BYOP documentation to reflect "Clusters" terminology and add shared vs account cluster details.

* Update BYOP DNS documentation and replace modal images
2026-05-20 12:07:28 +02:00
Eduard Gert
eb752fd70b Add distributor portal docs (#729)
* add distributor portal

* update wordings

* update docs
2026-05-15 12:47:38 +02:00
Jack Carter
442116bb8f docs: prune redundant Networks and Network Routes use cases (#749)
The Networks and Network Routes "By Scenario" / "By Resource Type" /
"By Configuration" subgroups had grown into reskinned walkthroughs of
flows already on the concept pages. Collapse to what's actually
distinct, flatten the survivors up one level, fold unique nuggets
into the concept pages.

Networks:
- Delete the "By Resource Type" trio (Multiple IP Resources, Domain
  Resources, Wildcard Domains) and Remote Worker Access — all rehashes
  of /manage/networks. Fold the wildcard-vs-base-domain gotcha and the
  shared-policy pattern into the concept page.
- Delete the Use Cases overview; fold the VPN-to-Site framing into the
  concept page.
- Flatten access-home-devices and cloud-to-on-premise up out of
  /by-scenario/.

Network Routes:
- Consolidate site-to-site-{home,office,cloud} into one
  /manage/network-routes/use-cases/site-to-site page covering the
  shared walkthrough plus AWS/GCP/Azure routing-peer requirements.
- Move exit-nodes, access-control, overlapping-routes, and
  advanced-configuration up out of /by-{scenario,configuration}/.
- Trim advanced-configuration (301 → 144 lines), dropping masquerade
  basics, ACL setup, site-to-site flow, and HA repetition duplicated
  elsewhere. Keep the masquerade trade-off matrix, Networks-vs-Routes
  comparison, troubleshooting, and debug commands.
- Delete the Use Cases overview.

Permanent redirects added for every removed URL. Inbound references
updated across introduction, ipv6, homelab, cloud, security,
site-to-site overview, android-tv/tvOS install pages, and the concept
pages.
2026-05-13 14:17:43 +02:00
Jack Carter
6d0ad7d60d docs(event-streaming): add Wazuh integration guide (#734)
* docs(event-streaming): add Wazuh integration guide

Documents how to wire NetBird's Generic HTTP event-streaming integration
to a self-hosted Wazuh manager: NetBird-side configuration, KQL queries
for audit and traffic events in the Wazuh dashboard, and a schema
reference for both event shapes via the receiver wrapper.

Adds the page to the Stream Activity Events sidebar and the
event-streaming index.

* docs(event-streaming): replace Wazuh Generic HTTP screenshot
2026-05-12 15:52:25 +02:00
Viktor Liu
93f1fb265c Add IPv6 overlay addressing documentation (#667) 2026-05-11 17:48:31 +02:00
Vlad
694e009a08 bring your own proxy docs (#733) 2026-05-11 15:14:25 +02:00
Bruno Mercier Costa
58f1e94ec4 SSO Screenshot Update (#732)
SSO Screenshot Update
2026-05-07 16:15:23 +02:00
Bethuel Mmbaga
d36c932b86 Add AWS Cognito SSO (#717) 2026-04-30 11:05:40 +03:00
Maycon Santos
a02fe74b0d Add bypass docs (#577)
* Add force approval docs

* add force approval

* add filter and batch operation

* Rename force approval docs to bypass compliance

- Rename force-approval.mdx to bypass-compliance.mdx
- Update navigation title from "Force Approval" to "Bypass Compliance"
- Update all internal links to use new path
- Update image paths to /bypass-compliance/
- Update terminology in EDR integration docs

* add images

---------

Co-authored-by: Ashley Mensah <ashleyamo982@gmail.com>
2026-04-21 16:39:33 +02:00
Bethuel Mmbaga
e0076457c8 Add IdP sync docs for embedded IdP (#696)
* Add embedded IdP sync docs

* Link idp sync to embedded idp sync docs

* fix: Add missing Note imports and fix NerBird typo in idp-sync docs

---------

Co-authored-by: Jack Carter <128555021+SunsetDrifter@users.noreply.github.com>
2026-04-21 14:23:55 +02:00
Eduard Gert
a4db2c6100 Add slack notifications docs (#697) 2026-04-14 14:21:30 +02:00
Bethuel Mmbaga
a95036e9ee Add Zitadel SSO docs (#691) 2026-04-09 17:19:26 +03:00
Eduard Gert
918b8579c2 Add notification docs and fix search autofocus (#647) 2026-04-09 13:15:45 +03:00
Jack Carter
679ad7b3ad docs: add Entra ID enterprise application enablement guide (#677)
Add documentation for enabling the NetBird enterprise application in
Microsoft Entra ID, including finding the app by Application ID and
granting admin consent for the directory.
2026-04-01 16:37:56 +02:00
Misha Bragin
e17482abaa Improve screenshot quality and add access restrictions screenshot (#675) 2026-04-01 12:25:57 +02:00
Viktor Liu
f169522dde Document L4 service modes, header authentication, and access restrictions (#666)
---------

Co-authored-by: Brandon Hopkins <brandon@techhut.tv>
Co-authored-by: Ashley Mensah <ashleyamo982@gmail.com>
2026-04-01 11:22:04 +02:00
Bethuel Mmbaga
31a1eb5642 Update keycloak initial sync steps (#654) 2026-03-16 14:28:45 +03:00
shuuri-labs
4b5fa2b2f4 Update networks docs to reflect new state of 'add resource' modal (#651) 2026-03-13 15:17:30 +01:00
Brandon Hopkins
b2cab09cdc Add Remote Jobs Page (#644) 2026-03-04 13:57:20 +01:00
Bethuel Mmbaga
cb44c913b7 Update Microsoft Entra SCIM docs (#642) 2026-03-03 20:44:41 +03:00
shuuri-labs
b35d3ce6c8 Add backend service configuration guide trusted proxies and fix images (#639)
* Add backend service configuration guide for reverse proxy trusted proxies

Many self-hosted services (Jellyfin, Home Assistant, Nextcloud, Plex)
require a "trusted proxies" or "known hosts" setting when behind a
reverse proxy. With NetBird, the proxy's IP is a dynamic NetBird IP
from 100.64.0.0/10 that can change on restart, so hardcoding it breaks.

This adds a new doc page with the recommended solution (trust the full
CGNAT range), per-service config examples, Docker bridge network
guidance, and a warning on the reverse proxy overview page.

* Update service-configuration.mdx and move/add images

* Fixing typos

---------

Co-authored-by: Brandon Hopkins <brandon@techhut.tv>
2026-02-27 20:27:30 +01:00
Bethuel Mmbaga
3c8736f8f6 Add cidaas idp sso (#641) 2026-02-27 11:57:21 +03:00
Brandon Hopkins
8da42f59ff Add Temp Diagram and Fix Sidebar Nav (#613) 2026-02-17 21:31:10 +01:00
shuuri-labs
bca8559980 Reverse proxy amendments 2 (#616)
* Reverse Proxy Doc Amendments

- update custom domains page to more closely reflect wording in the UI, added screenshots
- add warning to index page that reverse proxy feature does not currently work with pre-shared keys/rosenpass

* Update navigation order (move reverse proxy below network routes)

* update migration guide to mention the need for TWO cname records (proxy and proxy wildcard)
2026-02-17 14:37:37 +01:00
shuuri-labs
432602e35e Add Reverse Proxy documentation and update self-hosted quickstart (#594)
- Add Reverse Proxy docs: overview, custom domains, authentication, access logs
- Add Reverse Proxy section to sidebar navigation
- Update self-hosted quickstart for new getting-started.sh (Traefik default, combined server)
2026-02-13 19:07:01 +01:00
shuuri-labs
f69c55b9c2 Streamlined site-to-site docs in new dedicated section. Removed old u… (#585)
* Streamlined site-to-site docs in new dedicated section. Removed old use-case guide and added redirects

* restructure use-cases, move network use cases to network sections

* Reorganize network routes and networks documentation structure

- Restructure use cases into by-scenario and by-configuration folders
- Reorganize images to match new doc structure (concepts, by-scenario, by-resource-type)
- Add screenshots for site-to-site guides (home, office, cloud)
- Add policy screenshots for networks use cases
- Update site-to-site docs to use two separate policies instead of bidirectional
- Fix Access Control Groups to use correct destination groups
- Move "Self-Hosted vs Cloud" page to about section
- Update navigation and add redirects for moved pages
- Add CLAUDE.md for Claude Code guidance

* cleaned up network docs/image folder structure

* Align site-to-site use case links and redirects

Co-authored-by: Cursor <cursoragent@cursor.com>

* Update CLAUDE.md with accurate project details

Fix Next.js version (14 → 16), add React 19/Tailwind/Pages Router
details, document MDX page conventions, image paths, and note
absence of test suite.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Fix broken images and hydration error on networks page

- Restore 6 network index images accidentally deleted in 4116092
- Fix keycloak image filename typo (keycloack -> keycloak)
- Fix hydration mismatch by replacing invalid <p><div> nesting with <div>

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Fix 4 broken internal links found in PR review

- Fix missing by-scenario/ segment in site-to-site-home and
  site-to-site-office Tile hrefs (network-routes use-cases index)
- Fix lazy-connections typo to lazy-connection (implement-zero-trust)
- Update stale redirect link to direct path for access-control

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Jack Carter <128555021+SunsetDrifter@users.noreply.github.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 15:35:44 +01:00
shuuri-labs
2900964bd6 Updated references to 'service discovery' in dns docs (now dns aliases) (#556)
* Updated references to 'service discovery' in dns docs (now dns aliases)

* add entry to side bar menu & update references within page to match title
2026-01-16 19:13:30 +01:00
Bethuel Mmbaga
157f390c6c Add custom DNS zones (#518) 2026-01-16 18:43:33 +03:00
Eduard Gert
2901b505ba Add users view (#544) 2026-01-13 10:58:40 +01:00