Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps - Status | Demo | Docs | Install
  1. Cloudron Forum
  2. App Wishlist
  3. NetBird - FOSS noconf Mesh VPN using Wireguard, alternative to ZeroTier, Tailscale, OmniEdge, Netmaker etc

NetBird - FOSS noconf Mesh VPN using Wireguard, alternative to ZeroTier, Tailscale, OmniEdge, Netmaker etc

Scheduled Pinned Locked Moved App Wishlist
15 Posts 6 Posters 4.3k Views 9 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • bragininiB Offline
    bragininiB Offline
    braginini
    wrote on last edited by
    #5

    NetBird author is here.

    Thanks, @marcusquinn, for posting about NetBird!

    Thank you, @privsec, for the kind feedback.

    I see that there is quite an interest. Feel free to ask me any questions πŸ™‚

    robiR DanTheManD 2 Replies Last reply
    2
    • bragininiB braginini

      NetBird author is here.

      Thanks, @marcusquinn, for posting about NetBird!

      Thank you, @privsec, for the kind feedback.

      I see that there is quite an interest. Feel free to ask me any questions πŸ™‚

      robiR Offline
      robiR Offline
      robi
      wrote on last edited by
      #6

      @braginini Would you be open to helping package this for Cloudron?

      Conscious tech

      1 Reply Last reply
      5
      • necrevistonnezrN necrevistonnezr referenced this topic on
      • fbartelsF fbartels referenced this topic on
      • bragininiB braginini

        NetBird author is here.

        Thanks, @marcusquinn, for posting about NetBird!

        Thank you, @privsec, for the kind feedback.

        I see that there is quite an interest. Feel free to ask me any questions πŸ™‚

        DanTheManD Offline
        DanTheManD Offline
        DanTheMan
        wrote on last edited by
        #7
        This post is deleted!
        1 Reply Last reply
        0
        • marcusquinnM Offline
          marcusquinnM Offline
          marcusquinn
          wrote on last edited by
          #8

          Works with Keycloak too: https://netbird.io/docs/integrations/identity-providers/self-hosted/using-netbird-with-keycloak

          Web Design & Development: https://www.evergreen.je
          Technology & Apps: https://www.marcusquinn.com

          1 Reply Last reply
          3
          • girishG girish referenced this topic on
          • T timka referenced this topic on
          • marcusquinnM marcusquinn referenced this topic on
          • marcusquinnM Offline
            marcusquinnM Offline
            marcusquinn
            wrote last edited by
            #9

            Revisited all of these alternatives.

            Netbird is the clear winner for me. Has my recommendation!

            Web Design & Development: https://www.evergreen.je
            Technology & Apps: https://www.marcusquinn.com

            1 Reply Last reply
            2
            • marcusquinnM Offline
              marcusquinnM Offline
              marcusquinn
              wrote last edited by
              #10

              1st draft packaging this, if anyone that know's more wants to test:

              • https://github.com/marcusquinn/cloudron-netbird-app

              Web Design & Development: https://www.evergreen.je
              Technology & Apps: https://www.marcusquinn.com

              1 Reply Last reply
              3
              • marcusquinnM Offline
                marcusquinnM Offline
                marcusquinn
                wrote last edited by
                #11

                Update on the Cloudron NetBird package
                The packaging scaffold at https://github.com/marcusquinn/cloudron-netbird-app is fairly complete -- it uses the combined netbird-server binary behind an internal nginx that consolidates all the path-based routing (gRPC, WebSocket, REST API, dashboard) onto a single HTTP port for Cloudron's reverse proxy.
                What works (in theory -- needs real-world testing):

                • Management API, Signal, Relay, STUN, and Dashboard all in one container
                • Cloudron SSO via the OIDC addon
                • Cloudron's built-in TURN server for NAT traversal relay
                • PostgreSQL via Cloudron addon
                • Backup/restore of all persistent state
                  The one feature that can't work on Cloudron: NetBird's Reverse Proxy (v0.65+)
                  This is NetBird's newer feature that exposes internal services on mesh peers to the public internet with automatic TLS. It requires Traefik with TLS passthrough -- the NetBird proxy container needs to terminate TLS itself. Cloudron's nginx terminates TLS before traffic reaches the app, so there's no way to pass through the raw TLS connection that NetBird's proxy needs.
                  I looked at whether alpine/socat (TCP socket forwarder) could bridge this gap, but it can't -- the problem is Layer 7 (HTTP path routing, gRPC protocol handling, TLS termination order), not Layer 4 (TCP forwarding). socat only does port-to-port TCP forwarding and has no understanding of HTTP paths, gRPC, or WebSocket upgrade headers.
                  This doesn't affect the core VPN functionality at all -- peer-to-peer WireGuard tunnels, NAT traversal, access control, DNS, network routes, and the management dashboard all work fine without it. The reverse proxy is an optional add-on for publicly exposing internal services.

                What's needed next:

                1. Testing on a real Cloudron instance (I haven't done this yet -- the packaging is based on docs and the combined container architecture)
                2. Verifying the internal nginx correctly handles the gRPC h2c proxying that Signal and Management need
                3. End-to-end OIDC flow testing with Cloudron SSO
                4. TURN relay testing for peers behind strict NAT
                  If anyone wants to help test, the repo has a full testing checklist in the README. Would be great to get this into the Cloudron App Store.

                feedback welcome!

                Web Design & Development: https://www.evergreen.je
                Technology & Apps: https://www.marcusquinn.com

                1 Reply Last reply
                8
                • timconsidineT Offline
                  timconsidineT Offline
                  timconsidine
                  App Dev
                  wrote last edited by
                  #12

                  Great work @marcusquinn

                  Will try to test it out, been wanting NetBird, currently running it on a separate VPS

                  I ran into similar issues about routing of traffic when I was packaging Agate+. But I don’t recall the solution (and may not be a solution) - will try to check it out.

                  Indie app dev, scratching my itches, lover of Cloudron PaaS

                  1 Reply Last reply
                  2
                  • marcusquinnM Offline
                    marcusquinnM Offline
                    marcusquinn
                    wrote last edited by
                    #13

                    Related: https://forum.cloudron.io/topic/15109/tls-passthrough-option-for-apps-requiring-end-to-end-tls

                    Web Design & Development: https://www.evergreen.je
                    Technology & Apps: https://www.marcusquinn.com

                    1 Reply Last reply
                    0
                    • timconsidineT Offline
                      timconsidineT Offline
                      timconsidine
                      App Dev
                      wrote last edited by
                      #14

                      Testing on a real Cloudron instance (I haven't done this yet -- the packaging is based on docs and the combined container architecture)

                      I don't know how this is possible - I always need to do multiple builds to get a working package.

                      I started building from @marcusquinn repo.
                      I needed to make some changes. Currently app builds and installs but have hit a circular dependency ("Catch-22") regarding authentication.

                      The Goal: Configure NetBird to use Cloudron's OIDC service as its Identity Provider.

                      The Problem:

                      1. Configuration requires Login: To add Cloudron OIDC as an IdP, I need to log in to the NetBird dashboard (or use the API, which requires a token).
                      2. Initial Login requires Embedded Dex: Since Cloudron OIDC isn't configured yet, I must use the embedded Dex IdP for the first login.
                      3. Embedded Dex Fails: The embedded IdP is configured strictly according to the "combined server" docs (v0.36+). The dashboard loads, redirects to the embedded auth flow, but fails at the final step:
                        • POST /oauth2/token returns 401 Unauthorized .
                        • Browser console shows: storage[oidc.login.default] is empty and Token request failed .
                        • Logs show no specific server-side error, just the 401.

                      The Catch-22: I cannot log in (via embedded Dex) to configure the external IdP (Cloudron OIDC). I cannot configure the external IdP via files/env vars to bypass the broken embedded login.

                      I will try a hack to get past this.

                      Indie app dev, scratching my itches, lover of Cloudron PaaS

                      1 Reply Last reply
                      0
                      • timconsidineT Offline
                        timconsidineT Offline
                        timconsidine
                        App Dev
                        wrote last edited by
                        #15

                        Starting again, fresh start.
                        Will update.

                        Indie app dev, scratching my itches, lover of Cloudron PaaS

                        1 Reply Last reply
                        0
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                        • Login

                        • Don't have an account? Register

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Categories
                        • Recent
                        • Tags
                        • Popular
                        • Bookmarks
                        • Search