mirror of
https://github.com/juanfont/headscale.git
synced 2025-11-20 01:40:21 -05:00
Document how to restrict access to exit nodes per user/group
Updates: #2855 Ref: #2784
This commit is contained in:
committed by
nblock
parent
21e3f2598d
commit
abed534628
@@ -216,6 +216,39 @@ nodes.
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Restrict access to exit nodes per user or group
|
||||||
|
|
||||||
|
A user can use _any_ of the available exit nodes with `autogroup:internet`. Alternatively, the ACL snippet below assigns
|
||||||
|
each user a specific exit node while hiding all other exit nodes. The user `alice` can only use exit node `exit1` while
|
||||||
|
user `bob` can only use exit node `exit2`.
|
||||||
|
|
||||||
|
```json title="Assign each user a dedicated exit node"
|
||||||
|
{
|
||||||
|
"hosts": {
|
||||||
|
"exit1": "100.64.0.1/32",
|
||||||
|
"exit2": "100.64.0.2/32"
|
||||||
|
},
|
||||||
|
"acls": [
|
||||||
|
{
|
||||||
|
"action": "accept",
|
||||||
|
"src": ["alice@"],
|
||||||
|
"dst": ["exit1:*"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"action": "accept",
|
||||||
|
"src": ["bob@"],
|
||||||
|
"dst": ["exit2:*"]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
!!! warning
|
||||||
|
|
||||||
|
- The above implementation is Headscale specific and will likely be removed once [support for
|
||||||
|
`via`](https://github.com/juanfont/headscale/issues/2409) is available.
|
||||||
|
- Beware that a user can also connect to any port of the exit node itself.
|
||||||
|
|
||||||
### Automatically approve an exit node with auto approvers
|
### Automatically approve an exit node with auto approvers
|
||||||
|
|
||||||
The initial setup of an exit node usually requires manual approval on the control server before it can be used by a node
|
The initial setup of an exit node usually requires manual approval on the control server before it can be used by a node
|
||||||
|
|||||||
Reference in New Issue
Block a user