You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailscale/ipn
Aaron Klotz 9ebb5d4205 ipn, paths: ensure that the state directory for Windows has the correct perms
ProgramData has a permissive ACL. For us to safely store machine-wide
state information, we must set a more restrictive ACL on our state directory.
We set the ACL so that only talescaled's user (ie, LocalSystem) and the
Administrators group may access our directory.

We must include Administrators to ensure that logs continue to be easily
accessible; omitting that group would force users to use special tools to
log in interactively as LocalSystem, which is not ideal.

(Note that the ACL we apply matches the ACL that was used for LocalSystem's
AppData\Local).

There are two cases where we need to reset perms: One is during migration
from the old location to the new. The second case is for clean installations
where we are creating the file store for the first time.

Updates #2856

Signed-off-by: Aaron Klotz <aaron@tailscale.com>
3 years ago
..
ipnlocal tailcfg, health: add way for control plane to add problems to health check 3 years ago
ipnserver logpolicy: don't use C:\ProgramData use for tailscale-ipn GUI's log dir 3 years ago
ipnstate cmd/tailscale: fix "tailscale ip $self-host-hostname" 3 years ago
localapi client/tailscale,ipn/localapi: warn on tailscale/tailscaled version skew 3 years ago
policy ipn/policy: mark peerapi4 and peerapi6 as interesting services 3 years ago
backend.go ipnlocal: accept a new opts.UpdatePrefs field. 3 years ago
doc.go Move Linux client & common packages into a public repo. 4 years ago
fake_test.go ipn{,/ipnlocal}, cmd/tailscale/cli: don't check pref reverts on initial up 3 years ago
handle.go ipn: another controlplane synonym 3 years ago
message.go ipn: allow b to be nil in NewBackendServer 3 years ago
message_test.go ipn: allow b to be nil in NewBackendServer 3 years ago
prefs.go ipn: another controlplane synonym 3 years ago
prefs_clone.go cmd/cloner: add Clone context to regen struct assignments 3 years ago
prefs_test.go ipn, etc: use controlplane.tailscale.com 3 years ago
store.go ipn, paths: ensure that the state directory for Windows has the correct perms 3 years ago
store_test.go Add tstest.PanicOnLog(), and fix various problems detected by this. 4 years ago