Skip to content

Improve registration protocol implementation and switch to NodeKey as main identifier #725

Merged
juanfont merged 14 commits intomainfrom
switch-to-db-d
Aug 12, 2022
Merged

Improve registration protocol implementation and switch to NodeKey as main identifier #725
juanfont merged 14 commits intomainfrom
switch-to-db-d

Conversation

@juanfont
Copy link
Copy Markdown
Owner

@juanfont juanfont commented Aug 10, 2022

This PR lays the groundwork for the implementation of the TS2021 protocol (Tailscale control v2).

Under the Noise protocol the NaCl boxes encrypted with the MachineKey are dropped in favour of Noise sessions. MachineKey loses importance across the code base, and when using Noise they are not sent at all.

In headscale we were using the stripped version of the public MachineKey as a sort-of ID, for the iterative login process (including the registrationCache used in the web+CLI and the OIDC flows).

This PR addresses that, switching to NodeKey as identifier.

In addition to it, it also improves a bit the handling of the registration process (and reduces the impact caused by #727 (although does not fully resolve it).

@juanfont juanfont requested a review from kradalby as a code owner August 10, 2022 14:01
@juanfont juanfont changed the title [DRAFT] Switch to nodekey as main node identifier Improve client registration protocol implementation and switch to NodeKey as main client identifier Aug 11, 2022
@juanfont juanfont changed the title Improve client registration protocol implementation and switch to NodeKey as main client identifier Improve registration protocol implementation and switch to NodeKey as main identifier Aug 11, 2022
Comment thread api.go Outdated
Comment thread api.go
Comment thread api.go
juanfont and others added 5 commits August 12, 2022 09:02
Co-authored-by: Kristoffer Dalby <kradalby@kradalby.no>
Co-authored-by: Kristoffer Dalby <kradalby@kradalby.no>
Co-authored-by: Kristoffer Dalby <kradalby@kradalby.no>
@juanfont juanfont merged commit 09cd7ba into main Aug 12, 2022
@juanfont juanfont deleted the switch-to-db-d branch August 12, 2022 07:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants