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 3d364774f3 concealed hostpass return %!s(int64=2) %!d(string=hai) anos
.github a80ed636e0 cleanup test job %!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 92af578ab1 remove point to site from nmctl %!s(int64=2) %!d(string=hai) anos
compose 518acbd701 remove coredns specific env vars %!s(int64=2) %!d(string=hai) anos
config 9b072e1050 remove network capabilities from netmaker %!s(int64=2) %!d(string=hai) anos
controllers 3d364774f3 concealed hostpass return %!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 8bfe255eab Merge remote-tracking branch 'origin/develop' into netclient_refactor_latest %!s(int64=2) %!d(string=hai) anos
ee 73dfc6fe47 correct using address of loop vars %!s(int64=2) %!d(string=hai) anos
functions b670755cce refactoring for ee %!s(int64=3) %!d(string=hai) anos
k8s e3434d52ad Merge pull request #1920 from gravitl/story/GRA-854 %!s(int64=2) %!d(string=hai) anos
logger f63b88db73 fixing sso error handling %!s(int64=3) %!d(string=hai) anos
logic e670cb04a1 Merge pull request #1984 from gravitl/bugfix_node_expiration %!s(int64=2) %!d(string=hai) anos
models 4e3ff513b7 remove point to site from network model %!s(int64=2) %!d(string=hai) anos
mq 6e50011ceb Merge pull request #1978 from gravitl/GRA-1060/bug_proxy_listen_port %!s(int64=2) %!d(string=hai) anos
netclient 8bfe255eab Merge remote-tracking branch 'origin/develop' into netclient_refactor_latest %!s(int64=2) %!d(string=hai) anos
nginx 7152f6ccd4 remove references to grpc/comms net %!s(int64=3) %!d(string=hai) anos
scripts 37c8a253b8 set STUN port %!s(int64=2) %!d(string=hai) anos
servercfg 232dd24337 remove CLIENT_MODE HOST_MODE %!s(int64=2) %!d(string=hai) anos
serverctl 9b072e1050 remove network capabilities from netmaker %!s(int64=2) %!d(string=hai) anos
stun-server 46d995a4d4 remove ununsed variables from stun server %!s(int64=2) %!d(string=hai) anos
test 1f00a5d890 fix build errors after merge conflict resolution %!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 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 9b072e1050 remove network capabilities from netmaker %!s(int64=2) %!d(string=hai) anos
go.sum 9b072e1050 remove network capabilities from netmaker %!s(int64=2) %!d(string=hai) anos
main.go f16280dfe0 add error on peer update fail %!s(int64=2) %!d(string=hai) anos
main_ee.go b670755cce refactoring for ee %!s(int64=3) %!d(string=hai) anos
swagger.yaml 9edb541388 remove localrange %!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.