tailscale / tailscale/tailscale

Tailscale CLI has poor UX with expiring keys

Open
#4,854 14 comments 17 reactions 0 assignees View on GitHub
bug cli L5 All users P2 Aggravating T2 Visual Polish
Dominant language
Go
Stars
36.5k
Forks
3.2k
Avg merge
2d 3h
Merged PRs (30d)
123

Description

Via https://twitter.com/QuinnyPig/status/1536835238327746561

If you `tailscale up` in a network, eventually the key will expire. Being a CLI rather than a persistent GUI, `tailscale` has no way of proactively telling you that expiry is nigh. However, even if you know that expiry is coming, the UX isn't great:

- [ ] `tailscale status` doesn't warn you that expiry is imminent, or that expiry has happened. We could add a health report for that.
- [ ] `tailscale up` when you're in the "your key expires soon" window doesn't reauth, it just silently exits after concluding there's nothing to do. You can `--force-reauth` to actually go through the auth again, but we don't tell you that anywhere.

There's limited things we can achieve with a non-persistent CLI, but here's a couple we can do:

- [ ] Add a health report about key expiry, so that `tailscale status` and our debugging machinery surfaces it as an issue with the system
- [ ] Add a nudge to `tailscale up` where, if you're still authed but the key is up for expiry soon, we print "you're still authed, but your key's up for renewal soon. Use `--force-reauth` to do so now". Or, since there should be no downside to reauthing eagerly, maybe we make `tailscale up` automatically `--force-reauth` when we're in the window for reauth warnings?

cc @bradfitz @maisem for thoughts

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.