需在云防火墙放行 443、51821 的 TCP 和 UDP 入站,并放行全部 TCP/UDP 出站;建议先配置指向公网 IP 的通配符子域 DNS;PRO 版本需按独立文档安装,不走该脚本。
netmaker
gravitl活跃维护基于 WireGuard 的虚拟组网工具,能自动搭建快速、安全、分布式的 Mesh 覆盖网络,适合自建远程访问和站点互联。
Netmaker makes networks with WireGuard. Netmaker automates fast, secure, and distributed virtual networks.
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.shREADME 未说明具体硬件或显存要求;自托管需一台带静态公网 IP 的 Ubuntu 24.04 云主机。
基于 WireGuard 的虚拟网络自动化平台,帮你快速搭建并管理分布式 Mesh VPN
基于 WireGuard 的虚拟组网工具,能自动搭建快速、安全、分布式的 Mesh 覆盖网络,适合自建远程访问和站点互联。
核心能力
- 用 WireGuard 内核态驱动组建 Mesh VPN 与站点到站点网络
- 提供 Admin UI、OAuth 登录与私有 DNS 管理
- 用访问控制列表(ACL)管理网络访问权限
- 支持 Linux、Docker、Mac、Windows 多平台部署
- 提供远程访问网关与自托管快速安装脚本
容易踩的坑
- v1.7.0最新正式版2026-08-31 · 2026-08-31 14:48 UTC
Netmaker v1.7.0 Release Notes 🚀
🚀 What’s New
🏢 Multi-Tenancy for MSPs (Organisations & Tenants)
Run multiple customer environments from a single Netmaker server.
- Organizations & tenants - Group customers under an organisation; each tenant is an isolated Netmaker environment (networks, devices, users).
- MSP license sync - EE/MSP installs create and update orgs/tenants from the MSP license (including teardown when a tenant is removed from the license). CE and normal Pro accounts continue to use a single local default tenant.
- Scoped access - API and
nmctlselect the target org/tenant viaX-Organization-ID/X-Tenant-ID(--org_id/--tenant_id), withnmctl organisation listandnmctl tenant listfor discovery.
🔌 TCP Proxy / WSS Uplink
Gateways can publish a TCP/WSS uplink so clients can reach the mesh in restrictive environments when UDP is blocked.
- Enable TCP proxy on the gateway/host (
tcp_proxy_enabledand related listen/TLS settings). - Clients can opt into a TCP uplink to the gateway when the proxy is enabled.
- Supports self-signed and externally terminated TLS modes for WSS endpoints.
🛡️ EDR Integration (Pro)
Connect endpoint detection and response platforms for posture checks from Integrations.
- Supported providers: Microsoft Defender, CrowdStrike, SentinelOne, and Wazuh.
- Sync managed endpoints and evaluate EDR compliance (agent health/risk level) as part of device posture.
- Configure, test, and manage integrations via the REST API (
/api/v1/integrations/edr/{provider}).
📱 MDM Integration (Pro)
Connect mobile device management platforms for device compliance posture from Integrations.
- Supported providers: Microsoft Intune, Jamf, JumpCloud, and Iru.
- Match devices by Entra device ID, serial number, hardware UUID, or hostname.
- Enforce MDM enrollment/compliance checks alongside existing posture policies.
- Configure, test, and manage integrations via the REST API (
/api/v1/integrations/mdm/{provider}).
🗄️ Database Schema Migration
This release completes the SQL schema path and introduces multi-tenancy (org/tenant) bootstrap as part of the v1.7.0 migration.
Upgrade requirement (existing deployments):
- You must run Netmaker v1.6.0 successfully before upgrading to v1.7.0.
- v1.7.0 will refuse to start if
migration-v1.6.0has not completed on a prior v1.6.0 deployment. - Recommended path: deploy v1.6.0 → confirm the server starts cleanly → then upgrade to v1.7.0.
Impact:
- Schema and data are updated automatically on successful startup.
- Downgrades may not be supported after migration.
👉 Action Required:
- Do not jump from v1.5.x (or earlier) straight to v1.7.0 on an existing database.
- Ensure migrations complete and validate core functionality post-upgrade.
For detailed upgrade steps, refer to the official upgrade documentation:
🧰 Improvements & Fixes
-
Auto-relay peer reset - Reset a specific peer-to-peer connection that is using a relay (clear/reassign auto-relay for that peer pair) without resetting the entire network’s auto-relay state.
-
Host status - Host filtering uses live check-in status (Online/Offline/Disconnected) rather than a stale DB value.
-
MSP installs -
nm-quick.sh-sflag to skip nmctl/mesh/netclient on MSP server installs.
🐞 Known Issues
-
IPv6-only machines
Netclients cannot currently auto-upgrade on IPv6-only systems. -
Multi-network join performance
Multi-network netclient joins using an enrollment key still require optimisation. -
systemd-resolved DNS limitation
On systems using **systemd-resolved in
- v1.6.02026-06-12 · 2026-06-12 07:18 UTC
查看更新说明
Netmaker v1.6.0 Release Notes 🚀
🚀 What’s New
🔁 Site-to-Site ACLs (Beta)
Using Netmaker's Egress function at local sites, paired with local routing rules, you can bridge entire networks (site-to-site). Now, Netmaker allows you to define ACL policies that control what traffic is allowed between these sites.
- Build site-to-site rules between egress resources on different networks.
- Combine egress resources, nodes, and specific IPs in a single policy.
🛡️ Egress ACLs with IP Restriction
Netmaker's Egress function forwards traffic to external networks like offices and data centres. Netmaker's Access Controls can now target individual IPs inside of an egress range using the
ipACL target type. This enables you to limit access to specific IPs within an external network.- Restrict access to specific endpoints within a larger egress CIDR.
- Combine egress resources, nodes, tags, and individual IPs in the same policy.
📦 Egress Applications Catalogue (Beta)
Simplified application-aware egress routing with a built-in catalogue of popular SaaS and cloud services.
- Select from a catalogue of applications, including AWS, Google Cloud, Microsoft 365, Salesforce, GitHub, etc.
- Create egress resources directly from predefined application templates without manually managing domain lists.
- Automatically resolve and maintain application domains, ensuring routing policies stay up to date as services evolve.
- Reduce administrative overhead and improve policy consistency across environments.
⏱️ JIT Group Memberships
Just-In-Time (JIT) access is a workflow within Netmaker where users request temporary access to the network, which is approved by administrators for a predefined time period. JIT access within Netmaker can now be scoped to user groups per network.
- Enable JIT for all non-admin users, or limit it to selected user groups.
- Users request access; admins approve or deny with email notifications.
- Expired grants are cleaned up automatically, and users are notified.
🔗 SIEM Integration
Netmaker provides audit logs of actions and events on the platform. Netmaker can now be integrated with certain providers to forward audit events to your security stack.
- Supported providers: Splunk, Datadog, Elastic, and Microsoft Sentinel.
- Events are exported through the SIEM exporter service.
🔑 Default Enrollment Keys
Enrollment keys are how devices join the network via Netclient. Administrators can now designate a default enrollment key for any network in order to simplify device onboarding.
- Set default enrollment keys per network.
- Regenerate key tokens without recreating the key.
🗄️ Database Schema Migration
This release introduces schema changes to the following core entities:
- Nodes
- Pending Users
- User Invites
- Posture Check Violations
Impact:
- The database structure will be updated automatically during the upgrade.
- Downgrades may not be supported after migration.
👉 Action Required:
- Ensure the application starts successfully and migrations are complete.
- Validate core functionality post-upgrade.
For detailed upgrade steps, refer to the official upgrade documentation:
🧰 Improvements & Fixes
-
Netclient registration UX — Host registration over OAuth/basic auth now returns clear websocket close reasons on failure (auth errors, missing access, posture violations, and server errors).
-
User group management — Streamlined user role permissions and group updates, role-downgrade handling.
-
Orphan reference cleanup — Removes stale network references left behind after resource deletion.
-
Scalability & reliability — Optimised node status calculation, offline-status hooks, zom
- v1.5.12026-03-31 · 2026-03-31 14:40 UTC
查看更新说明
Netmaker v1.5.1 Release Notes 🚀
⚠️ Migration Notes (Important)
These changes may impact existing deployments. Please review carefully before upgrading.
❗Legacy ACLs Removal
Legacy ACLs have been fully removed as part of the transition to the new access control model.
Impact:
- Existing configurations using legacy ACLs will no longer function
- Access behaviour may change after the upgrade
👉 Action Required:
- Review existing access policies
- Reconfigure them using the new access control model before upgrading
🗄️ Database Schema Migration
This release introduces schema changes to the following core entities:
- Users
- Groups
- Roles
- Networks
- Hosts
Impact:
- The database structure will be updated automatically during the upgrade
- Downgrades may not be supported after migration.
👉 Action Required:
- Ensure the application starts successfully and migrations are complete
- Validate core functionality post-upgrade
For detailed upgrade steps, refer to the official upgrade documentation:
🚀 What’s New
🔁 Traffic Logs (Beta)
Traffic Logs have now moved into Beta.
- Traffic Logs are now enriched with relevant domain tagging, making network activity easier to audit and investigate.
🧰 Improvements & Fixes
-
Scalability & Reliability Improvements Introduced a peer update debouncer that coalesces rapid-fire PublishPeerUpdate calls into a single broadcast — a 500ms resettable debounce window capped by a 3s max-wait deadline ensures back-to-back operations (bulk node updates, gateway changes, host deletions) produce one peer update instead of dozens, drastically reducing CPU and MQTT pressure on the control plane
Pre-warms peer update caches after each debounced broadcast so pull requests from hosts are served instantly from cache instead of triggering expensive on-demand computation
Batched metrics export to netmaker exporter via periodic ticker instead of publishing on every individual MQTT metrics message, reducing continuous CPU pressure from Prometheus scraping
-
Database Schema Migration
Added schema migrations for the Users, Groups, Roles, Networks, and Hosts tables. -
Deprecated Legacy ACLs
Legacy ACLs have been fully removed as part of the platform’s transition to the updated access control model. -
Paginated APIs
Introduced pagination support for Users and Hosts APIs. -
DNS
Added native Active Directory support. -
Posture Checks
Nodes can now skip the auto-update check during join, improving join reliability in controlled environments. -
IDP Sync
Improved identity provider sync behavior:- Synced IDP groups are now denied access by default until explicitly granted.
- Okta-specific settings are now reset when an IDP integration is removed.
-
HA Setup
Streamlined high availability (HA) setup and operational workflows. -
Install Script
Added on-demand Monitoring Stack installation support via:
./nm-quick.sh -m -
Monitoring Stack
Updated the monitoring stack to use the official Prometheus and Grafana images. -
HA Gateways Reset Auto Assigned gw when it is disconnected from the network.
🐞 Known Issues
-
IPv6-only machines
Netclients cannot currently auto-upgrade on IPv6-only systems. -
Multi-network join performance
Multi-network netclient joins using an enrollment key still require optimization. -
systemd-resolved DNS limitation
On systems using systemd-resolved in uplink mode, only the first 3 entries inresolv.confare honored; additional entries are ignored. This may c
- v1.5.02026-02-11 · 2026-02-11 18:12 UTC
查看更新说明
Netmaker v1.5.0 Release Notes 🚀
🚀 What’s New
🔓 Just-In-Time Access (beta)
-
Time-limited, on-demand network access: users request access, admins approve or deny, and grants expire automatically.
-
Request/approval workflow with configurable grant duration; admins retain full control over who accesses which networks and when.
🔁 Overlapping Egress Ranges (beta)
- Virtual NAT mode enables multiple egress routers to share overlapping IP ranges by assigning each egress a virtual range from a configurable pool.
- Configurable per-network IPv4 pool and site prefix length for virtual range allocation.
- Eliminates routing conflicts when multiple sites need to egress the same destination CIDRs (e.g., multiple offices routing to the same cloud VPC).
- Supports both direct NAT and virtual NAT modes for flexible egress configurations.
🌍 Gateway Monitoring
- Desktop App connections automatically fail over to healthy gateway hubs when the primary becomes unavailable.
- Gateway health is monitored via connectivity checks and last-seen metrics; only online gateways are used for new connections.
🧰 Improvements & Fixes
-
IP Detection Interval User can now choose the Device Endpoint IP detection interval based on their requirements.
-
User Migration: Optimized user migration logic to reduce server startup time.
-
DNS: Use Global Nameservers only if no match-all nameservers are configured, added fallback nameserver configuration.
-
Darwin: Netclients on macOS can now use internet gateway.
-
GeoLocation: Consolidate IP location API usage with fallbacks
Known Issues 🐞
-
netclients cannot auto-upgrade on ipv6-only machines.
-
Need to optimize multi-network netclient join with enrollment key
-
On systems using systemd-resolved in uplink mode, the first 3 entries in resolv.conf are used and rest are ignored. So it might cause DNS issues. Stub mode is preferred.
-
When a Windows desktop app is connected to a Full Tunnel Gateway, and a Split Tunnel Gateway at the same time, the gateway monitoring component would disconnect from the split tunnel gateway.
-
- v1.4.02025-12-22 · 2025-12-22 16:22 UTC
查看更新说明
Netmaker v1.4.0 Release Notes 🚀
🚀 What’s New
🌍 Posture Checks (beta)
- Security feature that validates device compliance against configured policies based on device attributes such as OS, OS version, kernel version, client version, geographic location, and auto-update status.
- Supports tag-based and user group-based assignment of posture checks to specific devices or users.
- Tracks violations with configurable severity levels and provides real-time evaluation of device compliance.
- Helps ensure only compliant devices can access network resources.
🔁 Network Traffic Logging (alpha)
- Comprehensive network flow logging system that captures and stores network traffic metadata.
- Tracks source and destination IPs, ports, protocols, bytes/packets sent/received, and connection timestamps.
- Provides API endpoints for querying flow data with filters by network, node, user, protocol, and time range.
- Enables network administrators to monitor, analyze, and audit network traffic patterns for security and troubleshooting purposes.
🌐 K8s Operator with Cluster Access, Egress and Ingress functionality (beta)
- Cluster Egress: Expose Netmaker network services to Kubernetes workloads using standard Service names.
- Cluster Ingress: Expose Kubernetes services to devices on your Netmaker network.
- API Proxy: Secure access to Kubernetes API servers through Netmaker tunnels with RBAC support.
🔄 Auto Removal of Offline Peers
- Automatically removes nodes that have been offline for a configurable threshold period.
- Configurable per network with customizable timeout thresholds (in minutes).
- Supports tag-based filtering to selectively apply auto-removal to specific device groups.
- Helps maintain clean network topology by removing stale or abandoned peer connections.
🧩 Onboarding Flow
- Streamlined user onboarding experience during signup for workspace setup.
🧰 Improvements & Fixes
-
Azure IDP sync: Fixed User sync by group filters.
-
User Migration: Optimised User migration logic to reduce server start up time.
-
Config Files: Avoid Auto enabling of configs on user login.
-
Egress Domain Updates: Fixed domain-related issues in egress configurations to ensure consistent routing behavior.
Known Issues 🐞
-
netclients cannot auto-upgrade on ipv6-only machines.
-
Need to optimize multi-network netclient join with enrollment key
-
On systems using systemd-resolved in uplink mode, the first 3 entries in resolv.conf are used and rest are ignored. So it might cause DNS issues. Stub mode is preferred.
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
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: Docker |
| :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 |
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.
- Get a cloud VM with Ubuntu 24.04 and a static public IP.
- 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.
- (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.
- 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/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.