[PR #2260] [MERGED] feat: add verify client config for embedded DERP #2574

Closed
opened 2025-12-29 03:21:52 +01:00 by adam · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/juanfont/headscale/pull/2260
Author: @seiuneko
Created: 11/27/2024
Status: Merged
Merged: 6/18/2025
Merged by: @kradalby

Base: mainHead: embedded-derp-verify-client


📝 Commits (10+)

  • 55980d6 feat: add verify client config for embedded DERP
  • 1541fa4 refactor: embedded DERP no longer verify clients via HTTP
  • bec28b3 refactor: use http.HandlerFunc for type definition
  • c9542bf refactor: some renaming and restructuring
  • 103b069 chore: some renaming and fix lint
  • d604663 test: fix TestDERPVerifyEndpoint
  • 07a3314 test: add verify clients integration test for embedded DERP server
  • d626f43 fix: apply code review suggestions
  • 2cd8cab chore: merge upstream changes
  • 2e3662b Merge branch 'sync-upstream' into embedded-derp-verify-client

📊 Changes

10 files changed (+181 additions, -49 deletions)

View changed files

📝 CHANGELOG.md (+2 -0)
📝 config-example.yaml (+3 -0)
📝 hscontrol/app.go (+8 -0)
📝 hscontrol/derp/server/derp_server.go (+37 -1)
📝 hscontrol/handlers.go (+13 -14)
📝 hscontrol/types/config.go (+3 -0)
📝 integration/derp_verify_endpoint_test.go (+56 -31)
📝 integration/embedded_derp_test.go (+28 -3)
📝 integration/tailscale.go (+2 -0)
📝 integration/tsic/tsic.go (+29 -0)

📄 Description

  • have read the CONTRIBUTING.md file
  • raised a GitHub issue or discussed it on the projects chat beforehand
  • added unit tests
  • added integration tests
  • updated documentation if needed
  • updated CHANGELOG.md

Added verify_client_url and verify_client_url_fail_open configurations to support client verification in the embedded DERP server.


🔄 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/juanfont/headscale/pull/2260 **Author:** [@seiuneko](https://github.com/seiuneko) **Created:** 11/27/2024 **Status:** ✅ Merged **Merged:** 6/18/2025 **Merged by:** [@kradalby](https://github.com/kradalby) **Base:** `main` ← **Head:** `embedded-derp-verify-client` --- ### 📝 Commits (10+) - [`55980d6`](https://github.com/juanfont/headscale/commit/55980d64278174ac68d127cfc27ab5df5ec5a42b) feat: add verify client config for embedded DERP - [`1541fa4`](https://github.com/juanfont/headscale/commit/1541fa4d8ab95c14cb2a0a98d6f3fa9b405cf20d) refactor: embedded DERP no longer verify clients via HTTP - [`bec28b3`](https://github.com/juanfont/headscale/commit/bec28b31da6131a4437b2ceedca0571f25e38788) refactor: use `http.HandlerFunc` for type definition - [`c9542bf`](https://github.com/juanfont/headscale/commit/c9542bf333d7c1d91348711bf3d45f5c60d75a1f) refactor: some renaming and restructuring - [`103b069`](https://github.com/juanfont/headscale/commit/103b069f1fec9703305fa0c1cd32db647b954286) chore: some renaming and fix lint - [`d604663`](https://github.com/juanfont/headscale/commit/d604663121b7be049d73a6cf47e2e8c0f36456bd) test: fix TestDERPVerifyEndpoint - [`07a3314`](https://github.com/juanfont/headscale/commit/07a3314059e9ab7714e8106452a5a275b70d8d67) test: add verify clients integration test for embedded DERP server - [`d626f43`](https://github.com/juanfont/headscale/commit/d626f43889b7b57fa71f29cc39f1de3730381dc3) fix: apply code review suggestions - [`2cd8cab`](https://github.com/juanfont/headscale/commit/2cd8cab52af43f9be6b7f6933783feb6b4908dd6) chore: merge upstream changes - [`2e3662b`](https://github.com/juanfont/headscale/commit/2e3662ba680831a0e9dfcd930a15f32abd05cbcb) Merge branch 'sync-upstream' into embedded-derp-verify-client ### 📊 Changes **10 files changed** (+181 additions, -49 deletions) <details> <summary>View changed files</summary> 📝 `CHANGELOG.md` (+2 -0) 📝 `config-example.yaml` (+3 -0) 📝 `hscontrol/app.go` (+8 -0) 📝 `hscontrol/derp/server/derp_server.go` (+37 -1) 📝 `hscontrol/handlers.go` (+13 -14) 📝 `hscontrol/types/config.go` (+3 -0) 📝 `integration/derp_verify_endpoint_test.go` (+56 -31) 📝 `integration/embedded_derp_test.go` (+28 -3) 📝 `integration/tailscale.go` (+2 -0) 📝 `integration/tsic/tsic.go` (+29 -0) </details> ### 📄 Description <!-- Headscale is "Open Source, acknowledged contribution", this means that any contribution will have to be discussed with the Maintainers before being submitted. This model has been chosen to reduce the risk of burnout by limiting the maintenance overhead of reviewing and validating third-party code. Headscale is open to code contributions for bug fixes without discussion. If you find mistakes in the documentation, please submit a fix to the documentation. --> <!-- Please tick if the following things apply. You… --> - [x] have read the [CONTRIBUTING.md](./CONTRIBUTING.md) file - [ ] raised a GitHub issue or discussed it on the projects chat beforehand - [ ] added unit tests - [x] added integration tests - [ ] updated documentation if needed - [ ] updated CHANGELOG.md <!-- If applicable, please reference the issue using `Fixes #XXX` and add tests to cover your new code. --> Added `verify_client_url` and `verify_client_url_fail_open` configurations to support client verification in the embedded DERP server. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
adam added the pull-request label 2025-12-29 03:21:52 +01:00
adam closed this issue 2025-12-29 03:21:52 +01:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/headscale#2574