Commit graph

1258 commits

Author SHA1 Message Date
Abhishek K
309e4795a1
NET-1950: Persist Server Settings in the DB (#3419)
* feat: api access tokens

* revoke all user tokens

* redefine access token api routes, add auto egress option to enrollment keys

* add server settings apis, add db table for settigs

* handle server settings updates

* switch to using settings from DB

* fix sever settings migration

* revet force migration for settings

* fix server settings database write

* fix revoked tokens to be unauthorized

* remove unused functions

* convert access token to sql schema

* switch access token to sql schema

* fix merge conflicts

* fix server settings types

* bypass basic auth setting for super admin

* add TODO comment

* publish peer update on settings update

* chore(go): import style changes from migration branch;

1. Singular file names for table schema.
2. No table name method.
3. Use .Model instead of .Table.
4. No unnecessary tagging.

* remove nat check on egress gateway request

* Revert "remove nat check on egress gateway request"

This reverts commit 0aff12a189.

* feat(go): add db middleware;

* feat(go): restore method;

* feat(go): add user access token schema;

* fix user auth api:

* re initalise oauth and email config

* set verbosity

* sync auto update settings with hosts

* sync auto update settings with hosts

* mask secret and convert jwt duration to minutes

* convert jwt duration to minutes

* notify peers after settings update

* compare with curr settings before updating

* send host update to devices on auto update

---------

Co-authored-by: Vishal Dalwadi <dalwadivishal26@gmail.com>
2025-04-30 02:34:10 +04:00
Abhishek K
262803c234
add ctx to DB funcs (#3435) 2025-04-29 00:22:02 +04:00
Abhishek K
119ef4e17e
move api tokens models to schema pkg (#3434) 2025-04-29 00:11:56 +04:00
Abhishek K
ca95954fb5
NET-2000: Api access tokens (#3418)
* feat: api access tokens

* revoke all user tokens

* redefine access token api routes, add auto egress option to enrollment keys

* fix revoked tokens to be unauthorized

* remove unused functions

* convert access token to sql schema

* switch access token to sql schema

* revoke token generated by an user

* add user token creation restriction by user role

* add forbidden check for access token creation

* revoke user token when group or role is changed

* add default group to admin users on update

* fix token removal on user update

* fix token removal on user update
2025-04-23 20:21:42 +04:00
abhishek9686
fc32e324b3 check if node is getting failedovered 2025-04-22 12:58:47 +04:00
abhishek9686
134b525ea6 bypass acl policy for failover peer 2025-04-22 12:55:53 +04:00
abhishek9686
35edcd01de bypass acl policy 2025-04-22 12:33:04 +04:00
Abhishek K
e2a0ceccf6
fix egress policies acls comms (#3420) 2025-04-14 15:21:06 +04:00
abhishek9686
b5842b7b06 fix create gateway req 2025-04-03 21:47:41 +04:00
abhishek9686
6b21e9f4c2 assign to ingress gw automatically 2025-04-02 19:14:57 +04:00
abhishek9686
ded348a320 remove pending delete nodes 2025-03-31 19:05:47 +04:00
abhishek9686
0e3263db8a set last checkin when registered 2025-03-29 02:10:30 +04:00
abhishek9686
7efe780e5a set last checkin when registered 2025-03-29 02:04:56 +04:00
abhishek9686
8a0998bcc1 remove duplicate func 2025-03-28 16:25:33 +04:00
abhishek9686
137303a687 resolve merge conflicts 2025-03-28 16:14:07 +04:00
abhishek9686
c318c939f4 sort the acl rules 2025-03-27 23:54:38 +04:00
abhishek9686
d55baebac5 add metric route to ext client addrs 2025-03-27 15:59:33 +04:00
abhishek9686
982ee3f4f2 fix tag nil point error 2025-03-25 15:06:02 +04:00
abhishek9686
45e5d52b19 fix status func calls 2025-03-25 12:01:46 +04:00
Abhishek K
4c26ae5197
Merge pull request #3391 from gravitl/master
Master
2025-03-25 11:51:06 +04:00
Abhishek K
8a1f36ee8e
Net 1990 (#3386)
* add peerkey to network egress routes model

* add peerkey to network egress routes model

* filter out conflicting routes from node

* add support for egress HA on relay

* add support for egress HA on relay

* add support for egress HA on relay

* skip if curr node is relay node of the peer

* skip if curr node is relay node of the peer

* fix failover egress HA

* add network to egress route model

* clone before modifying

* check for user policies on uni direction check

* add all network fwd rule

* delete all network policies and tags on network deletion
2025-03-25 00:42:14 +04:00
Abhishek K
5e1ef5e366
Net 1990 (#3385)
* add peerkey to network egress routes model

* add peerkey to network egress routes model

* filter out conflicting routes from node

* add support for egress HA on relay

* add support for egress HA on relay

* add support for egress HA on relay

* skip if curr node is relay node of the peer

* skip if curr node is relay node of the peer

* fix failover egress HA

* add network to egress route model

* clone before modifying

* check for user policies on uni direction check

* add all network fwd rule
2025-03-25 00:29:35 +04:00
Abhishek K
8c19fc602d
Net 1990 (#3384)
* add peerkey to network egress routes model

* add peerkey to network egress routes model

* filter out conflicting routes from node

* add support for egress HA on relay

* add support for egress HA on relay

* add support for egress HA on relay

* skip if curr node is relay node of the peer

* skip if curr node is relay node of the peer

* fix failover egress HA

* add network to egress route model

* clone before modifying

* check for user policies on uni direction check
2025-03-24 17:15:44 +04:00
Abhishek K
4cc56fd3be
NET-1990: add peerkey to network egress routes model (#3379)
* add peerkey to network egress routes model

* add peerkey to network egress routes model

* filter out conflicting routes from node

* add support for egress HA on relay

* add support for egress HA on relay

* add support for egress HA on relay

* skip if curr node is relay node of the peer

* skip if curr node is relay node of the peer

* fix failover egress HA

* add network to egress route model

* clone before modifying
2025-03-24 15:33:39 +04:00
Abhishek K
3d765f9cf1
NET-1910: Acl controls for Egress Traffic (#3377)
* add support for egress ranges on acl policy

* add egress ranges to acl rules

* add egress ranges to acl policies

* Add egress ranges to acl rules

* add egress ranges to fw update

* fetch acl rules for egress networks

* apply egress policies for devices

* configure user policies for egresss routes

* fix gw tag name migration

* fix egress acl rules for static nodes

* add egress ranges for static nodes on ingress gw

* fileter acl IPs to be unique

* cleanup IOT logic from peer update

* make acl Rule Dst List

* cleanup egress ranges from acl policies

* create user group default acl policy for gateways

* remove remote access name ids

* rm egress ranges removal from acl policies

* simplify user permissions on nodes

* add additional nameservers to extclient dns

* remove debug logs

* fix static checks
2025-03-18 13:25:55 +04:00
Vishal Dalwadi
4c14cfd099
NET-1986: Only report online hosts and external clients (#3375)
* feat(go): only report online hosts.

* feat(go): only report online external clients.

* feat(go): only report online hosts and external clients.
2025-03-17 18:35:17 +04:00
Abhishek K
fb1052e6a5
change check to last checkin status (#3374) 2025-03-17 17:23:06 +04:00
Vishal Dalwadi
346f09ce39
NET-1986: Only report online hosts. (#3370)
* feat(go): only report online hosts.

* feat(go): only report online external clients.
2025-03-14 17:16:31 +04:00
abhishek9686
f3fd10326f migrate remote access gw tags 2025-03-11 00:50:44 +04:00
abhishek9686
aca11049c9 fix untagged extclient comms for user 2025-03-10 13:17:33 +04:00
abhishek9686
0e4f163f1f fix merge conflicts 2025-03-06 22:48:46 +04:00
abhishek9686
bb25739bd9 resolve merge conflicts 2025-03-06 22:41:56 +04:00
Abhishek K
1ad8b8b7b4
Merge pull request #3358 from gravitl/master
Master
2025-03-06 22:17:24 +04:00
abhishek9686
8f370a74a9 fix ipv6 addr rules on gw node 2025-03-06 19:01:53 +04:00
abhishek9686
6e1b16a6ea fix ext-ext comms 2025-03-06 03:45:09 +04:00
abhishek9686
9a1c1c281b fix extclient comms to gws 2025-03-05 23:24:24 +04:00
abhishek9686
984db44c78 fix extclient comms to gws 2025-03-05 23:06:38 +04:00
abhishek9686
e22519c07e fix acls rules on node 2025-03-05 20:35:21 +04:00
abhishek9686
b45a926649 optimise static node rules, fix traffic flows for static nodes 2025-03-05 14:26:35 +04:00
abhishek9686
2cb5519978 fix egress range comparison 2025-03-03 20:24:18 +04:00
abhishek9686
d21411392b fix integration tests 2025-03-03 12:05:23 +04:00
abhishek9686
7e0ff17420 validate egress ranges with metric 2025-03-03 11:33:46 +04:00
abhishek9686
f5d6717186 add egress routes with metric to peer update 2025-03-03 00:34:45 +04:00
abhishek9686
33fafa83e6 add nameservers to dns settins 2025-02-28 21:49:53 +04:00
abhishek9686
225bf37e02 resolve merge conflicts 2025-02-28 12:18:38 +04:00
abhishek9686
ce6ec25253 fix network ip allocation in HA 2025-02-27 16:26:15 +04:00
abhishek9686
46eea43397 add mutex for target nodes 2025-02-25 19:41:57 +04:00
abhishek9686
dd8cd5856e change mutex to write lock 2025-02-24 13:38:34 +03:00
abhishek9686
e50da805d4 Merge branch 'develop' of https://github.com/gravitl/netmaker into NET-1911 2025-02-24 08:53:49 +03:00
Abhishek K
48535f7ef1
NET-1956: Async Node Status API (#3341)
* add node status api

* upsate node status api to return map data

* resolve merge conflicts
2025-02-24 08:48:24 +03:00