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

Matthew R Kasun 0f39fe9952 Merge pull request #11 from mattkasun/arm-docker 4 years ago
.github 0f39fe9952 Merge pull request #11 from mattkasun/arm-docker 4 years ago
config 0bacbd9f6c first commit 4 years ago
controllers 5725530d56 auto delete timestamp works 4 years ago
docs aeb13da21b changed wirecat --> netmaker. Changed defaults to be more sensible 4 years ago
functions 779dc6d499 added access token for ease of configuration 4 years ago
grpc 5725530d56 auto delete timestamp works 4 years ago
licensing 0bacbd9f6c first commit 4 years ago
models 5725530d56 auto delete timestamp works 4 years ago
mongoconn aeb13da21b changed wirecat --> netmaker. Changed defaults to be more sensible 4 years ago
netclient 5725530d56 auto delete timestamp works 4 years ago
test b08a260a92 Refactor tests and move to test dir 4 years ago
.gitignore 0bacbd9f6c first commit 4 years ago
Dockerfile 0bacbd9f6c first commit 4 years ago
README.md 38c07f6c68 Update README.md 4 years ago
defaultvalues.sh e489a18492 hotfixes for repo. Now works. 4 years ago
docker-compose.yml 1f377997cb fixed client side for multinet and added group filter to query params server side. 4 years ago
go.mod 2a2d9109b0 tidy up of commented-out code and spelling errors 4 years ago
go.sum 2a2d9109b0 tidy up of commented-out code and spelling errors 4 years ago
group_test.go 5a4dd303d2 Refactor tests and move to test dir 4 years ago
main.go 779dc6d499 added access token for ease of configuration 4 years ago
mesh-diagram.png 0bacbd9f6c first commit 4 years ago
netclient-install.sh 0fe6477671 Update netclient-install.sh 4 years ago
netmaker.png ba711d1b39 Add files via upload 4 years ago

README.md

Connect any computers together over a secure, fast, private network, and manage multiple networks from a central server.

What is Netmaker?

Netmaker is a tool for creating and managing virtual networks. The goal is to make virtual/overlay/mesh networking easy for non-networking people. 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.

Why Netmaker?

  1. Create a flat, secure network between multiple/hybrid cloud environments
  2. Integrate central and edge services
  3. Secure a home or office network while providing remote connectivity
  4. Manage cryptocurrency proof-of-stake machines
  5. Provide an additional layer of security on an existing network
  6. Encrypt Kubernetes inter-node communications
  7. Secure site-to-site connections

Compatible Systems

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.

Docs

For more information, please read the docs, or check out the Quick Start below:

Quick Start

Video Tutorial

Prereqs:

  1. A server with an IP reachable by your computers (a small ec2 instance or droplet would do just fine).
  2. Linux installed on the above server (we use Ubuntu, but anything that runs Docker should work).
  3. Install Docker (can run without Docker as well, but is not preferred. If this is a requirement, view the Advanced Usage docs).

Launch Netmaker:

  1. Clone this repo or just copy contents of "docker-compose.yml" to your Netmaker server (from prereqs).
  2. In docker-compose.yml, change BACKEND_URL to the public IP ofthat machine.
  3. Run sudo docker-compose up
  4. Navigate to your server's IP in the browser and you should see the Netmaker UI asking to create a new admin user.
  5. Create a new admin user
  6. . Click "Create Network" and fill out the details
  7. You are now ready to begin using Netmaker. Create a key or enable manual node sign up so that your nodes can connect.

On your machines :

Run the following: curl -sfL https://raw.githubusercontent.com/gravitl/netmaker/v0.1/netclient-install.sh | SERVER_URL=<your server ip>:50051 NET_NAME=<your network name> KEY=<your access key> sh -
(Note: Key can be left out if manual node signup is enabled)

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 under the "licensing" directory: LICENSE.txt.

CONTACT

Email: [email protected]
Discord: https://discord.gg/zRb9Vfhk8A

SUPPORT

BTC: 3JE5ejpwu9i4vwA4rePkEDBEPpFY1xzJuN
ETH: 0xB6c5D23F2bE2100A5a2D337911A7Ef7575B4f91A