Netmaker makes networks with WireGuard. Netmaker automates fast, secure, and distributed virtual networks.
Find a file
Abhishek K 0638dcac49
NET-940: Inet Gws (#2828)
* internet gws apis

* add validate check for inet request

* add default gw changes to peer update

* update json tag

* add OS checks for inet gws

* add set defaul gw pro func

* allow disable and enable inet gw

* add inet handlers to pro

* add fields to api node

* add inet allowed ips

* add default gw to pull

* unset node inet details on deletion

* unset internet gw on network nodes

* unset inet gw fix

* unset inet gw fix

* send default gw ip

* fix inet node endpoint

* add default gw endpoint ip to pull resp

* validate after unset gws

* add inet client peer allowedips to inet node

* validate after unset gws

* fix allowed ips for inet peer and gw node

* fix allowed ips for inet peer and gw node

* fix allowed ips for inet peer and gw node

* fix allowed ips for inet peer and gw node

* fix inet gw and relayed conflict

* fix inet gw and relayed conflict

* fix update req

* fix update inet gw api

* when inet gw is peer ignore other allowedIps

* test relay

* revert test relay

* revert inet peer update changes

* channel internet traffic of relayed node to relay's inetgw

* channel internet traffic of relayed node to relay's inetgw

* channel internet traffic of relayed node to relay's inetgw

* add check for relayed node

* add inet info to peer update

* add inet info to peer update

* fix update node to persist inet info

* fix go tests

* egress ranges with inet gw fix

* egress ranges with inet gw fix

* disallow node acting using inet gw to act as inet gw

* add check to validate inet gw

* fix typos

* add firewall check

* set inetgw on ingress req on community

* set inetgw to false on community on ingress del
2024-02-28 08:46:51 +07:00
.github update develop to v0.23.0 (#2816) 2024-02-08 23:30:10 +05:30
auth Merge pull request #2805 from gravitl/NET-908 2024-02-06 14:59:18 +05:30
cli fix(NET-799): fix acl allow/deny subcommands (#2736) 2023-12-20 13:30:45 +04:00
compose update develop to v0.23.0 (#2816) 2024-02-08 23:30:10 +05:30
config set caching to true by defaulT 2024-01-11 12:00:48 +05:30
controllers NET-940: Inet Gws (#2828) 2024-02-28 08:46:51 +07:00
database Merge branch 'develop' into bugfix_v0.22.0_bump-gorqlite-to-a8a425b1a6aa 2024-01-25 20:25:45 +09:00
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 develop to v0.23.0 (#2816) 2024-02-08 23:30:10 +05:30
logger ee license check 2023-04-12 10:45:06 -04:00
logic NET-940: Inet Gws (#2828) 2024-02-28 08:46:51 +07:00
migrate fix(NET-897): uniform client and node acls (#2803) 2024-02-13 20:25:27 +07:00
models NET-940: Inet Gws (#2828) 2024-02-28 08:46:51 +07:00
mq format emqx urls 2024-01-26 10:45:55 +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-940: Inet Gws (#2828) 2024-02-28 08:46:51 +07:00
scripts rm certs ref from upgrade script 2024-02-28 08:41:53 +07:00
servercfg if emqx, avoid sending mq creds from server to client 2024-01-26 11:15:18 +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 make goreleaser work on publish release 2023-02-15 15:29:42 -05:00
.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 Bump github.com/go-playground/validator/v10 from 10.17.0 to 10.18.0 (#2820) 2024-02-13 20:27:52 +07:00
go.sum Bump github.com/go-playground/validator/v10 from 10.17.0 to 10.18.0 (#2820) 2024-02-13 20:27:52 +07:00
LICENSE.md Change License To Apache (#2597) 2023-09-21 08:26:11 -04:00
main.go update develop to v0.23.0 (#2816) 2024-02-08 23:30:10 +05:30
main_ee.go revamp pro trial invocation 2024-01-19 19:10:07 +05:30
README.md update develop to v0.23.0 (#2816) 2024-02-08 23:30:10 +05:30
release.md update develop to v0.23.0 (#2816) 2024-02-08 23:30:10 +05:30
SECURITY.md Update SECURITY.md 2022-11-02 09:10:50 -04:00
swagger.yml update develop to v0.23.0 (#2816) 2024-02-08 23:30:10 +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.