headscale icon indicating copy to clipboard operation
headscale copied to clipboard

[Feature Request] Support for IP Sets and "Via" in Headscale ACL

Open aradng opened this issue 11 months ago • 6 comments

Use case

Currently, I have implemented these features manually using complex ipset and iptables configurations on the client side. Native support for these in Headscale ACL would be highly beneficial, particularly for:

  • Restricting access to external services that allow only specific whitelisted IPs or regions/countries.
  • Enabling conditional routing in high-availability (HA) database and backend environments that are frequently migrating.
  • Optimizing client-side routing for improved network performance.

Description

Since Tailscale clients already support custom routing configurations, would it be possible to implement similar functionality within Headscale ACL? Specifically:

Both of these are already available in Tailscale’s control plane ACL grants. Adding them to Headscale ACL would greatly enhance flexibility and ease of use for users managing self-hosted deployments.

Contribution

  • [ ] I can write the design doc for this feature
  • [ ] I can contribute this feature

How can it be implemented?

No response

aradng avatar Feb 06 '25 10:02 aradng

I have added no stale to this so it sticks around.

I want to managed expectations by saying that currently our ACL implementation part of the policy is severely lacking, which I aim to work on. There are currently no plans in the future to work on implementing grants, that doesnt mean we will not add them, but that there are a lot of other things to work on first (fixing Tags comes to mind and reworking the very hard to maintain routing system, as well as our large backlog of bugs).

I think it would be years before we are able to have the right building blocks in place (working ACLs, then autogroups, fixing routes/exits, then grants) before we can even consider starting on some of this work.

But, we can remain optimistic, open source projects are for the long run.

kradalby avatar Feb 06 '25 14:02 kradalby

+1 would be great to have this feature.

anuragbhatia avatar Mar 31 '25 17:03 anuragbhatia

+1 Очень нужно ограничение прав на выход

yumork avatar May 30 '25 12:05 yumork

+1 would be a good feature addition!

dblanque avatar Sep 16 '25 19:09 dblanque

+1

benidk avatar Oct 23 '25 07:10 benidk

+1 are not helpful. It gives everyone who has subscribed to this issue a notification and it sends the wrong signal since it is not worked on.

kradalby avatar Oct 23 '25 15:10 kradalby