[PR #1118] Integrate Rosenpass #3006

Open
opened 2025-11-20 08:04:39 -05:00 by saavagebueno · 0 comments
Owner

Original Pull Request: https://github.com/netbirdio/netbird/pull/1118

State: closed
Merged: No


Describe your changes

This PR aims to integrate Rosenpass with NetBird. It adds a manager for Rosenpass that starts a Rosenpass server and handles the managed peers. It uses the cunicu/go-rosenpass implementation. Rosenpass will then negotiate a pre shared-key every 2 minutes and apply it to the wireguard connection.

The Feature can be enabled by setting [a flag] during the netbird up command [currently it uses a env variable NB_RP_ENABLED].

If two peers are both support and have the Rosenpass feature enabled they will create a post-quantum secure connection. If one of the peers or both don't have this feature enabled or are running an older version that does not have this feature yet, the NetBird client will fallback to plain Wireguard connection without pre-shared keys for those connections (keeping Rosenpass negotiation for the rest).

Additionally this PR includes an update of all Github Actions workflows to use go version 1.21.0 as this is a requirement for the integration.

Checklist

  • Is it a bug fix
  • Is a typo/documentation fix
  • Is a feature enhancement
  • It is a refactor
  • Created tests that fail without the change (if possible)
  • Extended the README / documentation, if necessary
**Original Pull Request:** https://github.com/netbirdio/netbird/pull/1118 **State:** closed **Merged:** No --- ## Describe your changes This PR aims to integrate [Rosenpass](https://rosenpass.eu) with NetBird. It adds a manager for Rosenpass that starts a Rosenpass server and handles the managed peers. It uses the [cunicu/go-rosenpass](https://github.com/cunicu/go-rosenpass) implementation. Rosenpass will then negotiate a pre shared-key every 2 minutes and apply it to the wireguard connection. The Feature can be enabled by setting [a flag] during the `netbird up` command [currently it uses a env variable `NB_RP_ENABLED`]. If two peers are both support and have the Rosenpass feature enabled they will create a post-quantum secure connection. If one of the peers or both don't have this feature enabled or are running an older version that does not have this feature yet, the NetBird client will fallback to plain Wireguard connection without pre-shared keys for those connections (keeping Rosenpass negotiation for the rest). Additionally this PR includes an update of all Github Actions workflows to use go version 1.21.0 as this is a requirement for the integration. ## Issue ticket number and link ### Checklist - [ ] Is it a bug fix - [ ] Is a typo/documentation fix - [x] Is a feature enhancement - [ ] It is a refactor - [ ] Created tests that fail without the change (if possible) - [ ] Extended the README / documentation, if necessary
saavagebueno added the pull-request label 2025-11-20 08:04:39 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: SVI/netbird#3006