you are viewing a single comment's thread
view the rest of the comments
[–] 5 points 8 months ago (4 children)

Just a heads up: Headscale will use the official Tailscale DERP servers to resolve NAT traversal.

https://tailscale.com/docs/reference/derp-servers

  • source
  • parent
  • hideshow 4 child comments
  • [–] 2 points 8 months ago (2 children)

    I know you're trying to tell me something brother, but at this moment in time, I seem more stupid than normal, so if you would, unpack that for me in relation to what I was explaining to OP about Tailscale security.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 3 points 8 months ago* (1 child)

    DERP is the service that actually relays packets between tailscale connected devices when they are crossing a NAT (leaving one private network and going across the internet to another private network).

    If you host headscale (the self-hosted community version of the tailscale control plane) and use it with tailscale, by default it will still use the public Tailscale DERP servers. Your traffic is still encrypted and not visible to them, but it does still rely on part of their centralized architecture even though you are hosting the control plane yourself.

    That being said, you can just use the embedded DERP that ships with headscale, although there are some other considerations when doing that because it will need to be publicly on the internet, probably with a proper domain name and publicly trusted certificate.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 2 points 8 months ago

    Thanks for explaining. I really didn't mean it as a Headscale v Tailscale. kind of thing as far as data security goes. I've heard a lot of great things about Headscale. OP was just worried about his data being compromised, and I was just pointing out that it's pretty tight.

  • source
  • parent
  • [–] 1 point 8 months ago* (last edited 8 months ago)

    Headscale includes an embedded DERP server but you need to enable it. Their example yaml has it disabled by default, which I assume is because it needs to be publicly available on the internet, requires HTTPS, and thus a certificate and other network/security considerations.

  • source
  • parent