Netmaker makes networks with WireGuard. Netmaker automates fast, secure, and distributed virtual networks.
Find a file
2025-12-20 13:24:05 +05:30
.github Build(deps): bump actions/checkout from 5 to 6 (#3748) 2025-12-05 18:16:44 +04:00
auth check feature flags for auto join 2025-11-21 10:40:20 +04:00
cli remove duplicate cli table pkg 2025-06-24 07:11:46 +05:30
clickhouse NM-168: Network Flow Logs (#3754) 2025-12-12 14:12:00 +04:00
compose Remove Flow Logs Infra Changes (#3778) 2025-12-13 15:21:23 +04:00
config NM-168: Network Flow Logs (#3754) 2025-12-12 14:12:00 +04:00
controllers feat: add fallback nameserver support; 2025-12-20 13:24:05 +05:30
database feat(go): skip setting open connections; 2025-06-10 15:26:42 +05:30
db feat(go): use the same schema; 2025-06-10 10:18:30 +05:30
docker Remove Flow Logs Infra Changes (#3778) 2025-12-13 15:21:23 +04:00
docs fix: update documentation links to new docs (#3156) 2024-10-17 14:35:36 +04:00
functions Merge pull request #3744 from gravitl/NM-167 2025-12-05 09:52:53 +04:00
grpc/flow NM-168: Network Flow Logs (#3754) 2025-12-12 14:12:00 +04:00
k8s v1.2.0: update release notes (#3723) 2025-11-07 09:17:46 +04:00
logger
logic feat: add fallback nameserver support; 2025-12-20 13:24:05 +05:30
migrate feat: add fallback nameserver support; 2025-12-20 13:24:05 +05:30
models feat: add fallback nameserver support; 2025-12-20 13:24:05 +05:30
mq NM-168: Network Flow Logs (#3754) 2025-12-12 14:12:00 +04:00
netclient/ncutils load all nodes into cache 2024-11-27 14:56:24 +04:00
nginx
pro feat: add fallback nameserver support; 2025-12-20 13:24:05 +05:30
schema feat: add fallback nameserver support; 2025-12-20 13:24:05 +05:30
scripts Remove Flow Logs Infra Changes (#3778) 2025-12-13 15:21:23 +04:00
servercfg NM-168: Network Flow Logs (#3754) 2025-12-12 14:12:00 +04:00
serverctl NET-1933: option to force destroy network (#3311) 2025-02-03 15:19:44 +04:00
test
tls
utils change fmt to slog 2025-11-29 16:26:55 +04:00
validation
.dockerignore
.fpm
.gitignore NET-1996: Add Support for TOTP Authentication. (#3517) 2025-06-26 08:29:13 +05:30
.goreleaser.prerelease.yaml
.goreleaser.update.yaml
.goreleaser.yaml
.swaggo add format int64 for swagger doc (#3247) 2024-12-12 09:52:52 +04:00
CONTRIBUTING.md
dev.yaml
Dockerfile NM-168: Network Flow Logs (#3754) 2025-12-12 14:12:00 +04:00
Dockerfile-quick Build(deps): bump alpine from 3.22.2 to 3.23.0 (#3773) 2025-12-11 10:40:35 +04:00
go.mod NM-168: Network Flow Logs (#3754) 2025-12-12 14:12:00 +04:00
go.sum NM-168: Network Flow Logs (#3754) 2025-12-12 14:12:00 +04:00
LICENSE.md
main.go NM-168: Network Flow Logs (#3754) 2025-12-12 14:12:00 +04:00
main_ee.go NET-1778: scale test code changes (#3203) 2024-12-10 10:15:31 +04:00
README.md v1.2.0: update release notes (#3723) 2025-11-07 09:17:46 +04:00
release.md v1.2.0: update release notes (#3723) 2025-11-07 09:17:46 +04:00
SECURITY.md
swagger.yaml v1.2.0: update release notes (#3723) 2025-11-07 09:17:46 +04:00

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 a few clicks, visit netmaker.io to create your netmaker server.

Self-Hosted Open Source Quick Start

These are the instructions for deploying a Netmaker server on your cloud VM as quickly as possible. For more detailed instructions, visit the Install Docs.

  1. Get a cloud VM with Ubuntu 24.04 and a static public IP.
  2. Allow inbound traffic on port 443,51821 TCP and UDP to the VM firewall in cloud security settings, and for simplicity, allow outbound on All TCP and All UDP.
  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 to setup open source version of Netmaker:

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

To Install Self-Hosted PRO Version - https://docs.netmaker.io/docs/server-installation/netmaker-professional-setup

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 centres, clouds, and edge devices, so you don't have to.

  • Kernel WireGuard offers maximum speed, performance, and security.

  • Netmaker is built to scale from small businesses to enterprises.

  • 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.