mirror of
https://github.com/tailscale/tailscale.git
synced 2026-09-15 07:20:36 -04:00
LetsEncrypt announced its new "Generation Y" root hierarchy on 2025-11-24 and switched its default ACME profile to issue from the new roots in May 2026. Our baked-in fallback root store only contained the Generation X roots (ISRG Root X1 and X2), so chains terminating at the new ISRG Root YE (ECDSA P-384) or ISRG Root YR (RSA 4096) roots failed to verify when the system roots were also missing them. Add both new self-signed roots, fetched from https://letsencrypt.org/certificates/ (valid 2025-09-03 to 2045-09-02). Also add a live network test, run by default in CI only (or with --run-live-lets-encrypt-test), that verifies the baked-in roots alone are sufficient to validate LetsEncrypt's per-root test endpoints for X1, X2, YE, and YR. Fixes #20527 Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com> Change-Id: Ic69076d8ae5aae08db167095745e92c53357afe3