tailscale/cmd/tta
Brad Fitzpatrick c436dec43c tstest, cmd/tta: add Tailscale SSH end-to-end VM test
Add TestTailscaleSSH to tstest/natlab/vmtest, exercising the Tailscale
SSH server (tailscale up --ssh, not a system sshd) end to end: an
Ubuntu client node SSHes over the tailnet into an Ubuntu server node
as both root and a non-root user, and into a gokrazy node.

The gokrazy sessions exercise the gokrazy special cases in the SSH
code: util/osuser hard-codes the login shell to serial-busybox ash and
synthesizes a root user when lookup fails (so any username works and
becomes root, unlike Ubuntu where nonexistent users are rejected), and
the incubator's findSU refuses su on gokrazy, handling sessions
in-process.

To support this, testcontrol gains an SSHPolicy field that's sent in
MapResponses along with the CapabilitySSH node capability, tta's /up
handler accepts an ssh=true parameter, and vmtest gains a
TailscaleSSH node option that wires the two together with a
permissive any-principal policy.

Updates tailscale/corp#44813
Updates #13038

Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
Change-Id: I3f6b9c41a72e05d8c94dd7f6ab1937cf24b81c92
2026-07-13 15:04:51 -07:00
..
bypass_linux.go tstest/natlab/{vmtest,vnet}, cmd/tta: add TestExitNode 2026-04-27 16:54:20 -07:00
bypass_other.go tstest/natlab/{vmtest,vnet}, cmd/tta: add TestExitNode 2026-04-27 16:54:20 -07:00
fw_linux.go types/ptr: deprecate ptr.To, use Go 1.26 new 2026-03-05 20:13:18 -08:00
ipassign_darwin.go tstest/natlab/vmtest: add macOS VM snapshot caching for fast test starts 2026-04-29 08:17:13 -07:00
ipassign_other.go tstest/natlab/vmtest: add macOS VM snapshot caching for fast test starts 2026-04-29 08:17:13 -07:00
restart_tailscaled_linux.go tstest/natlab/vmtest: add TestDiscoKeyChange 2026-04-29 12:58:00 -07:00
tta.go tstest, cmd/tta: add Tailscale SSH end-to-end VM test 2026-07-13 15:04:51 -07:00
wgserver_linux.go go.mod,wgengine/magicsock: pull wireguard-go fix for roaming endpoints (#20118) 2026-06-12 10:50:35 -07:00