netmaker/README.md

113 lines
5.1 KiB
Markdown
Raw Normal View History

2021-03-26 00:17:52 +08:00
<p align="center">
2021-10-04 19:16:13 +08:00
<img src="netmaker.png" width="75%"><break/>
2021-03-26 00:17:52 +08:00
</p>
<p align="center">
2021-10-04 19:16:13 +08:00
<i>Create and control automated virtual networks.</i>
2021-03-26 00:17:52 +08:00
</p>
2021-10-07 06:24:38 +08:00
<p align="center">
<a href="https://github.com/gravitl/netmaker/releases">
2021-12-13 07:26:49 +08:00
<img src="https://img.shields.io/badge/Version-0.9.2-informational?style=flat-square" />
2021-10-07 06:24:38 +08:00
</a>
2021-10-29 04:37:51 +08:00
<a href="https://hub.docker.com/r/gravitl/netmaker/tags">
<img src="https://img.shields.io/docker/pulls/gravitl/netmaker" />
</a>
2021-10-30 03:00:38 +08:00
<a href="https://goreportcard.com/report/github.com/gravitl/netmaker">
<img src="https://goreportcard.com/badge/github.com/gravitl/netmaker" />
2021-10-07 06:24:38 +08:00
</a>
<a href="https://github.com/gravitl/netmaker/graphs/contributors">
2021-10-29 04:37:51 +08:00
<img src="https://img.shields.io/github/commit-activity/m/gravitl/netmaker?color=blue" />
2021-10-07 06:24:38 +08:00
</a>
<a href="https://twitter.com/intent/follow?screen_name=gravitlcorp">
<img src="https://img.shields.io/twitter/follow/gravitlcorp?style=social" />
</a>
<a href="https://www.youtube.com/channel/UCach3lJY_xBV7rGrbUSvkZQ">
<img src="https://img.shields.io/youtube/channel/views/UCach3lJY_xBV7rGrbUSvkZQ?style=social" />
</a>
</p>
2021-10-07 06:21:18 +08:00
2021-10-04 19:16:13 +08:00
# WireGuard® Automation from Homelab to Enterprise
- [x] Peer-to-Peer Mesh Networks
2021-11-29 21:16:35 +08:00
- [x] Kubernetes and Multi-Cloud Enablement
- [x] Remote Site Access via Gateway
- [x] OAuth and Private DNS Features
- [x] Support for Linux, Mac, Windows, FreeBSD, iPhone, and Android
2021-11-17 10:20:06 +08:00
# Get Started in 5 Minutes
2021-11-17 10:27:23 +08:00
**For DigitalOcean, use the 1-Click App:** <a href="https://marketplace.digitalocean.com/apps/netmaker?refcode=496ffcf1e252"><img src="https://www.deploytodo.com/do-btn-blue.svg" width="15%" /></a>
2021-11-17 21:21:30 +08:00
**For production-grade installations, visit the [Install Docs](https://netmaker.readthedocs.io/en/master/install.html).**
2021-10-20 23:06:54 +08:00
**For an HA install using helm on k8s, visit the [Helm Repo](https://github.com/gravitl/netmaker-helm/).**
2021-10-04 19:16:13 +08:00
1. Get a cloud VM with Ubuntu 20.04 and a public IP.
2. Open ports 443, 80, 53, and 51821-51830/udp on the VM firewall and in cloud security settings.
2021-10-29 05:31:29 +08:00
3. Run the script **(see below for optional configurations)**:
2021-11-18 00:14:22 +08:00
`sudo wget -qO - https://raw.githubusercontent.com/gravitl/netmaker/master/scripts/nm-quick.sh | bash`
2021-11-18 00:13:29 +08:00
<img src="./docs/images/install-server.gif" width="50%" /><img src="./docs/images/visit-website.gif" width="50%" />
2021-11-23 03:08:15 +08:00
Upon completion, the logs will display the instructions to connect various devices. These can also be retrived from the UI under "Access Keys."
2021-10-19 16:07:48 +08:00
2021-10-29 05:45:38 +08:00
After installing Netmaker, check out the [Walkthrough](https://itnext.io/getting-started-with-netmaker-a-wireguard-virtual-networking-platform-3d563fbd87f0) and [Getting Started](https://netmaker.readthedocs.io/en/master/getting-started.html) guides to learn more about configuring networks. Or, check out some of our other [Tutorials](https://gravitl.com/resources) for different use cases, including Kubernetes.
2021-10-29 04:37:51 +08:00
### Optional configurations
2021-10-29 05:31:29 +08:00
**Deploy a "Hub-And-Spoke VPN" on the server**
2021-10-29 05:45:38 +08:00
*This will configure a standard VPN (non-meshed) for private internet access, with 10 clients (-c).*
2021-11-17 21:21:30 +08:00
`sudo wget -qO - https://raw.githubusercontent.com/gravitl/netmaker/master/scripts/nm-quick.sh | bash -s -- -v true -c 10`
2021-10-29 04:37:51 +08:00
2021-10-30 00:38:13 +08:00
**Specify Domain and Email**
2021-10-29 05:45:38 +08:00
*Make sure your wildcard domain is pointing towards the server ip.*
2021-11-17 21:21:30 +08:00
`sudo wget -qO - https://raw.githubusercontent.com/gravitl/netmaker/master/scripts/nm-quick.sh | bash -s -- -d mynetmaker.domain.com -e example@email.com`
2021-10-29 04:37:51 +08:00
2021-10-29 05:31:29 +08:00
**Script Options**
2021-10-29 04:37:51 +08:00
```
./nm-quick
-d domain.example.com # specify a wildcard domain for netmaker to use (DNS must point to this server)
-e myemail@example.com # specify your email (for SSL certificates)
-m true # create a default 'mesh network' (on by default)
-v false # create a default 'VPN network' (off by default)
-c 7 # number of client configs to create (for VPN network, 5 by default)
```
2021-10-04 19:16:13 +08:00
# Why Netmaker + WireGuard?
2021-10-04 19:16:13 +08:00
- Netmaker automates virtual networks between data centers, clouds, and edge devices, so you don't have to.
2021-10-04 19:16:13 +08:00
- Kernel WireGuard offers maximum speed, performance, and security.
2021-03-30 04:10:18 +08:00
2021-10-04 19:16:13 +08:00
- Netmaker is built to scale from the small business to the enterprise.
2021-03-26 00:17:52 +08:00
2021-10-04 19:16:13 +08:00
- Netmaker with WireGuard can be highly customized for peer-to-peer, site-to-site, Kubernetes, and more.
2021-03-26 00:17:52 +08:00
2021-10-04 19:16:13 +08:00
# Get Support
2021-03-26 00:17:52 +08:00
2021-10-04 19:16:13 +08:00
- [Community (Discord)](https://discord.gg/zRb9Vfhk8A)
2021-03-26 00:17:52 +08:00
2021-10-04 19:16:13 +08:00
- [Business (Subscription)](https://gravitl.com/plans/business)
2021-03-26 00:17:52 +08:00
2021-10-29 05:31:29 +08:00
- [Learning Resources](https://gravitl.com/resources)
2021-11-22 20:54:01 +08:00
# Community Projects
- [Netmaker + Traefik Proxy](https://github.com/bsherman/netmaker-traefik)
- [OpenWRT Netclient Packager](https://github.com/sbilly/netmaker-openwrt)
- [Golang GUI](https://github.com/mattkasun/netmaker-gui)
2021-11-29 21:16:35 +08:00
- [CoreDNS Plugin](https://github.com/gravitl/netmaker-coredns-plugin)
- [Multi-Cluster K8S Plugin](https://github.com/gravitl/netmak8s)
- [Terraform Provider](https://github.com/madacluster/netmaker-terraform-provider)
2021-11-22 20:54:01 +08:00
2021-10-04 19:16:13 +08:00
## Disclaimer
[WireGuard](https://wireguard.com/) is a registered trademark of Jason A. Donenfeld.
2021-03-30 05:30:52 +08:00
2021-10-04 19:16:13 +08:00
## License
2021-10-07 06:24:38 +08:00
2021-10-04 19:16:13 +08:00
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](./LICENSE.txt).