VPN Network Service - Netmaker makes networks with WireGuard. Netmaker automates fast, secure, and distributed virtual networks.
#nebula #tailscale #mesh #vpn #golang #go #overlay #meshvpn
|
4 年之前 | |
---|---|---|
.github | 6f9da311ef add test branch PR and manual gen of docker images | 4 年之前 |
config | f61f6b1227 create default network on startup | 4 年之前 |
controllers | 2e5511a0ab userHttpController tests complete | 4 年之前 |
docs | 154f376cb4 Update USAGE.md | 4 年之前 |
functions | 5e114cba08 fixing address choosing | 4 年之前 |
grpc | 62ace03f5e gateway works but local address not being set to endpoint. | 4 年之前 |
models | 2e5511a0ab userHttpController tests complete | 4 年之前 |
mongoconn | 2ea497c6ff massive number of changes to schema and error handling. | 4 年之前 |
netclient | 529a511a79 fixed constant peer update issue | 4 年之前 |
serverctl | e2ec093eaf iptables now being set by client | 4 年之前 |
test | 4fc133c09d fixed validation | 4 年之前 |
.gitignore | 0bacbd9f6c first commit | 4 年之前 |
Dockerfile | 2226f51f02 updated usage docs and install methods | 4 年之前 |
LICENSE.txt | 375482c16d updating docs | 4 年之前 |
README.md | 22a3209295 Update README.md | 4 年之前 |
defaultvalues.sh | e489a18492 hotfixes for repo. Now works. | 4 年之前 |
docker-compose.yml | 2226f51f02 updated usage docs and install methods | 4 年之前 |
go.mod | 482c8616aa created dns api but no testing yet | 4 年之前 |
go.sum | 482c8616aa created dns api but no testing yet | 4 年之前 |
main.go | fa3faf778d fixed JWT token auth | 4 年之前 |
mesh-diagram.png | 0bacbd9f6c first commit | 4 年之前 |
netclient-install.sh | 642ab5b522 Update netclient-install.sh | 4 年之前 |
netmaker-install-clientmode.sh | bcbda3faac coredns api working | 4 年之前 |
netmaker-server.sh | 2226f51f02 updated usage docs and install methods | 4 年之前 |
netmaker.png | ba711d1b39 Add files via upload | 4 年之前 |
Connect any computers together over a secure, fast, private network, and manage multiple networks from a central server.
Netmaker is a tool for creating and managing virtual networks. The goal is to provide functionality similar to Tailscale, ZeroTier, and Nebula, but faster, easier, and more dynamic. It should be like clicking a button. Netmaker consists of a server, an agent, and a UI. You spin up the Netmaker server and then install netclient (the agent) on your computers. Netmaker will do the rest. It will tell all of your computers how to reach each other and will keep them informed of any changes to the network.
Netmaker's handy dandy UI can be found here.
Under the hood, Netmaker uses WireGuard to create encrypted tunnels between every node in your virtual network, creating a full mesh overlay. Netmaker takes the work out of manually configuring machines with WireGuard and updating them every time you have a change in your network. The netclient agent is self-updating and pulls any necessary changes (such as new peers) from the server.
Netmaker works on most linux systems that have systemd. It works with Fedora, Ubuntu, and Raspian. Just make sure you have WireGuard installed. Having a problem? Open an issue or Contact us.
In future releases, we have plans to support other platforms such as Windows and MacOS.
For more information, please read the docs, or check out the Quick Start below:
Intro/Overview Video Tutorial
Site-to-Site Video Tutorial
Netmaker v0.2 introduces the server as a 'client'. This means the server can add itself into networks if you would like. To do so, Netmaker requires privileged access where it is running, and needs to modify the host filesystem. To run in this mode, we are not currently using Docker.
If you would like to run with "client mode", you can use the following script to deploy:
sudo curl -sfL https://raw.githubusercontent.com/gravitl/netmaker/v0.2/netmaker-install-clientmode.sh | sudo SERVER_DOMAIN=< your server IP > sh -
If you would like to run without "client mode", and manually add/remove the server from networks:
sudo docker-compose up
A command will be displayed when you generate a token for signing up nodes. Run it on each machine you would like to connect.
curl -sfL https://raw.githubusercontent.com/gravitl/netmaker/v0.2/netclient-install.sh | KEY=<your access key> sh -
(Note: Key can be left out if manual node signup is enabled)
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.
Email: [email protected]
Discord: https://discord.gg/zRb9Vfhk8A