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

0xdcarns a8eb6efa73 hotfix_workflow %!s(int64=2) %!d(string=hai) anos
.github a8eb6efa73 hotfix_workflow %!s(int64=2) %!d(string=hai) anos
auth 8d19451244 remove log %!s(int64=3) %!d(string=hai) anos
compose a41d63de29 Don't expore ports unnecessarily %!s(int64=2) %!d(string=hai) anos
config f632bec11d merge conflicts resolved %!s(int64=3) %!d(string=hai) anos
controllers 9fb0380f68 swagger version udpate %!s(int64=2) %!d(string=hai) anos
database 88cd0a6497 initial commit %!s(int64=3) %!d(string=hai) anos
docker 273116d55d Merge branch 'master' into release_v0.17.0 %!s(int64=2) %!d(string=hai) anos
ee fa087401b3 move user-groups and network-users to enterprise controllers %!s(int64=2) %!d(string=hai) anos
functions b670755cce refactoring for ee %!s(int64=3) %!d(string=hai) anos
k8s 5689ef5440 updated versions to v0.17.0 where apllicable %!s(int64=2) %!d(string=hai) anos
logger f63b88db73 fixing sso error handling %!s(int64=3) %!d(string=hai) anos
logic 50a1c3a018 changed verbosity for zombie checking log message %!s(int64=2) %!d(string=hai) anos
models 75fc15ac4c commented out logic %!s(int64=2) %!d(string=hai) anos
mq 6b8d633386 use local variable for mq configuration %!s(int64=2) %!d(string=hai) anos
netclient 5689ef5440 updated versions to v0.17.0 where apllicable %!s(int64=2) %!d(string=hai) anos
nginx 7152f6ccd4 remove references to grpc/comms net %!s(int64=3) %!d(string=hai) anos
scripts 22256a0a68 fixing installer script %!s(int64=2) %!d(string=hai) anos
servercfg 5384ff14e2 update server connection %!s(int64=2) %!d(string=hai) anos
serverctl 1de2989b84 move logic to serverctl.setNetworkDefaults() %!s(int64=2) %!d(string=hai) anos
test 7152f6ccd4 remove references to grpc/comms net %!s(int64=3) %!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 bc1eb17bad removing windows installer portions %!s(int64=3) %!d(string=hai) anos
CONTRIBUTING.md 95659ef0a5 Create CONTRIBUTING.md %!s(int64=3) %!d(string=hai) anos
Dockerfile 0338f333c3 change go build tags params %!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 22256a0a68 fixing installer script %!s(int64=2) %!d(string=hai) anos
SECURITY.md 3c2bc3e683 Update SECURITY.md %!s(int64=2) %!d(string=hai) anos
dev.yaml 501108b53d Remove config.Server.Debug %!s(int64=3) %!d(string=hai) anos
go.mod 757d659d5b Merge pull request #1737 from gravitl/dependabot/go_modules/develop/github.com/urfave/cli/v2-2.23.5 %!s(int64=2) %!d(string=hai) anos
go.sum 757d659d5b Merge pull request #1737 from gravitl/dependabot/go_modules/develop/github.com/urfave/cli/v2-2.23.5 %!s(int64=2) %!d(string=hai) anos
main.go 966412e7c0 Fix #1750 %!s(int64=2) %!d(string=hai) anos
main_ee.go b670755cce refactoring for ee %!s(int64=3) %!d(string=hai) anos
swagger.yaml 9fb0380f68 swagger version udpate %!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-interactive.sh https://raw.githubusercontent.com/gravitl/netmaker/master/scripts/nm-quick-interactive.sh && sudo chmod +x /root/nm-quick-interactive.sh && sudo /root/nm-quick-interactive.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.