[PR #4987] [MERGED] Feature/ssh fine grained access nmap #24671

Open
opened 2026-08-05 06:08:59 -04:00 by saavagebueno · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/netbirdio/netbird/pull/4987
Author: @pascal-fischer
Created: 12/22/2025
Status: Merged
Merged: 12/23/2025
Merged by: @pascal-fischer

Base: feature/ssh-fine-grained-accessHead: feature/ssh-fine-grained-access-nmap


📝 Commits (10+)

  • 3b19e17 add api to store layer
  • bb7069d fix api response on empty groups
  • 5752bc6 add happy path for network map calc
  • cfcdae5 Merge branch 'feature/ssh-fine-grained-access' into feature/ssh-fine-grained-access-nmap
  • f6c0e77 simplify
  • 6b919d7 filter for wildcard
  • 9daabc0 handle legacy policies
  • 3f01f90 extract wildcard and all user generation
  • a1870ee handle legacy ssh configs
  • 96ae60b update account peers on user update

📊 Changes

18 files changed (+566 additions, -71 deletions)

View changed files

📝 client/ssh/auth/auth.go (+16 -2)
📝 client/ssh/auth/auth_test.go (+147 -0)
📝 management/internals/controllers/network_map/controller/controller.go (+6 -4)
📝 management/internals/shared/grpc/conversion.go (+51 -4)
📝 management/internals/shared/grpc/server.go (+1 -1)
📝 management/server/account.go (+11 -13)
📝 management/server/account_test.go (+1 -1)
📝 management/server/http/handlers/peers/peers_handler.go (+1 -1)
📝 management/server/peer.go (+2 -2)
📝 management/server/policy_test.go (+16 -16)
📝 management/server/store/sql_store.go (+6 -3)
📝 management/server/types/account.go (+102 -5)
📝 management/server/types/account_test.go (+187 -0)
📝 management/server/types/network.go (+2 -0)
📝 management/server/types/networkmap_golden_test.go (+9 -9)
📝 management/server/types/policy.go (+1 -1)
📝 management/server/user.go (+3 -5)
📝 management/server/user_test.go (+4 -4)

📄 Description

Describe your changes

Stack

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)

By submitting this pull request, you confirm that you have read and agree to the terms of the Contributor License Agreement.

Documentation

Select exactly one:

  • I added/updated documentation for this change
  • Documentation is not needed for this change (explain why)

Docs PR URL (required if "docs added" is checked)

Paste the PR link from https://github.com/netbirdio/docs here:

https://github.com/netbirdio/docs/pull/__

Summary by CodeRabbit

  • New Features

    • Added SSH authorization system with wildcard support for flexible access management
    • Introduced group-based SSH authentication capabilities enabling group-level access control
  • Improvements

    • Enhanced peer network mapping to include SSH configuration and authorization data
    • Improved consistency in peer network updates when user group memberships and policies change

✏️ Tip: You can customize this high-level summary in your review settings.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/netbirdio/netbird/pull/4987 **Author:** [@pascal-fischer](https://github.com/pascal-fischer) **Created:** 12/22/2025 **Status:** ✅ Merged **Merged:** 12/23/2025 **Merged by:** [@pascal-fischer](https://github.com/pascal-fischer) **Base:** `feature/ssh-fine-grained-access` ← **Head:** `feature/ssh-fine-grained-access-nmap` --- ### 📝 Commits (10+) - [`3b19e17`](https://github.com/netbirdio/netbird/commit/3b19e177898bab3fac850438d35b129465ac9e1f) add api to store layer - [`bb7069d`](https://github.com/netbirdio/netbird/commit/bb7069d1f415faf49c1f8ad69e194d3c8f198452) fix api response on empty groups - [`5752bc6`](https://github.com/netbirdio/netbird/commit/5752bc6477c21f3d56776e1f64ce4cf33e2dd667) add happy path for network map calc - [`cfcdae5`](https://github.com/netbirdio/netbird/commit/cfcdae523bed3f370135f480542ae1f959abec9a) Merge branch 'feature/ssh-fine-grained-access' into feature/ssh-fine-grained-access-nmap - [`f6c0e77`](https://github.com/netbirdio/netbird/commit/f6c0e7777b26e00cf20e8b95ecd994457ea1e5b6) simplify - [`6b919d7`](https://github.com/netbirdio/netbird/commit/6b919d7cf7f46ce8fa1471522662a086a426e19c) filter for wildcard - [`9daabc0`](https://github.com/netbirdio/netbird/commit/9daabc0d882a03aa8a6fcf7ccf0d84741d14318d) handle legacy policies - [`3f01f90`](https://github.com/netbirdio/netbird/commit/3f01f90a0d391267dc7637086c8dcac8c19d2d4f) extract wildcard and all user generation - [`a1870ee`](https://github.com/netbirdio/netbird/commit/a1870ee58acf2cd23263e3759ef08178afbc0161) handle legacy ssh configs - [`96ae60b`](https://github.com/netbirdio/netbird/commit/96ae60b1b34df4f0e2afc44608db965a77512c4f) update account peers on user update ### 📊 Changes **18 files changed** (+566 additions, -71 deletions) <details> <summary>View changed files</summary> 📝 `client/ssh/auth/auth.go` (+16 -2) 📝 `client/ssh/auth/auth_test.go` (+147 -0) 📝 `management/internals/controllers/network_map/controller/controller.go` (+6 -4) 📝 `management/internals/shared/grpc/conversion.go` (+51 -4) 📝 `management/internals/shared/grpc/server.go` (+1 -1) 📝 `management/server/account.go` (+11 -13) 📝 `management/server/account_test.go` (+1 -1) 📝 `management/server/http/handlers/peers/peers_handler.go` (+1 -1) 📝 `management/server/peer.go` (+2 -2) 📝 `management/server/policy_test.go` (+16 -16) 📝 `management/server/store/sql_store.go` (+6 -3) 📝 `management/server/types/account.go` (+102 -5) 📝 `management/server/types/account_test.go` (+187 -0) 📝 `management/server/types/network.go` (+2 -0) 📝 `management/server/types/networkmap_golden_test.go` (+9 -9) 📝 `management/server/types/policy.go` (+1 -1) 📝 `management/server/user.go` (+3 -5) 📝 `management/server/user_test.go` (+4 -4) </details> ### 📄 Description ## Describe your changes ## Issue ticket number and link ## Stack <!-- branch-stack --> ### 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) > By submitting this pull request, you confirm that you have read and agree to the terms of the [Contributor License Agreement](https://github.com/netbirdio/netbird/blob/main/CONTRIBUTOR_LICENSE_AGREEMENT.md). ## Documentation Select exactly one: - [ ] I added/updated documentation for this change - [x] Documentation is **not needed** for this change (explain why) ### Docs PR URL (required if "docs added" is checked) Paste the PR link from https://github.com/netbirdio/docs here: https://github.com/netbirdio/docs/pull/__ <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Added SSH authorization system with wildcard support for flexible access management * Introduced group-based SSH authentication capabilities enabling group-level access control * **Improvements** * Enhanced peer network mapping to include SSH configuration and authorization data * Improved consistency in peer network updates when user group memberships and policies change <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai --> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
saavagebueno added the pull-request label 2026-08-05 06:08:59 -04:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: DYNR/netbird#24671