Netmaker makes networks with WireGuard. Netmaker automates fast, secure, and distributed virtual networks.
Find a file
Abhishek K 66069fbc34
NET-1082: Scale Testing Fixes (#2894)
* add additional mutex lock on node acls func

* increase verbosity

* disable acls on cloud emqx

* add emqx creds creation to go routine

* add debug log of mq client id

* comment port check

* uncomment port check

* check for connection mq connection open

* use username for client id

* add write mutex on acl is allowed

* add mq connection lost handler on server

* spin off zombie init as go routine

* get whole api path from config

* Revert "get whole api path from config"

This reverts commit 392f5f4c5f.

* update extclient acls async

* add additional mutex lock on node acls func

(cherry picked from commit 5325f0e7d7)

* increase verbosity

(cherry picked from commit 705b3cf0bf)

* add emqx creds creation to go routine

(cherry picked from commit c8e65f4820)

* add debug log of mq client id

(cherry picked from commit 29c5d6ceca)

* comment port check

(cherry picked from commit db8d6d95ea)

* check for connection mq connection open

(cherry picked from commit 13b11033b0)

* use username for client id

(cherry picked from commit e90c7386de)

* add write mutex on acl is allowed

(cherry picked from commit 4cae1b0bb4)

* add mq connection lost handler on server

(cherry picked from commit c82918ad35)

* spin off zombie init as go routine

(cherry picked from commit 6d65c44c43)

* update extclient acls async

(cherry picked from commit 6557ef1ebe)

* additionl logs for oauth user flow

(cherry picked from commit 61703038ae)

* add more debug logs

(cherry picked from commit 5980beacd1)

* add more debug logs

(cherry picked from commit 4d001f0d27)

* add set auth secret

(cherry picked from commit f41cef5da5)

* fix fetch pass

(cherry picked from commit 825caf4b60)

* make sure auth secret is set only once

(cherry picked from commit ba33ed02aa)

* make sure auth secret is set only once

(cherry picked from commit 920ac4c507)

* comment usage of emqx acls

* replace  read lock with write lock on acls

* replace  read lock with write lock on acls

(cherry picked from commit 808d2135c8)

* use deadlock pkg for visibility

* add additional mutex locks

* remove race flag

* on mq re-connecting donot exit if failed

* on mq re-connecting donot exit if failed

* revert mutex package change

* set mq clean session

* remove debug log

* go mod tidy

* revert on prem emqx acls del
2024-04-11 21:18:57 +05:30
.github update to 0.24.0 (#2893) 2024-04-11 21:05:06 +05:30
auth fix(NET-1055): fix auto-relay with enrollment key (#2887) 2024-04-11 18:14:15 +05:30
cli Net 1115 (#2890) 2024-04-11 17:37:45 +05:30
compose update to 0.24.0 (#2893) 2024-04-11 21:05:06 +05:30
config NET-1075: Endpoint detection server config (#2876) 2024-04-03 23:51:09 +05:30
controllers NET-1082: Scale Testing Fixes (#2894) 2024-04-11 21:18:57 +05:30
database NET-1064: Oauth User SignUp Approval Flow (#2874) 2024-04-03 11:20:19 +05:30
docker Update Dockerfile-go-builder 2024-01-03 16:36:39 +05:30
functions don't bind coredns to publicip 2024-01-23 18:02:15 +05:30
k8s update to 0.24.0 (#2893) 2024-04-11 21:05:06 +05:30
logger ee license check 2023-04-12 10:45:06 -04:00
logic NET-1082: Scale Testing Fixes (#2894) 2024-04-11 21:18:57 +05:30
migrate NET-1082: Scale Testing Fixes (#2894) 2024-04-11 21:18:57 +05:30
models Net 1115 (#2890) 2024-04-11 17:37:45 +05:30
mq NET-1082: Scale Testing Fixes (#2894) 2024-04-11 21:18:57 +05:30
netclient/ncutils random string 2023-05-02 13:28:00 -04:00
nginx remove references to grpc/comms net 2022-04-21 15:53:44 -04:00
pro NET-1082: Scale Testing Fixes (#2894) 2024-04-11 21:18:57 +05:30
scripts NET-1075: Endpoint detection server config (#2876) 2024-04-03 23:51:09 +05:30
servercfg NET-1075: Endpoint detection server config (#2876) 2024-04-03 23:51:09 +05:30
serverctl NET-551: User Mgmt Re-Design (#2547) 2023-09-01 14:27:08 +05:30
test remove agentbackend 2023-02-20 02:22:48 -07:00
tls initial changes to make cert <-> broker comms work 2022-07-05 15:04:45 -04:00
validation merge conflicts resolved 2022-09-26 17:47:20 +05:30
.dockerignore NET-163: Return 403 instead of 401 (#2326) 2023-05-25 09:40:39 -04:00
.fpm add rpms 2022-03-09 15:28:39 -05:00
.gitignore docs(NET-953): update docs spec, gitignore (#2880) 2024-04-09 11:52:00 +05:30
.goreleaser.prerelease.yaml Net 792 remove freebsd (#2735) 2024-01-16 20:19:08 +05:30
.goreleaser.update.yaml cleanup 2023-02-25 08:03:16 -05:00
.goreleaser.yaml Net 792 remove freebsd (#2735) 2024-01-16 20:19:08 +05:30
CONTRIBUTING.md Create CONTRIBUTING.md 2022-01-20 08:19:23 -05:00
dev.yaml remove grpc parameters 2023-02-20 09:09:26 -07:00
Dockerfile Bump alpine from 3.19.0 to 3.19.1 (#2809) 2024-02-08 23:31:04 +05:30
Dockerfile-quick Bump alpine from 3.19.0 to 3.19.1 (#2809) 2024-02-08 23:31:04 +05:30
go.mod Revert "Bump github.com/coreos/go-oidc/v3 from 3.9.0 to 3.10.0 (#2871)" (#2885) 2024-04-09 15:17:38 +05:30
go.sum Revert "Bump github.com/coreos/go-oidc/v3 from 3.9.0 to 3.10.0 (#2871)" (#2885) 2024-04-09 15:17:38 +05:30
LICENSE.md Change License To Apache (#2597) 2023-09-21 08:26:11 -04:00
main.go NET-1082: Scale Testing Fixes (#2894) 2024-04-11 21:18:57 +05:30
main_ee.go revamp pro trial invocation 2024-01-19 19:10:07 +05:30
README.md update to 0.24.0 (#2893) 2024-04-11 21:05:06 +05:30
release.md update to 0.24.0 (#2893) 2024-04-11 21:05:06 +05:30
SECURITY.md Update SECURITY.md 2022-11-02 09:10:50 -04:00
swagger.yml update to 0.24.0 (#2893) 2024-04-11 21:05:06 +05:30

ROSS Index - Fastest Growing Open-Source Startups | Runa Capital Y-Combinator

WireGuard® automation from homelab to enterprise

Create Manage Automate
✔️ WireGuard Networks ✔️ Admin UI ✔️ Linux
✔️ Remote Access Gateways ✔️ OAuth ✔️ Docker
✔️ Mesh VPNs ✔️ Private DNS ✔️ Mac
✔️ Site-to-Site ✔️ Access Control Lists ✔️ Windows

Try Netmaker SaaS

If you're looking for a managed service, you can get started with just few clicks, visit netmaker.io to create your netmaker server.

Self-Hosted Quick Start

These are the instructions for deploying a Netmaker server on your own cloud VM as quickly as possible. For more detailed instructions, visit the Install Docs.

  1. Get a cloud VM with Ubuntu 22.04 and a public IP.
  2. Open ports 443, 80, 3479, 8089 and 51821-51830/udp on the VM firewall and in cloud security settings.
  3. (recommended) Prepare DNS - Set a wildcard subdomain in your DNS settings for Netmaker, e.g. *.netmaker.example.com, which points to your VM's public IP.
  4. Run the script:

sudo wget -qO /root/nm-quick.sh https://raw.githubusercontent.com/gravitl/netmaker/master/scripts/nm-quick.sh && sudo chmod +x /root/nm-quick.sh && sudo /root/nm-quick.sh

This script by default installs PRO version with 14-day trial, check out these instructions for post trial period https://docs.netmaker.io/install.html#after-trial-period-ends. It also gives you the option to use your own domain (recommended) or an auto-generated domain.

After installing Netmaker, check out the Walkthrough and Getting Started guides to learn more about configuring networks. Or, check out some of our other Tutorials for different use cases, including Kubernetes.

Get Support

Why Netmaker + WireGuard?

  • Netmaker automates virtual networks between data centers, clouds, and edge devices, so you don't have to.

  • Kernel WireGuard offers maximum speed, performance, and security.

  • Netmaker is built to scale from the small business to the enterprise.

  • Netmaker with WireGuard can be highly customized for peer-to-peer, site-to-site, Kubernetes, and more.

Community Projects

Disclaimer

WireGuard is a registered trademark of Jason A. Donenfeld.

License

Netmaker's source code and all artifacts in this repository are freely available. All content that resides under the "pro/" directory of this repository, if that directory exists, is licensed under the license defined in "pro/LICENSE". All third party components incorporated into the Netmaker Software are licensed under the original license provided by the owner of the applicable component. Content outside of the above mentioned directories or restrictions above is available under the "Apache Version 2.0" license as defined below. All details for the licenses used can be found here: LICENSE.md.