VPN Network Service - Netmaker makes networks with WireGuard. Netmaker automates fast, secure, and distributed virtual networks.
#nebula #tailscale #mesh #vpn #golang #go #overlay #meshvpn

Anish Mukherjee 9e8f41f491 remove [--args] from definition %!s(int64=2) %!d(string=hai) anos
.github d7f6030173 Merge pull request #2066 from gravitl/GRA-1100-workflows %!s(int64=2) %!d(string=hai) anos
auth 7f8ad1523e feat(GRA-763): add success and error SSO HTML templates %!s(int64=2) %!d(string=hai) anos
cli 9e8f41f491 remove [--args] from definition %!s(int64=2) %!d(string=hai) anos
compose 6d942be9a0 update versions %!s(int64=2) %!d(string=hai) anos
config ad4bab064b Merge pull request #2050 from gravitl/GRA-1198-enrollment_keys %!s(int64=2) %!d(string=hai) anos
controllers ad4bab064b Merge pull request #2050 from gravitl/GRA-1198-enrollment_keys %!s(int64=2) %!d(string=hai) anos
database a5e7147b69 initial commit, began unit tests %!s(int64=2) %!d(string=hai) anos
docker 5e056dd7ec update docker compose %!s(int64=2) %!d(string=hai) anos
ee 73dfc6fe47 correct using address of loop vars %!s(int64=2) %!d(string=hai) anos
functions 65b31c1c04 fix tests %!s(int64=2) %!d(string=hai) anos
k8s dbf6f1034b Merge pull request #2058 from gravitl/feature_emqx %!s(int64=2) %!d(string=hai) anos
logger f63b88db73 fixing sso error handling %!s(int64=3) %!d(string=hai) anos
logic ad4bab064b Merge pull request #2050 from gravitl/GRA-1198-enrollment_keys %!s(int64=2) %!d(string=hai) anos
metrics 502827b8b8 rm unused pinger func %!s(int64=2) %!d(string=hai) anos
models d19f292e6c Merge pull request #2073 from gravitl/GRA-1280-local-network %!s(int64=2) %!d(string=hai) anos
mq ad4bab064b Merge pull request #2050 from gravitl/GRA-1198-enrollment_keys %!s(int64=2) %!d(string=hai) anos
netclient 828b3f7162 remove local network/range %!s(int64=2) %!d(string=hai) anos
nginx 7152f6ccd4 remove references to grpc/comms net %!s(int64=3) %!d(string=hai) anos
scripts 130d2de565 update develop to 0.18.2 %!s(int64=2) %!d(string=hai) anos
servercfg dbf6f1034b Merge pull request #2058 from gravitl/feature_emqx %!s(int64=2) %!d(string=hai) anos
serverctl 9b072e1050 remove network capabilities from netmaker %!s(int64=2) %!d(string=hai) anos
stun-server 5014c389ca adjusted main to use one single context %!s(int64=2) %!d(string=hai) anos
test b7009ea14e remove agentbackend %!s(int64=2) %!d(string=hai) anos
tls adaf8f1ca6 initial changes to make cert <-> broker comms work %!s(int64=3) %!d(string=hai) anos
validation f632bec11d merge conflicts resolved %!s(int64=3) %!d(string=hai) anos
.dockerignore 974627a9ab reorg of dockerfiles %!s(int64=3) %!d(string=hai) anos
.fpm ab3e643d5e add rpms %!s(int64=3) %!d(string=hai) anos
.gitignore 72180e0980 make goreleaser work on publish release %!s(int64=2) %!d(string=hai) anos
.goreleaser.prerelease.yaml 9038b18745 new release workflows %!s(int64=2) %!d(string=hai) anos
.goreleaser.update.yaml f4067b29ae cleanup %!s(int64=2) %!d(string=hai) anos
.goreleaser.yaml 9038b18745 new release workflows %!s(int64=2) %!d(string=hai) anos
CONTRIBUTING.md 95659ef0a5 Create CONTRIBUTING.md %!s(int64=3) %!d(string=hai) anos
Dockerfile 3fcbce7ab6 workflow updates %!s(int64=2) %!d(string=hai) anos
Dockerfile-quick 88cd0a6497 initial commit %!s(int64=3) %!d(string=hai) anos
LICENSE.txt 375482c16d updating docs %!s(int64=4) %!d(string=hai) anos
README.md 130d2de565 update develop to 0.18.2 %!s(int64=2) %!d(string=hai) anos
SECURITY.md 3c2bc3e683 Update SECURITY.md %!s(int64=2) %!d(string=hai) anos
dev.yaml f7ed4bba2b remove grpc parameters %!s(int64=2) %!d(string=hai) anos
go.mod 6b7f7e53cb Merge pull request #2033 from gravitl/dependabot/go_modules/develop/golang.org/x/oauth2-0.5.0 %!s(int64=2) %!d(string=hai) anos
go.sum 6b7f7e53cb Merge pull request #2033 from gravitl/dependabot/go_modules/develop/golang.org/x/oauth2-0.5.0 %!s(int64=2) %!d(string=hai) anos
main.go a0519cc16a merge develop %!s(int64=2) %!d(string=hai) anos
main_ee.go b670755cce refactoring for ee %!s(int64=3) %!d(string=hai) anos
release.md c113c644d7 typo %!s(int64=2) %!d(string=hai) anos
swagger.yaml 828b3f7162 remove local network/range %!s(int64=2) %!d(string=hai) anos

README.md

Y-Combinator

WireGuard® automation from homelab to enterprise

Create Manage Automate
:heavy_check_mark: WireGuard Networks :heavy_check_mark: Admin UI :heavy_check_mark: Linux
:heavy_check_mark: Remote Access Gateways :heavy_check_mark: OAuth :heavy_check_mark: FreeBSD
:heavy_check_mark: Mesh VPNs :heavy_check_mark: Private DNS :heavy_check_mark: Mac
:heavy_check_mark: Site-to-Site :heavy_check_mark: Access Control Lists :heavy_check_mark: Windows

Get Started in 5 Minutes

(For production-grade installations, visit the Install Docs.)

  1. Get a cloud VM with Ubuntu 22.04 and a public IP.
  2. Open ports 443, 80, and 51821-51830/udp on the VM firewall and in cloud security settings.
  3. (optional) Prepare DNS - Set a wildcard subdomain in your DNS for Netmaker, e.g. *.netmaker.example.com
  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 gives you the option to deploy the Community or Enterprise version of Netmaker. If deploying Enterprise, you get a free account with a 50 node limit by default. 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 versions are published under the Server Side Public License (SSPL), version 1, which can be found here: LICENSE.txt.