v0.15.0
juanfont/headscalev0.15.0Mar 20, 2022by github-actions[bot]
AI Summary
This release removes namespace boundaries to align with Tailscale's default behavior, enabling all nodes to communicate by default while enforcing restrictions via ACLs. It also introduces an embedded DERP and STUN server, along with YAML support for ACLs and a configurable metrics endpoint.
Key Highlights
- Namespace boundaries removed; all nodes can communicate by default
- Embedded DERP and STUN server included
- Metrics endpoint is now configurable via `metrics_listen_addr`
- ACLs now support writing with YAML
- Email support added for groups in ACLs
Breaking Changes
- Namespace boundaries removed and all nodes can communicate by default
- Metrics endpoint moved to a configurable host:port (`metrics_listen_addr`)
New Features
- YAML support for writing ACL files
- Email support in ACL groups
- Shorthand aliases for CLI commands
- /windows endpoint for configuration instructions
- Embedded DERP and STUN server
Full Release Notes
## 0.15.0 (2022-03-20) **Note:** Take a backup of your database before upgrading. ### BREAKING - Boundaries between Namespaces has been removed and all nodes can communicate by default [#357](https://github.com/juanfont/headscale/pull/357) - To limit access between nodes, use [ACLs](./docs/acls.md). - `/metrics` is now a configurable host:port endpoint: [#344](https://github.com/juanfont/headscale/pull/344). You must update your `config.yaml` file to include: ```yaml metrics_listen_addr: 127.0.0.1:9090 ``` ### Features - Add support for writing ACL files with YAML [#359](https://github.com/juanfont/headscale/pull/359) - Users can now use emails in ACL's groups [#372](https://github.com/juanfont/headscale/issues/372) - Add shorthand aliases for commands and subcommands [#376](https://github.com/juanfont/headscale/pull/376) - Add `/windows` endpoint for Windows configuration instructions + registry file download [#392](https://github.com/juanfont/headscale/pull/392) - Added embedded DERP (and STUN) server into Headscale [#388](https://github.com/juanfont/headscale/pull/388) ### Changes - Fix a bug were the same IP could be assigned to multiple hosts if joined in quick succession [#346](https://github.com/juanfont/headscale/pull/346) - Simplify the code behind registration of machines [#366](https://github.com/juanfont/headscale/pull/366) - Nodes are now only written to database if they are registrated successfully - Fix a limitation in the ACLs that prevented users to write rules with `*` as source [#374](https://github.com/juanfont/headscale/issues/374) - Reduce the overhead of marshal/unmarshal for Hostinfo, routes and endpoints by using specific types in Machine [#371](https://github.com/juanfont/headscale/pull/371) - Apply normalization function to FQDN on hostnames when hosts registers and retrieve informations [#363](https://github.com/juanfont/headscale/issues/363) - Fix a bug that prevented the use of `tailscale logout` with OIDC [#508](https://github.com/juanfont/headscale/issues/508) - Added Tailscale repo HEAD and unstable releases channel to the integration tests targets [#513](https://github.com/juanfont/headscale/pull/513) ## Commits * 749c929 Add Tailscale unstable channel and repo HEAD to integration tests * 631cf58 Added date for 0.15.0 in changelog * a8a683d Added default values in Dockerfile.tailscale * db9ba17 Added missing file * a645565 Added missing package * 98ac88d Changed comment position * af6a47f Changelog updated * f42868f Docker requires lowercase for the container names * 0165b89 Fixed paths * b8aad54 Make STUN run by default when embedded DERP is enabled * 2e66872 Make STUN server mandatory if DERP embedded is enabled * d21e9d2 Merge branch 'main' into feat-add-debug-log * 739653f Merge branch 'main' into feat-add-debug-log * b65bd5b Merge branch 'main' into fix-machine-registration-expired * c29af96 Merge branch 'main' into main * 4068a7b Merge branch 'main' into main * cd2914a Merge branch 'main' into mandatory-stun * d13338a Merge branch 'main' into mandatory-stun * 94d9105 Merge branch 'main' into unstable-integration-tests * 53b62f3 Merge pull request #499 from juanfont/mandatory-stun * 68403cb Merge pull request #505 from y0ngb1n/fix-docs-metrics-endpoint * 1c9b1c0 Merge pull request #507 from juanfont/update-contributors * e85b971 Merge pull request #509 from kradalby/go118 * 304109a Merge pull request #511 from restanrm/fix-machine-registration-expired * daae2fe Merge pull request #512 from restanrm/feat-add-debug-log * 8a2c0e8 Merge pull request #513 from juanfont/unstable-integration-tests * c850307 Merge pull request #514 from aofei/main * 150ae18 Merge pull request #517 from juanfont/changelog-prep-0.15 * a1caa5b Minor improvements on logging * d5ce7d7 Prettier * 8f5875e Reorg errors * 4522865 Update CHANGELOG.md to include future 0.16.0 * b781446 Upgrade to go 1.18 * 882c0c3 chore(changelog): update changelog * ade9552 docs(README): update contributors * 2e04abf feat(oidc): add debug log * 61ebb71 fix(oidc): Reset expiry for reauthentication * 1eafe96 fix: possible panic in `Headscale.scheduledDERPMapUpdateWorker`