tailscale/cmd
Brad Fitzpatrick 7fac0175c0 cmd/derper, derp/derphttp: support, generate self-signed IP address certs
For people who can't use LetsEncrypt because it's banned.

Per https://github.com/tailscale/tailscale/issues/11776#issuecomment-2520955317

This does two things:

1) if you run derper with --certmode=manual and --hostname=$IP_ADDRESS
   we previously permitted, but now we also:
   * auto-generate the self-signed cert for you if it doesn't yet exist on disk
   * print out the derpmap configuration you need to use that
     self-signed cert

2) teaches derp/derphttp's derp dialer to verify the signature of
   self-signed TLS certs, if so declared in the existing
   DERPNode.CertName field, which previously existed for domain fronting,
   separating out the dial hostname from how certs are validates,
   so it's not overloaded much; that's what it was meant for.

Fixes #11776

Change-Id: Ie72d12f209416bb7e8325fe0838cd2c66342c5cf
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2025-03-07 05:36:55 -08:00
..
addlicense all: fix golangci-lint errors 2025-01-07 13:05:37 -08:00
build-webclient client/web: precompress assets 2023-12-07 20:57:31 -05:00
checkmetrics cmd/checkmetrics: add command for checking metrics against kb 2024-12-02 10:30:46 +01:00
cloner cmd/cloner, cmd/viewer, util/codegen: add support for aliases of cloneable types 2024-08-23 15:43:40 -05:00
connector-gen cmd/connector-gen: add helper tool for wide app connector configurations 2023-12-15 09:29:42 -08:00
containerboot cmd/containerboot: fix nil pointer exception (#15090) 2025-02-27 23:05:04 +00:00
derper cmd/derper, derp/derphttp: support, generate self-signed IP address certs 2025-03-07 05:36:55 -08:00
derpprobe prober: support filtering regions by region ID in addition to code 2025-01-10 12:33:19 -06:00
dist release/dist/qnap: add qnap target builder 2024-04-22 17:43:28 -04:00
get-authkey cmd,tsnet,internal/client: create internal shim to deprecated control plane API 2025-02-18 10:23:04 -06:00
gitops-pusher cmd/gitops-pusher: log error details when unable to fetch ACL ETag 2025-02-18 14:29:14 -06:00
hello cmd/hello: display native ipv4 (#15191) 2025-03-04 08:47:35 -07:00
k8s-nameserver cmd/k8s-nameserver: fix AAAA record query response (#12412) 2024-06-10 17:57:22 +01:00
k8s-operator cmd/k8s-operator: ensure HA Ingress can operate in multicluster mode. (#15157) 2025-03-06 23:13:10 +00:00
mkmanifest cmd/mkmanifest, cmd/tailscale, cmd/tailscaled: remove Windows arm32 resources from OSS 2023-03-01 15:45:12 -07:00
mkpkg go.mod: upgrade nfpm to v2 (#8786) 2023-08-03 13:00:45 -07:00
mkversion version/mkversion: open-source version generation logic 2023-02-18 05:21:05 +00:00
nardump
natc cmd/natc: remove speculative tuning from natc 2025-02-06 16:17:44 -08:00
netlogfmt all: use Go 1.22 range-over-int 2024-04-16 15:32:38 -07:00
nginx-auth tailcfg,all: add and use Node.IsTagged() 2023-03-13 08:44:25 -07:00
pgproxy all: use new LocalAPI client package location 2025-02-05 14:41:42 -08:00
printdep cmd/printdep: print correct toolchain URL 2023-02-11 17:57:36 +00:00
proxy-to-grafana all: use new LocalAPI client package location 2025-02-05 14:41:42 -08:00
sniproxy all: use new LocalAPI client package location 2025-02-05 14:41:42 -08:00
speedtest
ssh-auth-none-demo ssh,tempfork/gliderlabs/ssh: replace github.com/tailscale/golang-x-crypto/ssh with golang.org/x/crypto/ssh 2025-01-31 16:36:39 -06:00
stunc cmd/stunc: enforce read timeout deadline (#14309) 2024-12-06 14:27:52 -05:00
stund go.toolchain.branch: update to Go 1.24 (#15016) 2025-02-19 10:55:49 -08:00
stunstamp cmd/stunstamp: add protocol context to timeout logs (#13422) 2024-09-09 18:42:13 -07:00
sync-containers all: adjust some build tags for plan9 2023-08-24 15:42:35 -07:00
systray cmd/systray: add cmd/systray back as a small client/systray wrapper 2025-01-06 16:49:34 -08:00
tailscale go.toolchain.branch: update to Go 1.24 (#15016) 2025-02-19 10:55:49 -08:00
tailscaled go.toolchain.branch: update to Go 1.24 (#15016) 2025-02-19 10:55:49 -08:00
testcontrol all: use Go 1.22 range-over-int 2024-04-16 15:32:38 -07:00
testwrapper cmd/testwrapper: Display package-level output 2025-03-04 16:01:28 +00:00
tl-longchain all: use new LocalAPI client package location 2025-02-05 14:41:42 -08:00
tsconnect go.toolchain.branch: update to Go 1.24 (#15016) 2025-02-19 10:55:49 -08:00
tsidp cmd/tsidp: use constant time comparison for client_id/secret (#15222) 2025-03-06 08:52:35 -08:00
tsshd
tta all: use new LocalAPI client package location 2025-02-05 14:41:42 -08:00
viewer cmd/viewer,all: consistently use "read-only" instead of "readonly" 2025-01-14 08:26:56 -08:00
vnet tstest/natlab/vnet: add start of IPv6 support 2024-08-24 18:02:38 -07:00
xdpderper all: add test for package comments, fix, add comments as needed 2024-07-10 09:57:00 -07:00