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

Matthew R. Kasun 7f8bdd3f3e Merge branch 'develop' into netclient_refactor_merge %!s(int64=2) %!d(string=hai) anos
.github 7f8bdd3f3e Merge branch 'develop' into netclient_refactor_merge %!s(int64=2) %!d(string=hai) anos
auth 7f8bdd3f3e Merge branch 'develop' into netclient_refactor_merge %!s(int64=2) %!d(string=hai) anos
cli ae6a12b16b Merge pull request #1887 from gravitl/feature_cli_sso %!s(int64=2) %!d(string=hai) anos
compose 7f8bdd3f3e Merge branch 'develop' into netclient_refactor_merge %!s(int64=2) %!d(string=hai) anos
config b3f90f2929 add hostid and separate server name/broker name %!s(int64=2) %!d(string=hai) anos
controllers 7f8bdd3f3e Merge branch 'develop' into netclient_refactor_merge %!s(int64=2) %!d(string=hai) anos
database 88cd0a6497 initial commit %!s(int64=3) %!d(string=hai) anos
docker 0c719eaa05 Merge pull request #1850 from gravitl/bugfix_caddy_certs %!s(int64=2) %!d(string=hai) anos
ee 6611941ca2 Replaced string methods with HTTP consts %!s(int64=2) %!d(string=hai) anos
functions b670755cce refactoring for ee %!s(int64=3) %!d(string=hai) anos
k8s a6a16cf934 updated versions %!s(int64=2) %!d(string=hai) anos
logger f63b88db73 fixing sso error handling %!s(int64=3) %!d(string=hai) anos
logic 7f8bdd3f3e Merge branch 'develop' into netclient_refactor_merge %!s(int64=2) %!d(string=hai) anos
models 457060d41a fix(GRA-752f): add address string to be sent to frontend %!s(int64=2) %!d(string=hai) anos
mq 457060d41a fix(GRA-752f): add address string to be sent to frontend %!s(int64=2) %!d(string=hai) anos
netclient a6a16cf934 updated versions %!s(int64=2) %!d(string=hai) anos
nginx 7152f6ccd4 remove references to grpc/comms net %!s(int64=3) %!d(string=hai) anos
scripts 7ca0d1cd7e adding missing lines %!s(int64=2) %!d(string=hai) anos
servercfg dfd5961c6c update server connection %!s(int64=2) %!d(string=hai) anos
serverctl 71d66b7f93 Refactored user functions to use refrences rather than values %!s(int64=2) %!d(string=hai) anos
test e878e4820a Fixes+Chores: avoid de-referencing nil ptrs + lint %!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 7f1aa4bf10 remove nmctl, add to gitignore %!s(int64=2) %!d(string=hai) anos
CONTRIBUTING.md 95659ef0a5 Create CONTRIBUTING.md %!s(int64=3) %!d(string=hai) anos
Dockerfile e7427c89cc refactor workflow %!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 a6a16cf934 updated versions %!s(int64=2) %!d(string=hai) anos
SECURITY.md ec31ccd237 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 7f8bdd3f3e Merge branch 'develop' into netclient_refactor_merge %!s(int64=2) %!d(string=hai) anos
go.sum 7f8bdd3f3e Merge branch 'develop' into netclient_refactor_merge %!s(int64=2) %!d(string=hai) anos
main.go a9d86e19df 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 a6a16cf934 updated versions %!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.