mirror of
https://github.com/juanfont/headscale.git
synced 2026-01-11 20:00:28 +01:00
OIDC Tailscale logout prevents future logins - unless node is manually deleted and node ID is incremented #617
Closed
opened 2025-12-29 02:21:14 +01:00 by adam
·
1 comment
No Branch/Tag Specified
main
update_flake_lock_action
gh-pages
kradalby/release-v0.27.2
dependabot/go_modules/golang.org/x/crypto-0.45.0
dependabot/go_modules/github.com/opencontainers/runc-1.3.3
copilot/investigate-headscale-issue-2788
copilot/investigate-visibility-issue-2788
copilot/investigate-issue-2833
copilot/debug-issue-2846
copilot/fix-issue-2847
dependabot/go_modules/github.com/go-viper/mapstructure/v2-2.4.0
dependabot/go_modules/github.com/docker/docker-28.3.3incompatible
kradalby/cli-experiement3
doc/0.26.1
doc/0.25.1
doc/0.25.0
doc/0.24.3
doc/0.24.2
doc/0.24.1
doc/0.24.0
kradalby/build-docker-on-pr
topic/docu-versioning
topic/docker-kos
juanfont/fix-crash-node-id
juanfont/better-disclaimer
update-contributors
topic/prettier
revert-1893-add-test-stage-to-docs
add-test-stage-to-docs
remove-node-check-interval
fix-empty-prefix
fix-ephemeral-reusable
bug_report-debuginfo
autogroups
logs-to-stderr
revert-1414-topic/fix_unix_socket
rename-machine-node
port-embedded-derp-tests-v2
port-derp-tests
duplicate-word-linter
update-tailscale-1.36
warn-against-apache
ko-fi-link
more-acl-tests
fix-typo-standalone
parallel-nolint
tparallel-fix
rerouting
ssh-changelog-docs
oidc-cleanup
web-auth-flow-tests
kradalby-gh-runner
fix-proto-lint
remove-funding-links
go-1.19
enable-1.30-in-tests
0.16.x
cosmetic-changes-integration
tmp-fix-integration-docker
fix-integration-docker
configurable-update-interval
show-nodes-online
hs2021
acl-syntax-fixes
ts2021-implementation
fix-spurious-updates
unstable-integration-tests
mandatory-stun
embedded-derp
prtemplate-fix
v0.28.0-beta.1
v0.27.2-rc.1
v0.27.1
v0.27.0
v0.27.0-beta.2
v0.27.0-beta.1
v0.26.1
v0.26.0
v0.26.0-beta.2
v0.26.0-beta.1
v0.25.1
v0.25.0
v0.25.0-beta.2
v0.24.3
v0.25.0-beta.1
v0.24.2
v0.24.1
v0.24.0
v0.24.0-beta.2
v0.24.0-beta.1
v0.23.0
v0.23.0-rc.1
v0.23.0-beta.5
v0.23.0-beta.4
v0.23.0-beta3
v0.23.0-beta2
v0.23.0-beta1
v0.23.0-alpha12
v0.23.0-alpha11
v0.23.0-alpha10
v0.23.0-alpha9
v0.23.0-alpha8
v0.23.0-alpha7
v0.23.0-alpha6
v0.23.0-alpha5
v0.23.0-alpha4
v0.23.0-alpha4-docker-ko-test9
v0.23.0-alpha4-docker-ko-test8
v0.23.0-alpha4-docker-ko-test7
v0.23.0-alpha4-docker-ko-test6
v0.23.0-alpha4-docker-ko-test5
v0.23.0-alpha-docker-release-test-debug2
v0.23.0-alpha-docker-release-test-debug
v0.23.0-alpha4-docker-ko-test4
v0.23.0-alpha4-docker-ko-test3
v0.23.0-alpha4-docker-ko-test2
v0.23.0-alpha4-docker-ko-test
v0.23.0-alpha3
v0.23.0-alpha2
v0.23.0-alpha1
v0.22.3
v0.22.2
v0.23.0-alpha-docker-release-test
v0.22.1
v0.22.0
v0.22.0-alpha3
v0.22.0-alpha2
v0.22.0-alpha1
v0.22.0-nfpmtest
v0.21.0
v0.20.0
v0.19.0
v0.19.0-beta2
v0.19.0-beta1
v0.18.0
v0.18.0-beta4
v0.18.0-beta3
v0.18.0-beta2
v0.18.0-beta1
v0.17.1
v0.17.0
v0.17.0-beta5
v0.17.0-beta4
v0.17.0-beta3
v0.17.0-beta2
v0.17.0-beta1
v0.17.0-alpha4
v0.17.0-alpha3
v0.17.0-alpha2
v0.17.0-alpha1
v0.16.4
v0.16.3
v0.16.2
v0.16.1
v0.16.0
v0.16.0-beta7
v0.16.0-beta6
v0.16.0-beta5
v0.16.0-beta4
v0.16.0-beta3
v0.16.0-beta2
v0.16.0-beta1
v0.15.0
v0.15.0-beta6
v0.15.0-beta5
v0.15.0-beta4
v0.15.0-beta3
v0.15.0-beta2
v0.15.0-beta1
v0.14.0
v0.14.0-beta2
v0.14.0-beta1
v0.13.0
v0.13.0-beta3
v0.13.0-beta2
v0.13.0-beta1
upstream/v0.12.4
v0.12.4
v0.12.3
v0.12.2
v0.12.2-beta1
v0.12.1
v0.12.0-beta2
v0.12.0-beta1
v0.11.0
v0.10.8
v0.10.7
v0.10.6
v0.10.5
v0.10.4
v0.10.3
v0.10.2
v0.10.1
v0.10.0
v0.9.3
v0.9.2
v0.9.1
v0.9.0
v0.8.1
v0.8.0
v0.7.1
v0.7.0
v0.6.1
v0.6.0
v0.5.2
v0.5.1
v0.5.0
v0.4.0
v0.3.6
v0.3.5
v0.3.4
v0.3.3
v0.3.2
v0.3.1
v0.3.0
v0.2.2
v0.2.1
v0.2.0
v0.1.1
v0.1.0
Labels
Clear labels
CLI
DERP
DNS
Nix
OIDC
SSH
bug
database
documentation
duplicate
enhancement
faq
good first issue
grants
help wanted
might-come
needs design doc
needs investigation
no-stale-bot
out of scope
performance
policy 📝
pull-request
question
regression
routes
stale
tags
tailscale-feature-gap
well described ❤️
wontfix
Mirrored from GitHub Pull Request
No Label
bug
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/headscale#617
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @felixn-unity on GitHub (Jan 29, 2024).
Bug description and To Reproduce
After intial OIDC login using Okta and Ubuntu client - all is good and connected
9 | parsec-sto-p01 | parsec-sto-p01 | [eH3Gg] | [O5xet] | felix | 100.64.0.1, fd7a:115c:a1e0::1 | false | 2024-01-29 18:39:35 | 2024-07-27 18:39:35 | online | no
When using "tailscale logout" node is set to "expired" and "offline" - all is good and disconnected
9 | parsec-sto-p01 | parsec-sto-p01 | [eH3Gg] | [O5xet] | felix | 100.64.0.1, fd7a:115c:a1e0::1 | false | 2024-01-29 18:39:51 | 2024-01-29 18:39:52 | offline | yes
Trying to reconnect with "tailscale up --login-server https://cloud.xxxx.yy --reset" - Web OIDC flow is ok, Ubuntu client just hangs
headscale-1 | 2024-01-29T18:41:42Z DBG go/src/headscale/hscontrol/oidc.go:102 > Received oidc register call machine_key=mkey:787dc6830b29f29b5c78c1e5e9678be22b5675109e77a372defdd2518a144d50 ok=true
headscale-1 | 2024-01-29T18:41:42Z DBG Redirecting to https://trial-5107038.okta.com/oauth2/v1/authorize?client_id=0oab2ph6iz3xPp6Xs697&redirect_uri=https%3A%2F%2Fcloud.xxxx.yy%2Foidc%2Fcallback&response_type=code&scope=openid+profile+email&state=02f3fa1ce4075237cf69d9fd130e1893 for authentication
headscale-1 | 2024-01-29T18:41:42Z DBG go/src/headscale/hscontrol/oidc.go:102 > Received oidc register call machine_key=mkey:787dc6830b29f29b5c78c1e5e9678be22b5675109e77a372defdd2518a144d50 ok=true
headscale-1 | 2024-01-29T18:41:42Z DBG Redirecting to https://trial-5107038.okta.com/oauth2/v1/authorize?client_id=0oab2ph6iz3xPp6Xs697&redirect_uri=https%3A%2F%2Fcloud.xxxx.yy%2Foidc%2Fcallback&response_type=code&scope=openid+profile+email&state=cd5603f60cbc34ecaa4c7429ffb1d620 for authentication
headscale-1 | 2024-01-29T18:41:43Z ERR noise upgrade failed error="noise handshake failed: decrypting machine key: chacha20poly1305: message authentication failed"
headscale-1 | 2024/01/29 18:41:43 http: response.WriteHeader on hijacked connection from github.com/juanfont/headscale/hscontrol.(*Headscale).NoiseUpgradeHandler (noise.go:84)
headscale-1 | 2024/01/29 18:41:43 http: response.Write on hijacked connection from fmt.Fprintln (print.go:305)
headscale-1 | 2024-01-29T18:41:46Z DBG New noise client cap_ver=85 handler=/key
headscale-1 | 2024-01-29T18:41:46Z DBG successfully refreshed node expiresAt="2024-07-27 18:41:46.737673873 +0000 UTC m=+15553611.235251311" node=parsec-sto-p01
headscale-1 | 2024-01-29T18:41:52Z DBG New noise client cap_ver=85 handler=/key
headscale-1 | 2024-01-29T18:41:57Z DBG New noise client cap_ver=85 handler=/key
9 | parsec-sto-p01 | parsec-sto-p01 | [eH3Gg] | [O5xet] | felix | 100.64.0.1, fd7a:115c:a1e0::1 | false | 2024-01-29 18:39:51 | 2024-07-27 18:41:46 | offline | no
"docker exec headscale-headscale-1 headscale nodes delete -i 9 --force"
"systemctl restart tailscaled.service && tailscale up --login-server https://cloud.xxxx.yy"
9 | parsec-sto-p01 | parsec-sto-p01 | [eH3Gg] | [FgWr6] | felix | 100.64.0.1, fd7a:115c:a1e0::1 | false | 2024-01-29 18:39:51 | 2024-07-27 18:44:09 | offline | no
Still no go...
"docker exec headscale-headscale-1 headscale nodes delete -i 9 --force"
"systemctl restart tailscaled.service && tailscale up --login-server https://cloud.xxxx.yy"
10 | parsec-sto-p01 | parsec-sto-p01 | [eH3Gg] | [Csd42] | felix | 100.64.0.1, fd7a:115c:a1e0::1 | false | 2024-01-29 18:45:54 | 2024-07-27 18:45:50 | online | no
Then all is good and connected, so it seems like it will only work when node ID is different
Environment
I can see docker and reverse proxy is not supported, I will try and replicate it native - but for now, if anyone have any clues do let me know :)
Docker "image: headscale/headscale:0.23.0-alpha3"
Client Ubuntu and Tailscale client version 1.58.2
@felixn-unity commented on GitHub (Jan 29, 2024):
Ok! this seems to work fine on Native version..Great!
Felix