diff --git a/README.md b/README.md index 774004a2a..3ee00e134 100644 --- a/README.md +++ b/README.md @@ -36,46 +36,61 @@
-**NetBird is an open-source VPN management platform built on top of WireGuard® making it easy to create secure private networks for your organization or home.** +**NetBird combines a configuration-free peer-to-peer private network and a centralized access control system in a single platform, making it easy to create secure private networks for your organization or home.** -It requires zero configuration effort leaving behind the hassle of opening ports, complex firewall rules, VPN gateways, and so forth. +**Connect.** NetBird creates a WireGuard-based overlay network that automatically connects your machines over an encrypted tunnel, leaving behind the hassle of opening ports, complex firewall rules, VPN gateways, and so forth. -NetBird uses [NAT traversal techniques](https://en.wikipedia.org/wiki/Interactive_Connectivity_Establishment) to automatically create an overlay peer-to-peer network connecting machines regardless of location (home, office, data center, container, cloud, or edge environments), unifying virtual private network management experience. +**Secure.** NetBird isolates every machine and device by applying granular access policies, while allowing you to manage them intuitively from a single place. **Key features:** -- \[x] Automatic IP allocation and network management with a Web UI ([separate repo](https://github.com/netbirdio/dashboard)) -- \[x] Automatic WireGuard peer (machine) discovery and configuration. -- \[x] Encrypted peer-to-peer connections without a central VPN gateway. -- \[x] Connection relay fallback in case a peer-to-peer connection is not possible. -- \[x] Desktop client applications for Linux, MacOS, and Windows (systray). -- \[x] Multiuser support - sharing network between multiple users. -- \[x] SSO and MFA support. -- \[x] Multicloud and hybrid-cloud support. -- \[x] Kernel WireGuard usage when possible. -- \[x] Access Controls - groups & rules. -- \[x] Remote SSH access without managing SSH keys. -- \[x] Network Routes. -- \[x] Private DNS. -- \[x] Network Activity Monitoring. -**Coming soon:** -- \[ ] Mobile clients. +| Connectivity | Management | Automation | Platforms | +|-------------------------------------------------------------------|--------------------------------------------------------------------------|----------------------------------------------------------------------------|---------------------------------------| +| | | | | +| | | | | +| | | | | +| | | | | +| | | | | +| | | | | +| | | | | +| | | | | +| | | | | + ### Secure peer-to-peer VPN with SSO and MFA in minutes https://user-images.githubusercontent.com/700848/197345890-2e2cded5-7b7a-436f-a444-94e80dd24f46.mov -**Note**: The `main` branch may be in an *unstable or even broken state* during development. -For stable versions, see [releases](https://github.com/netbirdio/netbird/releases). +### Quickstart with NetBird Cloud -### Start using NetBird -- Hosted version: [https://app.netbird.io/](https://app.netbird.io/). -- See our documentation for [Quickstart Guide](https://docs.netbird.io/how-to/getting-started). -- If you are looking to self-host NetBird, check our [Self-Hosting Guide](https://docs.netbird.io/selfhosted/selfhosted-guide). -- Step-by-step [Installation Guide](https://docs.netbird.io/how-to/getting-started#installation) for different platforms. -- Web UI [repository](https://github.com/netbirdio/dashboard). -- 5 min [demo video](https://youtu.be/Tu9tPsUWaY0) on YouTube. +- Download and install NetBird at [https://app.netbird.io/install](https://app.netbird.io/install) +- Follow the steps to sign-up with Google, Microsoft, GitHub or your email address. +- Check NetBird [admin UI](https://app.netbird.io/). +- Add more machines. +### Quickstart with self-hosted NetBird + +> This is the quickest way to try self-hosted NetBird. It should take around 5 minutes to get started if you already have a public domain and a VM. +Follow the [Advanced guide with a custom identity provider](https://docs.netbird.io/selfhosted/selfhosted-guide#advanced-guide-with-a-custom-identity-provider) for installations with different IDPs. + +**Infrastructure requirements:** +- A Linux VM with at least **1CPU** and **2GB** of memory. +- The VM should be publicly accessible on TCP ports **80** and **443** and UDP ports: **3478**, **49152-65535**. +- **Public domain** name pointing to the VM. + +**Software requirements:** +- Docker installed on the VM with the docker compose plugin ([Docker installation guide](https://docs.docker.com/engine/install/)) or docker with docker-compose in version 2 or higher. +- [jq](https://jqlang.github.io/jq/) installed. In most distributions + Usually available in the official repositories and can be installed with `sudo apt install jq` or `sudo yum install jq` +- [curl](https://curl.se/) installed. + Usually available in the official repositories and can be installed with `sudo apt install curl` or `sudo yum install curl` + +**Steps** +- Download and run the installation script: +```bash +export NETBIRD_DOMAIN=netbird.example.com; curl -fsSL https://github.com/netbirdio/netbird/releases/latest/download/getting-started-with-zitadel.sh | bash +``` +- Once finished, you can manage the resources via `docker-compose` ### A bit on NetBird internals - Every machine in the network runs [NetBird Agent (or Client)](client/) that manages WireGuard. @@ -88,18 +103,18 @@ For stable versions, see [releases](https://github.com/netbirdio/netbird/release [Coturn](https://github.com/coturn/coturn) is the one that has been successfully used for STUN and TURN in NetBird setups.

- +

See a complete [architecture overview](https://docs.netbird.io/about-netbird/how-netbird-works#architecture) for details. -### Roadmap -- [Public Roadmap](https://github.com/netbirdio/netbird/projects/2) - ### Community projects - [NetBird on OpenWRT](https://github.com/messense/openwrt-netbird) - [NetBird installer script](https://github.com/physk/netbird-installer) +**Note**: The `main` branch may be in an *unstable or even broken state* during development. +For stable versions, see [releases](https://github.com/netbirdio/netbird/releases). + ### Support acknowledgement In November 2022, NetBird joined the [StartUpSecure program](https://www.forschung-it-sicherheit-kommunikationssysteme.de/foerderung/bekanntmachungen/startup-secure) sponsored by The Federal Ministry of Education and Research of The Federal Republic of Germany. Together with [CISPA Helmholtz Center for Information Security](https://cispa.de/en) NetBird brings the security best practices and simplicity to private networking. @@ -107,7 +122,7 @@ In November 2022, NetBird joined the [StartUpSecure program](https://www.forschu ![CISPA_Logo_BLACK_EN_RZ_RGB (1)](https://user-images.githubusercontent.com/700848/203091324-c6d311a0-22b5-4b05-a288-91cbc6cdcc46.png) ### Testimonials -We use open-source technologies like [WireGuard®](https://www.wireguard.com/), [Pion ICE (WebRTC)](https://github.com/pion/ice), and [Coturn](https://github.com/coturn/coturn). We very much appreciate the work these guys are doing and we'd greatly appreciate if you could support them in any way (e.g. giving a star or a contribution). +We use open-source technologies like [WireGuard®](https://www.wireguard.com/), [Pion ICE (WebRTC)](https://github.com/pion/ice), [Coturn](https://github.com/coturn/coturn), and [Rosenpass](https://rosenpass.eu). We very much appreciate the work these guys are doing and we'd greatly appreciate if you could support them in any way (e.g. giving a star or a contribution). ### Legal _WireGuard_ and the _WireGuard_ logo are [registered trademarks](https://www.wireguard.com/trademark-policy/) of Jason A. Donenfeld.