blob: 338e3736adcb3bbeb5e7d94152fa4d07a5ed3e7b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
{lib, ...}: {
resource.tailscale_acl.default = {
acl = toString (builtins.toJSON {
tagOwners = let
me = ["getchoo@github"];
tags = map (name: "tag:${name}") ["server" "personal"];
in
lib.genAttrs tags (_: me);
acls = let
mkAcl = action: src: dst: {inherit action src dst;};
in [
(mkAcl "accept" ["tag:personal"] ["*:*"])
(mkAcl "accept" ["tag:server"] ["tag:server:*"])
];
ssh = let
mkSshAcl = action: src: dst: users: {inherit action src dst users;};
in [
(mkSshAcl "accept" ["tag:personal"] ["tag:server" "tag:personal"] ["autogroup:nonroot" "root"])
];
});
};
}
|