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

Abhishek Kondur bf2f51ec3b update host struct in memory, set to proxy port if peer host is using proxy %!s(int64=2) %!d(string=hai) anos
.github 44e8ecd875 remove netclient releated workflows %!s(int64=2) %!d(string=hai) anos
auth 8d19451244 remove log %!s(int64=3) %!d(string=hai) anos
compose 80c7d46ec6 docker compose update, add stun to caddyfile %!s(int64=2) %!d(string=hai) anos
config 79aa9893dc change stun port to int type %!s(int64=2) %!d(string=hai) anos
controllers bf2f51ec3b update host struct in memory, set to proxy port if peer host is using proxy %!s(int64=2) %!d(string=hai) anos
database cc529ab3bd finished initial crud for hosts, fixed stun server close bug %!s(int64=2) %!d(string=hai) anos
docker 80c7d46ec6 docker compose update, add stun to caddyfile %!s(int64=2) %!d(string=hai) anos
ee 38cd4d7700 refactor join %!s(int64=2) %!d(string=hai) anos
functions b670755cce refactoring for ee %!s(int64=3) %!d(string=hai) anos
k8s 401488ba7c yaml fix %!s(int64=2) %!d(string=hai) anos
logger f63b88db73 fixing sso error handling %!s(int64=3) %!d(string=hai) anos
logic bf2f51ec3b update host struct in memory, set to proxy port if peer host is using proxy %!s(int64=2) %!d(string=hai) anos
models 8a9241d5e2 fix keepalive conversion type %!s(int64=2) %!d(string=hai) anos
mq 8c92308ccf made mq functions a little easier to read and re-use %!s(int64=2) %!d(string=hai) anos
netclient 38cd4d7700 refactor join %!s(int64=2) %!d(string=hai) anos
nginx 7152f6ccd4 remove references to grpc/comms net %!s(int64=3) %!d(string=hai) anos
nm-proxy 7c374d9763 record traffic in mb %!s(int64=2) %!d(string=hai) anos
scripts dba5052966 resolve conflicts %!s(int64=2) %!d(string=hai) anos
servercfg 8fc09fd5cd fix stun port format,use proxy listen port from node model %!s(int64=2) %!d(string=hai) anos
serverctl 38cd4d7700 refactor join %!s(int64=2) %!d(string=hai) anos
stun-server cc529ab3bd finished initial crud for hosts, fixed stun server close bug %!s(int64=2) %!d(string=hai) anos
test c086e9499d rebase %!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 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 664f085599 rm libpcap dependency %!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 5689ef5440 updated versions to v0.17.0 where apllicable %!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 9941c6bedc remove proxy payload from get node response %!s(int64=2) %!d(string=hai) anos
go.sum 9941c6bedc remove proxy payload from get node response %!s(int64=2) %!d(string=hai) anos
main.go 38cd4d7700 refactor join %!s(int64=2) %!d(string=hai) anos
main_ee.go b670755cce refactoring for ee %!s(int64=3) %!d(string=hai) anos
swagger.yaml fb84ddc6f1 remove unused endpoints %!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/test_v0.17.0_compose/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.