[GH-ISSUE #4679] netbird with authelia #9221

Open
opened 2026-08-05 01:21:20 -04:00 by saavagebueno · 0 comments
Owner

Originally created by @rtgiskard on GitHub (Oct 21, 2025).
Original GitHub issue: https://github.com/netbirdio/netbird/issues/4679

Struggled few days and finally get it work with authelia!

The available documentation misses quite a few important details, so here’s my final setup for anyone else trying to make it work:

authelia:

  identity_providers:
    oidc:
      # required by netbird
      cors:
        allowed_origins_from_client_redirect_uris: true
        endpoints:
          - userinfo
          - authorization
          - token
          - revocation
          - introspection

      claims_policies:
        netbird:
          id_token: [email,groups]

      clients:
        - client_name: netbird
          client_id: <client_id>
          client_secret:
            path: /path/to/secret/hash
          authorization_policy: one_factor
          public: false
          require_pkce: true
          pkce_challenge_method: S256
          token_endpoint_auth_method: client_secret_post
          claims_policy: netbird
          audience:
            - <client_id>
          redirect_uris:
            - https://netbird.dev.oo/auth
            - https://netbird.dev.oo/silent-auth
            - http://localhost
          scopes:
            - openid
            - email
            - profile
            - groups
            - offline_access
          grant_types:
            - authorization_code
            - refresh_token

netbird values.yaml:

management:
  enabled: true

  # cache geolocation data across restart
  persistentVolume:
    enabled: true
    size: 400Mi

  image:
    tag: 0.59.8

  env:
    STUN_SERVER_URI: stun:netbird.dev.oo:3478
    TURN_SERVER_URI: turn:netbird.dev.oo:3478
    NB_EXPOSED_ADDRESS: rels://netbird.dev.oo:443/relay
    NB_PEER_UPDATE_INTERVAL_MS: "200"
    NB_PEER_UPDATE_STARTUP_PERIOD_S: "4"
    NB_ACTIVITY_EVENT_STORE_ENGINE: postgres
    OIDC_ENDPOINT: "https://auth.dev.oo/.well-known/openid-configuration"
  envFromSecret:
    NB_AUTH_SECRET: netbird-sec/NB_AUTH_SECRET
    AUTH_CLIENT_ID: netbird-sec/AUTH_CLIENT_ID
    AUTH_CLIENT_SECRET: netbird-sec/AUTH_CLIENT_SECRET
    AUTH_SUPPORTED_SCOPES: netbird-sec/AUTH_SUPPORTED_SCOPES
    DATASTORE_ENCRYPTION_KEY: netbird-sec/DATASTORE_ENCRYPTION_KEY
    NETBIRD_STORE_ENGINE_POSTGRES_DSN: netbird-sec/POSTGRESQL_DSN
    NB_ACTIVITY_EVENT_POSTGRES_DSN: netbird-sec/POSTGRESQL_EVENTS_DSN

  configmap: |-
    {
      "StoreConfig": {
        "Engine": "postgres"
      },
      "Stuns": [
        {
          "Proto": "udp",
          "URI": "{{ .STUN_SERVER_URI }}"
        }
      ],
      "Relay": {
        "Addresses": ["{{ .NB_EXPOSED_ADDRESS }}"],
        "Secret": "{{ .NB_AUTH_SECRET }}",
        "CredentialsTTL": "12h"
      },
      "Signal": {
        "Proto": "https",
        "URI": "netbird.dev.oo:443"
      },
      "HttpConfig": {
        "AuthUserIDClaim": "email",
        "AuthAudience": "{{ .AUTH_CLIENT_ID }}",
        "OIDCConfigEndpoint":"{{ .OIDC_ENDPOINT }}",
        "IdpSignKeyRefreshEnabled": true,
        "LetsEncryptDomain": "",
        "CertFile": "",
        "CertKey": ""
      },
      "DataStoreEncryptionKey": "{{ .DATASTORE_ENCRYPTION_KEY }}",
      "IdpManagerConfig": {},
      "DeviceAuthorizationFlow": {
        "Provider": "hosted",
        "ProviderConfig": {
          "ClientID": "{{ .AUTH_CLIENT_ID }}",
          "ClientSecret": "{{ .AUTH_CLIENT_SECRET }}",
          "Scope": "openid",
          "RedirectURLs": null,
          "UseIDToken": true
        }
      },
      "PKCEAuthorizationFlow": {
        "ProviderConfig": {
          "ClientID": "{{ .AUTH_CLIENT_ID }}",
          "ClientSecret": "{{ .AUTH_CLIENT_SECRET }}",
          "Scope": "{{ .AUTH_SUPPORTED_SCOPES }}",
          "RedirectURLs": ["http://localhost:53000/"],
          "UseIDToken": true
        }
      }
    }

dashboard:
  enabled: true
  image:
    repository: netbirdio/dashboard
    tag: "v2.20.1"
  env:
    NETBIRD_MGMT_API_ENDPOINT: https://netbird.dev.oo
    NETBIRD_MGMT_GRPC_API_ENDPOINT: https://netbird.dev.oo
    NETBIRD_TOKEN_SOURCE: idToken
    USE_AUTH0: 'false'
    AUTH_AUTHORITY: https://auth.dev.oo
    AUTH_REDIRECT_URI: /auth
    AUTH_SILENT_REDIRECT_URI: /silent-auth
  envFromSecret:
    AUTH_AUDIENCE: netbird-sec/AUTH_CLIENT_ID
    AUTH_CLIENT_ID: netbird-sec/AUTH_CLIENT_ID
    AUTH_CLIENT_SECRET: netbird-sec/AUTH_CLIENT_SECRET
    AUTH_SUPPORTED_SCOPES: netbird-sec/AUTH_SUPPORTED_SCOPES

# NOTE: relay with quic
# 1. add tls cert for relay via env: NB_TLS_KEY_FILE,NB_TLS_CERT_FILE
# 2. expose port with LoadBalancer
# 3. tweak sysctl udp max r/w buffer for quic

relay:
  enabled: true
  image:
    tag: 0.59.8
  service:
    type: LoadBalancer
    annotations:
      lbipam.cilium.io/ips: <LB VIP>
      lbipam.cilium.io/sharing-key: <LB_SHARE_KEY>
      lbipam.cilium.io/sharing-cross-namespace: "*"
  env:
    NB_EXPOSED_ADDRESS: rels://netbird.dev.oo:443/relay
    NB_LISTEN_ADDRESS: :33080
    NB_TLS_KEY_FILE: /sec/tls/tls.key
    NB_TLS_CERT_FILE: /sec/tls/tls.crt
  envFromSecret:
    NB_AUTH_SECRET: netbird-sec/NB_AUTH_SECRET

  volumeMounts:
    - name: tls-cert
      mountPath: /sec/tls
      readOnly: true
  volumes:
    - name: tls-cert
      secret:
        secretName: netbird-cert-tls

signal:
  enabled: true
  image:
    tag: 0.59.8

extraManifests:
- apiVersion: cert-manager.io/v1
  kind: Certificate
  metadata:
    name: netbird-cert
  spec:
    secretName: netbird-cert-tls
    isCA: false
    duration: 2400h
    renewBefore: 480h
    dnsNames:
      - netbird.dev.oo
    privateKey:
      algorithm: ECDSA
      encoding: PKCS8
      rotationPolicy: Always
    issuerRef:
      name: m0s-cert-issuer
      kind: ClusterIssuer
      group: cert-manager.io

- apiVersion: gateway.networking.k8s.io/v1
  kind: HTTPRoute
  metadata:
    name: netbird-aio
  spec:
    parentRefs:
      - name: traefik-gw
        namespace: infra
        sectionName: websecure-sub
    hostnames:
      - netbird.dev.oo
    rules:
      # dashboard: http
      - backendRefs:
          - name: netbird-dashboard
            port: 80

      # signal: gRPC + WebSocket
      - backendRefs:
          - name: netbird-signal
            port: 80
        matches:
          - path:
              type: PathPrefix
              value: /signalexchange.SignalExchange/
          - path:
              type: PathPrefix
              value: /ws-proxy/signal

      # management: HTTP + gRPC + WebSocket
      - backendRefs:
          - name: netbird-management
            port: 80
        matches:
          - path:
              type: PathPrefix
              value: /api
          - path:
              type: PathPrefix
              value: /management.ManagementService/
          - path:
              type: PathPrefix
              value: /ws-proxy/management

      # relay: WebSocket
      - backendRefs:
          - name: netbird-relay
            port: 33080
        matches:
          - path:
              type: PathPrefix
              value: /relay

for those do not need quic:

management:
  enabled: true

  # cache geolocation data across restart
  persistentVolume:
    enabled: true
    size: 400Mi

  image:
    tag: 0.59.8

  env:
    STUN_SERVER_URI: stun:netbird.dev.oo:3478
    TURN_SERVER_URI: turn:netbird.dev.oo:3478
    NB_EXPOSED_ADDRESS: rels://netbird.dev.oo:443/relay
    NB_PEER_UPDATE_INTERVAL_MS: "200"
    NB_PEER_UPDATE_STARTUP_PERIOD_S: "4"
    NB_ACTIVITY_EVENT_STORE_ENGINE: postgres
    OIDC_ENDPOINT: "https://auth.dev.oo/.well-known/openid-configuration"
  envFromSecret:
    NB_AUTH_SECRET: netbird-sec/NB_AUTH_SECRET
    AUTH_CLIENT_ID: netbird-sec/AUTH_CLIENT_ID
    AUTH_CLIENT_SECRET: netbird-sec/AUTH_CLIENT_SECRET
    AUTH_SUPPORTED_SCOPES: netbird-sec/AUTH_SUPPORTED_SCOPES
    DATASTORE_ENCRYPTION_KEY: netbird-sec/DATASTORE_ENCRYPTION_KEY
    NETBIRD_STORE_ENGINE_POSTGRES_DSN: netbird-sec/POSTGRESQL_DSN
    NB_ACTIVITY_EVENT_POSTGRES_DSN: netbird-sec/POSTGRESQL_EVENTS_DSN

  configmap: |-
    {
      "StoreConfig": {
        "Engine": "postgres"
      },
      "Stuns": [
        {
          "Proto": "udp",
          "URI": "{{ .STUN_SERVER_URI }}"
        }
      ],
      "Relay": {
        "Addresses": ["{{ .NB_EXPOSED_ADDRESS }}"],
        "Secret": "{{ .NB_AUTH_SECRET }}",
        "CredentialsTTL": "12h"
      },
      "Signal": {
        "Proto": "https",
        "URI": "netbird.dev.oo:443"
      },
      "HttpConfig": {
        "AuthUserIDClaim": "email",
        "AuthAudience": "{{ .AUTH_CLIENT_ID }}",
        "OIDCConfigEndpoint":"{{ .OIDC_ENDPOINT }}",
        "IdpSignKeyRefreshEnabled": true,
        "LetsEncryptDomain": "",
        "CertFile": "",
        "CertKey": ""
      },
      "DataStoreEncryptionKey": "{{ .DATASTORE_ENCRYPTION_KEY }}",
      "IdpManagerConfig": {},
      "DeviceAuthorizationFlow": {
        "Provider": "hosted",
        "ProviderConfig": {
          "ClientID": "{{ .AUTH_CLIENT_ID }}",
          "ClientSecret": "{{ .AUTH_CLIENT_SECRET }}",
          "Scope": "openid",
          "RedirectURLs": null,
          "UseIDToken": true
        }
      },
      "PKCEAuthorizationFlow": {
        "ProviderConfig": {
          "ClientID": "{{ .AUTH_CLIENT_ID }}",
          "ClientSecret": "{{ .AUTH_CLIENT_SECRET }}",
          "Scope": "{{ .AUTH_SUPPORTED_SCOPES }}",
          "RedirectURLs": ["http://localhost:53000/"],
          "UseIDToken": true
        }
      }
    }

dashboard:
  enabled: true
  image:
    repository: netbirdio/dashboard
    tag: "v2.20.1"
  env:
    NETBIRD_MGMT_API_ENDPOINT: https://netbird.dev.oo
    NETBIRD_MGMT_GRPC_API_ENDPOINT: https://netbird.dev.oo
    NETBIRD_TOKEN_SOURCE: idToken
    USE_AUTH0: 'false'
    AUTH_AUTHORITY: https://auth.dev.oo
    AUTH_REDIRECT_URI: /auth
    AUTH_SILENT_REDIRECT_URI: /silent-auth
  envFromSecret:
    AUTH_AUDIENCE: netbird-sec/AUTH_CLIENT_ID
    AUTH_CLIENT_ID: netbird-sec/AUTH_CLIENT_ID
    AUTH_CLIENT_SECRET: netbird-sec/AUTH_CLIENT_SECRET
    AUTH_SUPPORTED_SCOPES: netbird-sec/AUTH_SUPPORTED_SCOPES

relay:
  enabled: true
  image:
    tag: 0.59.8
  env:
    NB_EXPOSED_ADDRESS: rels://netbird.dev.oo:443/relay
    NB_LISTEN_ADDRESS: :33080
  envFromSecret:
    NB_AUTH_SECRET: netbird-sec/NB_AUTH_SECRET

signal:
  enabled: true
  image:
    tag: 0.59.8

extraManifests:
- apiVersion: gateway.networking.k8s.io/v1
  kind: HTTPRoute
  metadata:
    name: netbird-aio
  spec:
    parentRefs:
      - name: traefik-gw
        namespace: infra
        sectionName: websecure-sub
    hostnames:
      - netbird.dev.oo
    rules:
      # dashboard: http
      - backendRefs:
          - name: netbird-dashboard
            port: 80

      # signal: gRPC + WebSocket
      - backendRefs:
          - name: netbird-signal
            port: 80
        matches:
          - path:
              type: PathPrefix
              value: /signalexchange.SignalExchange/
          - path:
              type: PathPrefix
              value: /ws-proxy/signal

      # management: HTTP + gRPC + WebSocket
      - backendRefs:
          - name: netbird-management
            port: 80
        matches:
          - path:
              type: PathPrefix
              value: /api
          - path:
              type: PathPrefix
              value: /management.ManagementService/
          - path:
              type: PathPrefix
              value: /ws-proxy/management

      # relay: WebSocket
      - backendRefs:
          - name: netbird-relay
            port: 33080
        matches:
          - path:
              type: PathPrefix
              value: /relay
Originally created by @rtgiskard on GitHub (Oct 21, 2025). Original GitHub issue: https://github.com/netbirdio/netbird/issues/4679 Struggled few days and finally get it work with `authelia`! The available documentation misses quite a few important details, so here’s my final setup for anyone else trying to make it work: authelia: ``` identity_providers: oidc: # required by netbird cors: allowed_origins_from_client_redirect_uris: true endpoints: - userinfo - authorization - token - revocation - introspection claims_policies: netbird: id_token: [email,groups] clients: - client_name: netbird client_id: <client_id> client_secret: path: /path/to/secret/hash authorization_policy: one_factor public: false require_pkce: true pkce_challenge_method: S256 token_endpoint_auth_method: client_secret_post claims_policy: netbird audience: - <client_id> redirect_uris: - https://netbird.dev.oo/auth - https://netbird.dev.oo/silent-auth - http://localhost scopes: - openid - email - profile - groups - offline_access grant_types: - authorization_code - refresh_token ``` netbird values.yaml: ``` management: enabled: true # cache geolocation data across restart persistentVolume: enabled: true size: 400Mi image: tag: 0.59.8 env: STUN_SERVER_URI: stun:netbird.dev.oo:3478 TURN_SERVER_URI: turn:netbird.dev.oo:3478 NB_EXPOSED_ADDRESS: rels://netbird.dev.oo:443/relay NB_PEER_UPDATE_INTERVAL_MS: "200" NB_PEER_UPDATE_STARTUP_PERIOD_S: "4" NB_ACTIVITY_EVENT_STORE_ENGINE: postgres OIDC_ENDPOINT: "https://auth.dev.oo/.well-known/openid-configuration" envFromSecret: NB_AUTH_SECRET: netbird-sec/NB_AUTH_SECRET AUTH_CLIENT_ID: netbird-sec/AUTH_CLIENT_ID AUTH_CLIENT_SECRET: netbird-sec/AUTH_CLIENT_SECRET AUTH_SUPPORTED_SCOPES: netbird-sec/AUTH_SUPPORTED_SCOPES DATASTORE_ENCRYPTION_KEY: netbird-sec/DATASTORE_ENCRYPTION_KEY NETBIRD_STORE_ENGINE_POSTGRES_DSN: netbird-sec/POSTGRESQL_DSN NB_ACTIVITY_EVENT_POSTGRES_DSN: netbird-sec/POSTGRESQL_EVENTS_DSN configmap: |- { "StoreConfig": { "Engine": "postgres" }, "Stuns": [ { "Proto": "udp", "URI": "{{ .STUN_SERVER_URI }}" } ], "Relay": { "Addresses": ["{{ .NB_EXPOSED_ADDRESS }}"], "Secret": "{{ .NB_AUTH_SECRET }}", "CredentialsTTL": "12h" }, "Signal": { "Proto": "https", "URI": "netbird.dev.oo:443" }, "HttpConfig": { "AuthUserIDClaim": "email", "AuthAudience": "{{ .AUTH_CLIENT_ID }}", "OIDCConfigEndpoint":"{{ .OIDC_ENDPOINT }}", "IdpSignKeyRefreshEnabled": true, "LetsEncryptDomain": "", "CertFile": "", "CertKey": "" }, "DataStoreEncryptionKey": "{{ .DATASTORE_ENCRYPTION_KEY }}", "IdpManagerConfig": {}, "DeviceAuthorizationFlow": { "Provider": "hosted", "ProviderConfig": { "ClientID": "{{ .AUTH_CLIENT_ID }}", "ClientSecret": "{{ .AUTH_CLIENT_SECRET }}", "Scope": "openid", "RedirectURLs": null, "UseIDToken": true } }, "PKCEAuthorizationFlow": { "ProviderConfig": { "ClientID": "{{ .AUTH_CLIENT_ID }}", "ClientSecret": "{{ .AUTH_CLIENT_SECRET }}", "Scope": "{{ .AUTH_SUPPORTED_SCOPES }}", "RedirectURLs": ["http://localhost:53000/"], "UseIDToken": true } } } dashboard: enabled: true image: repository: netbirdio/dashboard tag: "v2.20.1" env: NETBIRD_MGMT_API_ENDPOINT: https://netbird.dev.oo NETBIRD_MGMT_GRPC_API_ENDPOINT: https://netbird.dev.oo NETBIRD_TOKEN_SOURCE: idToken USE_AUTH0: 'false' AUTH_AUTHORITY: https://auth.dev.oo AUTH_REDIRECT_URI: /auth AUTH_SILENT_REDIRECT_URI: /silent-auth envFromSecret: AUTH_AUDIENCE: netbird-sec/AUTH_CLIENT_ID AUTH_CLIENT_ID: netbird-sec/AUTH_CLIENT_ID AUTH_CLIENT_SECRET: netbird-sec/AUTH_CLIENT_SECRET AUTH_SUPPORTED_SCOPES: netbird-sec/AUTH_SUPPORTED_SCOPES # NOTE: relay with quic # 1. add tls cert for relay via env: NB_TLS_KEY_FILE,NB_TLS_CERT_FILE # 2. expose port with LoadBalancer # 3. tweak sysctl udp max r/w buffer for quic relay: enabled: true image: tag: 0.59.8 service: type: LoadBalancer annotations: lbipam.cilium.io/ips: <LB VIP> lbipam.cilium.io/sharing-key: <LB_SHARE_KEY> lbipam.cilium.io/sharing-cross-namespace: "*" env: NB_EXPOSED_ADDRESS: rels://netbird.dev.oo:443/relay NB_LISTEN_ADDRESS: :33080 NB_TLS_KEY_FILE: /sec/tls/tls.key NB_TLS_CERT_FILE: /sec/tls/tls.crt envFromSecret: NB_AUTH_SECRET: netbird-sec/NB_AUTH_SECRET volumeMounts: - name: tls-cert mountPath: /sec/tls readOnly: true volumes: - name: tls-cert secret: secretName: netbird-cert-tls signal: enabled: true image: tag: 0.59.8 extraManifests: - apiVersion: cert-manager.io/v1 kind: Certificate metadata: name: netbird-cert spec: secretName: netbird-cert-tls isCA: false duration: 2400h renewBefore: 480h dnsNames: - netbird.dev.oo privateKey: algorithm: ECDSA encoding: PKCS8 rotationPolicy: Always issuerRef: name: m0s-cert-issuer kind: ClusterIssuer group: cert-manager.io - apiVersion: gateway.networking.k8s.io/v1 kind: HTTPRoute metadata: name: netbird-aio spec: parentRefs: - name: traefik-gw namespace: infra sectionName: websecure-sub hostnames: - netbird.dev.oo rules: # dashboard: http - backendRefs: - name: netbird-dashboard port: 80 # signal: gRPC + WebSocket - backendRefs: - name: netbird-signal port: 80 matches: - path: type: PathPrefix value: /signalexchange.SignalExchange/ - path: type: PathPrefix value: /ws-proxy/signal # management: HTTP + gRPC + WebSocket - backendRefs: - name: netbird-management port: 80 matches: - path: type: PathPrefix value: /api - path: type: PathPrefix value: /management.ManagementService/ - path: type: PathPrefix value: /ws-proxy/management # relay: WebSocket - backendRefs: - name: netbird-relay port: 33080 matches: - path: type: PathPrefix value: /relay ``` for those do not need quic: ``` management: enabled: true # cache geolocation data across restart persistentVolume: enabled: true size: 400Mi image: tag: 0.59.8 env: STUN_SERVER_URI: stun:netbird.dev.oo:3478 TURN_SERVER_URI: turn:netbird.dev.oo:3478 NB_EXPOSED_ADDRESS: rels://netbird.dev.oo:443/relay NB_PEER_UPDATE_INTERVAL_MS: "200" NB_PEER_UPDATE_STARTUP_PERIOD_S: "4" NB_ACTIVITY_EVENT_STORE_ENGINE: postgres OIDC_ENDPOINT: "https://auth.dev.oo/.well-known/openid-configuration" envFromSecret: NB_AUTH_SECRET: netbird-sec/NB_AUTH_SECRET AUTH_CLIENT_ID: netbird-sec/AUTH_CLIENT_ID AUTH_CLIENT_SECRET: netbird-sec/AUTH_CLIENT_SECRET AUTH_SUPPORTED_SCOPES: netbird-sec/AUTH_SUPPORTED_SCOPES DATASTORE_ENCRYPTION_KEY: netbird-sec/DATASTORE_ENCRYPTION_KEY NETBIRD_STORE_ENGINE_POSTGRES_DSN: netbird-sec/POSTGRESQL_DSN NB_ACTIVITY_EVENT_POSTGRES_DSN: netbird-sec/POSTGRESQL_EVENTS_DSN configmap: |- { "StoreConfig": { "Engine": "postgres" }, "Stuns": [ { "Proto": "udp", "URI": "{{ .STUN_SERVER_URI }}" } ], "Relay": { "Addresses": ["{{ .NB_EXPOSED_ADDRESS }}"], "Secret": "{{ .NB_AUTH_SECRET }}", "CredentialsTTL": "12h" }, "Signal": { "Proto": "https", "URI": "netbird.dev.oo:443" }, "HttpConfig": { "AuthUserIDClaim": "email", "AuthAudience": "{{ .AUTH_CLIENT_ID }}", "OIDCConfigEndpoint":"{{ .OIDC_ENDPOINT }}", "IdpSignKeyRefreshEnabled": true, "LetsEncryptDomain": "", "CertFile": "", "CertKey": "" }, "DataStoreEncryptionKey": "{{ .DATASTORE_ENCRYPTION_KEY }}", "IdpManagerConfig": {}, "DeviceAuthorizationFlow": { "Provider": "hosted", "ProviderConfig": { "ClientID": "{{ .AUTH_CLIENT_ID }}", "ClientSecret": "{{ .AUTH_CLIENT_SECRET }}", "Scope": "openid", "RedirectURLs": null, "UseIDToken": true } }, "PKCEAuthorizationFlow": { "ProviderConfig": { "ClientID": "{{ .AUTH_CLIENT_ID }}", "ClientSecret": "{{ .AUTH_CLIENT_SECRET }}", "Scope": "{{ .AUTH_SUPPORTED_SCOPES }}", "RedirectURLs": ["http://localhost:53000/"], "UseIDToken": true } } } dashboard: enabled: true image: repository: netbirdio/dashboard tag: "v2.20.1" env: NETBIRD_MGMT_API_ENDPOINT: https://netbird.dev.oo NETBIRD_MGMT_GRPC_API_ENDPOINT: https://netbird.dev.oo NETBIRD_TOKEN_SOURCE: idToken USE_AUTH0: 'false' AUTH_AUTHORITY: https://auth.dev.oo AUTH_REDIRECT_URI: /auth AUTH_SILENT_REDIRECT_URI: /silent-auth envFromSecret: AUTH_AUDIENCE: netbird-sec/AUTH_CLIENT_ID AUTH_CLIENT_ID: netbird-sec/AUTH_CLIENT_ID AUTH_CLIENT_SECRET: netbird-sec/AUTH_CLIENT_SECRET AUTH_SUPPORTED_SCOPES: netbird-sec/AUTH_SUPPORTED_SCOPES relay: enabled: true image: tag: 0.59.8 env: NB_EXPOSED_ADDRESS: rels://netbird.dev.oo:443/relay NB_LISTEN_ADDRESS: :33080 envFromSecret: NB_AUTH_SECRET: netbird-sec/NB_AUTH_SECRET signal: enabled: true image: tag: 0.59.8 extraManifests: - apiVersion: gateway.networking.k8s.io/v1 kind: HTTPRoute metadata: name: netbird-aio spec: parentRefs: - name: traefik-gw namespace: infra sectionName: websecure-sub hostnames: - netbird.dev.oo rules: # dashboard: http - backendRefs: - name: netbird-dashboard port: 80 # signal: gRPC + WebSocket - backendRefs: - name: netbird-signal port: 80 matches: - path: type: PathPrefix value: /signalexchange.SignalExchange/ - path: type: PathPrefix value: /ws-proxy/signal # management: HTTP + gRPC + WebSocket - backendRefs: - name: netbird-management port: 80 matches: - path: type: PathPrefix value: /api - path: type: PathPrefix value: /management.ManagementService/ - path: type: PathPrefix value: /ws-proxy/management # relay: WebSocket - backendRefs: - name: netbird-relay port: 33080 matches: - path: type: PathPrefix value: /relay ```
saavagebueno added the feature-request label 2026-08-05 01:21:20 -04:00
Sign in to join this conversation.
No Label feature-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: DYNR/netbird#9221