Commit graph

7287 commits

Author SHA1 Message Date
dependabot[bot]
78ee5ec239
Build(deps): bump alpine from 3.23.0 to 3.23.2
Bumps alpine from 3.23.0 to 3.23.2.

---
updated-dependencies:
- dependency-name: alpine
  dependency-version: 3.23.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 23:02:56 +00:00
Vishal Dalwadi
48ba499f83
V1.4.0 release notes (#3798)
* Update release notes

* bump up version to v1.4.0

* update release notes

* Fix systemd-resolved mode description in release notes

Updated the description of systemd-resolved behavior in release notes.

---------

Co-authored-by: abhishek9686 <abhi281342@gmail.com>
2025-12-22 20:15:55 +04:00
Abhishek Kondur
bcf4402551
v1.4.0: release notes (#3797)
* Update release notes

* bump up version to v1.4.0

* update release notes
2025-12-22 20:01:44 +04:00
Vishal Dalwadi
2062da5081
fix: construct a and-or clause instead of an and-and clause; (#3796) 2025-12-22 16:16:55 +04:00
Abhishek Kondur
0c9ed2542b
NM-202: fix egress domain routing (#3793)
* NM-195: add key tags info to posture check on join

* NM-195: add network user grps to posture check

* NM-195: add posture checks to middleware

* fix: return error when group network roles are set for specific networks and all networks;

* add all posture check to rsrc permission check func

* NM-202: fix egress domain routing

* fix: add username filter;

* feat: add fallback nameserver support;

* fix: add validation for pro as well;

* fix: skip fallback domains for user gws;

* fix: don't set domains for fallback dns servers;

* fix: validation fixes;

* fix: empty match domains for fallback nameservers;

---------

Co-authored-by: VishalDalwadi <dalwadivishal26@gmail.com>
2025-12-22 10:10:40 +04:00
Abhishek Kondur
a29cbb0f31
NM-160: Network User IP map API for operator (#3795)
* add user network ip mapping api

* fix user network ip api
2025-12-20 09:36:13 +04:00
Abhishek Kondur
ea75901f8f
NM-195: cleanup deleted tags and user groups from posturechecks, add nameserver to middleware (#3794)
* NM-195: add key tags info to posture check on join

* NM-195: add network user grps to posture check

* NM-195: add posture checks to middleware

* add all posture check to rsrc permission check func

* NM-195: cleanup deleted tags and user groups from posturechecks

* NM-195: add Nameserver to middleware
2025-12-19 17:36:39 +04:00
Abhishek Kondur
79dd46c8df
NM-195: Add posture check to middleware (#3791)
* NM-195: add key tags info to posture check on join

* NM-195: add network user grps to posture check

* NM-195: add posture checks to middleware

* add all posture check to rsrc permission check func
2025-12-19 09:51:32 +04:00
Abhishek Kondur
45d9314163
NM-197: Assign and Unassign Gw apis (#3790)
* NM-197: Assign and Unassign Gw apis

* NM-197: fix static checks

* NM-197: fix assign api

* NM-197: add relayed node validity check on gw node
2025-12-18 15:37:19 +04:00
Vishal Dalwadi
edcd55d53e
fix: allow upsert flow logs settings to work only if clickhouse connects; (#3789) 2025-12-17 16:19:55 +04:00
Abhishek Kondur
eea3494227
NM-195: fix user network grps posture check (#3788)
* NM-195: add key tags info to posture check on join

* NM-195: add network user grps to posture check
2025-12-17 14:05:23 +04:00
Abhishek Kondur
3e3d8c60a0
NM-195: Add posture check feature flag (#3780)
* NM-195: fix posture check for untagged resources

* NM-195: reduce default cleanup interval

* NM-195: reduce default cleanup interval

* Add posture checks to feature flag
2025-12-16 15:58:18 +04:00
Vishal Dalwadi
ba9af3bfd6
Auto create default match all google dns nameserver (#3782)
* feat: auto create default match all google dns nameserver;

* fix: set column name;

* feat: prevent default ns delete;

* fix: set status;

* fix: create dns nameserver on network creation;
2025-12-16 15:58:04 +04:00
Abhishek Kondur
8266477624
NM-195: add key tags info to posture check on join (#3781) 2025-12-16 15:56:04 +04:00
Abhishek Kondur
4853c9c1a1
NM-195: fix posture check for untagged resources (#3779)
* NM-195: fix posture check for untagged resources

* NM-195: reduce default cleanup interval

* NM-195: reduce default cleanup interval
2025-12-15 14:35:29 +04:00
Vishal Dalwadi
36a88544af
Remove Flow Logs Infra Changes (#3778)
* feat(go): define flow events;

* feat(go): improve structure;

* feat(go): improve structure;

* feat(go): remove old flow definitions;

* feat(sql): add clickhouse init scripts;

* feat(sql): add protobuf spec;

* fix(sql): store ip as string;

* feat(go): move proto def to grpc dir;

* feat(go): use node instead of host as type; optimize protobuf defs;

* feat(go): add clickhouse db support; add endpoint to query flows;

* fix(go): fix clickhouse config;

* fix(go): use error response structure to report error;

* feat(go): pass flow logging status to netclient;

* feat(go): add peer ip identity map to host peer info;

* feat(go): remove prefix from participant obj fields;

* feat(go): add flow logs enabled field to host;

* feat(go): add filtering to get flow api;

* feat(go): fix record struct;

* feat(go): add exporter url to server config;

* feat(go): add exporter url to server config;

* feat(go): enable flow logs by default;

* feat(go): update nm-quick.sh;

* feat(go): update nm-quick.sh;

* feat(go): update nm-quick.sh;

* feat(go): update nm-quick.sh;

* feat(go): add db initialization logic;

* feat(go): filter by network id;

* fix(go): connection issue;

* fix(go): connection issue;

* fix(go): golang builder version;

* feat(go): add server settings for flow logs;

* feat(go): initialize clickhouse in pro; check for retention;

* feat(go): add exporter feature flags;

* feat(go): add grpc behind caddy;

* feat(go): expose ports correctly;

* fix(go): grpc caddyfile config;

* fix(go): publish exporter feature flags on license validation;

* fix(go): set server name for netmaker exporter;

* fix(go): set server name for netmaker exporter;

* fix(go): check for nil cancel func;

* fix(go): add flow logs field to api host;

* fix(go): add flow logs field to api host;

* fix(go): remove port from grpc setting;

* chore(go): tabs;

* feat(go): introduce egress range participant type;.

* feat(go): rename egress range to egress route for uniform language;

* feat(go): rename egress range to egress route for uniform language;

* feat: add peer addr identity map to host peer update;

* feat: add address identity map to host peer update;

* feat: add address identity map to host peer update;

* feat: set correct from and to args;

* feat: add support for filtering by node;

* feat: use corresponding base image;

* feat: update dockerfile base image version;

* fix: disable flow logs for all host when global settings are changed;

* refactor: setup flow logs manually;
2025-12-13 15:21:23 +04:00
Vishal Dalwadi
a4981ffd26
NM-168: Network Flow Logs (#3754)
* feat(go): define flow events;

* feat(go): improve structure;

* feat(go): improve structure;

* feat(go): remove old flow definitions;

* feat(sql): add clickhouse init scripts;

* feat(sql): add protobuf spec;

* fix(sql): store ip as string;

* feat(go): move proto def to grpc dir;

* feat(go): use node instead of host as type; optimize protobuf defs;

* feat(go): add clickhouse db support; add endpoint to query flows;

* fix(go): fix clickhouse config;

* fix(go): use error response structure to report error;

* feat(go): pass flow logging status to netclient;

* feat(go): add peer ip identity map to host peer info;

* feat(go): remove prefix from participant obj fields;

* feat(go): add flow logs enabled field to host;

* feat(go): add filtering to get flow api;

* feat(go): fix record struct;

* feat(go): add exporter url to server config;

* feat(go): add exporter url to server config;

* feat(go): enable flow logs by default;

* feat(go): update nm-quick.sh;

* feat(go): update nm-quick.sh;

* feat(go): update nm-quick.sh;

* feat(go): update nm-quick.sh;

* feat(go): add db initialization logic;

* feat(go): filter by network id;

* fix(go): connection issue;

* fix(go): connection issue;

* fix(go): golang builder version;

* feat(go): add server settings for flow logs;

* feat(go): initialize clickhouse in pro; check for retention;

* feat(go): add exporter feature flags;

* feat(go): add grpc behind caddy;

* feat(go): expose ports correctly;

* fix(go): grpc caddyfile config;

* fix(go): publish exporter feature flags on license validation;

* fix(go): set server name for netmaker exporter;

* fix(go): set server name for netmaker exporter;

* fix(go): check for nil cancel func;

* fix(go): add flow logs field to api host;

* fix(go): add flow logs field to api host;

* fix(go): remove port from grpc setting;

* chore(go): tabs;

* feat(go): introduce egress range participant type;.

* feat(go): rename egress range to egress route for uniform language;

* feat(go): rename egress range to egress route for uniform language;

* feat: add peer addr identity map to host peer update;

* feat: add address identity map to host peer update;

* feat: add address identity map to host peer update;

* feat: set correct from and to args;

* feat: add support for filtering by node;

* feat: use corresponding base image;

* feat: update dockerfile base image version;

* fix: disable flow logs for all host when global settings are changed;
2025-12-12 14:12:00 +04:00
Abhishek Kondur
9f430b67a1
NM-188: optimise User migration DB writes (#3774)
* NM-188: optimise user DB writes on migration

* NM-188: remove user migration debug logs

* NM-188: add debug logs for user migration funcs

* NM-188: fix migration bug

* NM-188: update migration comments in the test file

* NM-188: fix static checks

* fix: save acl src and dst;

* fix: check for all network access;

---------

Co-authored-by: VishalDalwadi <dalwadivishal26@gmail.com>
2025-12-12 10:37:05 +04:00
Abhishek Kondur
4177348f12
NM-166: add user groups to posture checks (#3766)
* NM-166: add device posture checks apis and logic

* NM-166: add severity level to posture check and api to fetch all available attributes

* NM-166: register posture check schema

* add periodic posture check evaluation of nodes

* NM-166: add os family and kernel version to host model for linux

* add posture check violations on host registration, api to fetch node violations

* NM-166: trigger posture checks on posture checks updates

* NM-166: add version clean func

* NM-166: add allowed values for posture check attributes to api

* NM-166: format violation messages

* NM-166: fix static check

* NM-166: fix static check

* NM-166: add OS info to update extclient api

* NM-166: add sysinfo funcs

* set if only new values are not empty

* format client location

* fix posture violation for static nodes

* skip non user nodes from posture checks

* NM-166: check posture checks by tags

* NM-166: set host location before posture check

* validate posture checks by OR condition

* run posture check violation on node update

* NM-166: allow join on unviolated networks

* NM-166: update response message when posture checks are violated

* NM-166: fix static check

* NM-166: add mutex for posture check runs

* NM-166: add OS family fields to api host model

* NM-166: run posture eval for gateway ops

* NM-166: add user groups to posture checks

* NM-166: add default all user grp

* NM-166: fix posture check eval for users

* NM-166: handle user nodes in the posture checks

* NM-166: fix posture check for new config

* NM-166: skip auto update check on users and show violation on disbaled static nodes

* NM-166: add min verison check for attr

* NM-166: fix static check

* NM-166: add default admin groups
2025-12-11 12:19:30 +04:00
dependabot[bot]
dae5c33011
Build(deps): bump golang.org/x/oauth2 from 0.33.0 to 0.34.0 (#3770)
Bumps [golang.org/x/oauth2](https://github.com/golang/oauth2) from 0.33.0 to 0.34.0.
- [Commits](https://github.com/golang/oauth2/compare/v0.33.0...v0.34.0)

---
updated-dependencies:
- dependency-name: golang.org/x/oauth2
  dependency-version: 0.34.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-11 10:51:51 +04:00
dependabot[bot]
d9b4d1c4d0
Build(deps): bump github.com/hashicorp/go-version from 1.7.0 to 1.8.0 (#3771)
Bumps [github.com/hashicorp/go-version](https://github.com/hashicorp/go-version) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/hashicorp/go-version/releases)
- [Changelog](https://github.com/hashicorp/go-version/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/go-version/compare/v1.7.0...v1.8.0)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/go-version
  dependency-version: 1.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-11 10:41:10 +04:00
dependabot[bot]
b972c35c76
Build(deps): bump golang.org/x/crypto from 0.45.0 to 0.46.0 (#3772)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.45.0 to 0.46.0.
- [Commits](https://github.com/golang/crypto/compare/v0.45.0...v0.46.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.46.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-11 10:40:53 +04:00
dependabot[bot]
4be9e8603e
Build(deps): bump alpine from 3.22.2 to 3.23.0 (#3773)
Bumps alpine from 3.22.2 to 3.23.0.

---
updated-dependencies:
- dependency-name: alpine
  dependency-version: 3.23.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-11 10:40:35 +04:00
dependabot[bot]
d1c92c8443
Build(deps): bump github.com/spf13/cobra from 1.10.1 to 1.10.2 (#3769)
Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.10.1 to 1.10.2.
- [Release notes](https://github.com/spf13/cobra/releases)
- [Commits](https://github.com/spf13/cobra/compare/v1.10.1...v1.10.2)

---
updated-dependencies:
- dependency-name: github.com/spf13/cobra
  dependency-version: 1.10.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-11 10:40:18 +04:00
Vishal Dalwadi
b48c705c67
Allow updating auto-assign-gw on enrollment keys (#3768)
* feat(go): allow updating auto-assign-gw on enrollment keys;

* feat: prevent auto assign gateway if relay is set;
2025-12-11 10:39:44 +04:00
Abhishek Kondur
3a315bf1ce
Merge pull request #3767 from gravitl/NM-187
NM-187: force delete user configs option
2025-12-10 14:02:38 +04:00
Abhishek Kondur
74d5525340
Merge pull request #3777 from gravitl/master
Master
2025-12-09 22:20:00 +04:00
Abhishek Kondur
db2f005ea0
v1.2.0: add auth to server shutdown api (#3776) 2025-12-09 22:17:26 +04:00
abhishek9686
f5752fa60d v1.2.0: add auth to server shutdown api 2025-12-09 22:11:36 +04:00
Vishal Dalwadi
e9e75d221d
Fix: IDP Integration (#3758)
* fix(go): prevent resetting user principal name;

* fix(go): user upn for get user and auth request;

* fix(go): unescape email before using;

* fix(go): use id as external idp id for google;

---------

Co-authored-by: Abhishek Kondur <abhi281342@gmail.com>
2025-12-05 18:32:54 +04:00
dependabot[bot]
4177a93607
Build(deps): bump golang.org/x/oauth2 from 0.32.0 to 0.33.0 (#3730)
Bumps [golang.org/x/oauth2](https://github.com/golang/oauth2) from 0.32.0 to 0.33.0.
- [Commits](https://github.com/golang/oauth2/compare/v0.32.0...v0.33.0)

---
updated-dependencies:
- dependency-name: golang.org/x/oauth2
  dependency-version: 0.33.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-05 18:25:54 +04:00
dependabot[bot]
269337cd4b
Build(deps): bump google.golang.org/api from 0.253.0 to 0.256.0 (#3732)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.253.0 to 0.256.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.253.0...v0.256.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-version: 0.256.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-05 18:25:37 +04:00
dependabot[bot]
5413845b54
Build(deps): bump golang.org/x/crypto from 0.44.0 to 0.45.0 (#3745)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.44.0 to 0.45.0.
- [Commits](https://github.com/golang/crypto/compare/v0.44.0...v0.45.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.45.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-05 18:18:47 +04:00
dependabot[bot]
04e91764ac
Build(deps): bump github.com/coreos/go-oidc/v3 from 3.16.0 to 3.17.0 (#3746)
Bumps [github.com/coreos/go-oidc/v3](https://github.com/coreos/go-oidc) from 3.16.0 to 3.17.0.
- [Release notes](https://github.com/coreos/go-oidc/releases)
- [Commits](https://github.com/coreos/go-oidc/compare/v3.16.0...v3.17.0)

---
updated-dependencies:
- dependency-name: github.com/coreos/go-oidc/v3
  dependency-version: 3.17.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-05 18:18:12 +04:00
dependabot[bot]
e810deb9b9
Build(deps): bump github.com/posthog/posthog-go from 1.6.12 to 1.6.13 (#3747)
Bumps [github.com/posthog/posthog-go](https://github.com/posthog/posthog-go) from 1.6.12 to 1.6.13.
- [Release notes](https://github.com/posthog/posthog-go/releases)
- [Changelog](https://github.com/PostHog/posthog-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/posthog/posthog-go/compare/v1.6.12...v1.6.13)

---
updated-dependencies:
- dependency-name: github.com/posthog/posthog-go
  dependency-version: 1.6.13
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-05 18:17:05 +04:00
dependabot[bot]
2503c3834d
Build(deps): bump actions/checkout from 5 to 6 (#3748)
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-05 18:16:44 +04:00
Seena Fallah
6e5f500a4a
controllers: return 404 on get network not found (#3729)
return http 404 when network is not there rather than an internal err.

Signed-off-by: Seena Fallah <seenafallah@gmail.com>
Co-authored-by: Abhishek Kondur <abhi281342@gmail.com>
2025-12-05 18:16:08 +04:00
Abhishek Kondur
3bab218a2b
NM-175: add ipv4/ipv6 to peer info (#3763)
* add ipv4 and ipv6 addr to peer info

* NM-175: add extclient addr4 and addr6

* add user info to peerinfo
2025-12-05 18:10:09 +04:00
Abhishek Kondur
eed32cd2d6
Merge pull request #3735 from gravitl/NM-166
NM-166: Device Posture Checks
2025-12-05 10:33:11 +04:00
Abhishek Kondur
6533b827cf
Merge pull request #3765 from gravitl/master
Master
2025-12-05 10:32:57 +04:00
Abhishek Kondur
333da2f053
Release v1.2.0 (#3764)
* add safe nil check for legacy acls

* fix import cycle issue

* fix user sync by groups in azure

* remove debug logs

* remove autoenabling rac configs

* preserve extclient DNS field
2025-12-05 10:30:28 +04:00
Abhishek Kondur
2e24486f43
Merge branch 'master' into release-v1.2.0 2025-12-05 10:18:54 +04:00
Abhishek Kondur
94f3716fdf
Merge pull request #3744 from gravitl/NM-167
NM-167: Auto delete Offline Nodes
2025-12-05 09:52:53 +04:00
Abhishek Kondur
2cc0420354
Merge pull request #3762 from gravitl/v1.2.0-extclient-fix
v1.2.0: preserve extclient DNS field
2025-12-04 13:32:17 +04:00
abhishek9686
0f8b687c87 preserve extclient DNS field 2025-12-04 12:16:16 +04:00
Abhishek Kondur
7b0fc099fe
Merge pull request #3761 from gravitl/v1.2.0-extclient-fix
V1.2.0:  remove autoenabling rac configs
2025-12-04 10:22:06 +04:00
abhishek9686
d256707e85 remove autoenabling rac configs 2025-12-04 01:01:06 +04:00
Abhishek Kondur
5eeda5a55b
Merge pull request #3759 from gravitl/v1.2.0-azure-idp-grp-sync
v1.2.0: fix user sync by groups in azure
2025-12-03 22:58:44 +04:00
abhishek9686
dcb0953d0a remove debug logs 2025-12-03 22:25:02 +04:00
abhishek9686
3d6a026355 fix user sync by groups in azure 2025-12-03 22:23:22 +04:00