2
0

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

Alex 9dc83c80a4 Merge pull request #28 from gravitl/add-tests 4 жил өмнө
config 0bacbd9f6c first commit 4 жил өмнө
controllers 2063b3dcdc adding returns for auth to remove superfluous writeheader calls 4 жил өмнө
docs 8caac00a87 updating docs 4 жил өмнө
functions e489a18492 hotfixes for repo. Now works. 4 жил өмнө
grpc 0bacbd9f6c first commit 4 жил өмнө
licensing 0bacbd9f6c first commit 4 жил өмнө
models 0bacbd9f6c first commit 4 жил өмнө
mongoconn 0bacbd9f6c first commit 4 жил өмнө
netclient 28110da266 added prereq check for ipv4 forwarding and for wireguard 4 жил өмнө
test 0bacbd9f6c first commit 4 жил өмнө
.gitignore 0bacbd9f6c first commit 4 жил өмнө
Dockerfile 0bacbd9f6c first commit 4 жил өмнө
README.md 78f36921ab changing build step 4 жил өмнө
defaultvalues.sh e489a18492 hotfixes for repo. Now works. 4 жил өмнө
docker-compose.yml 41e00903aa modify docker compose 4 жил өмнө
go.mod 2a2d9109b0 tidy up of commented-out code and spelling errors 4 жил өмнө
go.sum 2a2d9109b0 tidy up of commented-out code and spelling errors 4 жил өмнө
main.go e489a18492 hotfixes for repo. Now works. 4 жил өмнө
mesh-diagram.png 0bacbd9f6c first commit 4 жил өмнө
netmaker.png 1ced7fe53a updating logo 4 жил өмнө
user_test.go 2a2d9109b0 tidy up of commented-out code and spelling errors 4 жил өмнө

README.md

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

What is Netmaker?

Netmaker lets you easily create secure virtual networks: Just spin up a Netmaker server and install the agent on your computers. Netmaker relies on WireGuard to create encrypted tunnels between every node in your virtual network, creating a mesh overlay. Netmaker takes the work out of manually configuring machines and updating them every time something changes in your network. The agents are self-updating and pull necessary changes from the server.

Netmaker also has a handy dandy UI, which you can find in this repo. We recommend deploying the UI alongside the server to make the experience easier and better.

Why Netmaker?

  1. Create a flat, secure network between multiple/hybrid cloud environments
  2. Integrate central and edge services + IoT
  3. Secure an office or home 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

Docs

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

Compatible Systems

This should work on most linux systems that have systemd. It works with Fedora, Ubuntu, and Raspian. Just make sure you have wireguard installed (WireGuard tools). It is recommended to also enable port forwarding, or you may have issues behind NAT.

Quick Start

Setup Docker (Prereq):

  1. Create an access token on github with artifact access.
  2. On your VPS, create a file in the home dir called TOKEN.txt with the value of your token inside.
  3. cat ~/TOKEN.txt | sudo docker login https://docker.pkg.github.com -u GITHUB_USERNAME --password-stdin

Setup Server:

  1. Clone this repo or just copy contents of "docker-compose.yml" to a machine with a public IP.
  2. In docker-compose.yml, change BACKEND_URL to the public IP ofthat machine.
  3. Run sudo docker-compose up
  4. Navigate to your IP and you should see the WireCat UI asking for a new admin user (if not or if it takes you straight to login screen without asking for user creation, investigate the error).
  5. Create the admin user
  6. Click "Create Group" and fill out the details (group == network)
  7. You are now ready to begin using WireCat. Create a key or "allow manual node sign up."

Run on each machine in network:

  1. While repo is private, you'll need your github access key for next step.
  2. Get the binary: curl -vLJO -H 'Authorization: token YOUR_ACCESS_TOKEN' 'https://github.com/gravitl/netmaker/releases/download/v0.1/netclient'
  3. Make it executable: sudo chmod +x meshclient
  4. Run the install command: sudo ./meshclient -c install -g <group name> -s <server:port> -k <key value>

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.