mirror of
https://github.com/netbirdio/docs.git
synced 2026-04-20 17:36:36 +00:00
update links
This commit is contained in:
@@ -8,7 +8,7 @@ export const title = 'FAQ'
|
||||
NetBird's agent doesn't require any incoming port to be open; It negotiates the connection with the support of the signal and relay services.
|
||||
### Outgoing ports
|
||||
NetBird usually won't need open ports, but sometimes you or your IT team needs to secure and verify
|
||||
all outgoing traffic, and that may affect how NetBird clients connect to the [control layer](/overview/architecture)
|
||||
all outgoing traffic, and that may affect how NetBird clients connect to the [control layer](/docs/about-netbird/how-netbird-works)
|
||||
and negotiate the peer-to-peer connections.
|
||||
|
||||
Below is the list of NetBird hosted endpoints and ports they listen to:
|
||||
|
||||
@@ -27,7 +27,7 @@ With NetBird clients installed and authorized on the Management service, machine
|
||||
<img src="/img/architecture/mesh.png" alt="high-level-dia" style={{boxShadow: '0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19)'}}/>
|
||||
</p>
|
||||
|
||||
While it is possible to create a full mesh network, it might be not a desirable outcome. In this case, [ACLs](/docs/how-to/access-control) can be utilized to limit the access to certain machines.
|
||||
While it is possible to create a full mesh network, it might be not a desirable outcome. In this case, [ACLs](/docs/how-to/restrict-access-to-peers) can be utilized to limit the access to certain machines.
|
||||
|
||||
Let's now take a closer look at each of NetBird's components.
|
||||
|
||||
@@ -39,7 +39,7 @@ It keeps the network state, public Wireguard keys of the peers, authenticates an
|
||||
The Management Service's responsibilities include:
|
||||
|
||||
* **Registering and authenticating new peers.** Every new machine has to register itself in the network in order to connect to other machines.
|
||||
After installation, NetBird client requires login that can be done through Identity Provider (IDP) or with a [setup key](/docs/how-to/setup-keys).
|
||||
After installation, NetBird client requires login that can be done through Identity Provider (IDP) or with a [setup key](/docs/how-to/register-peers-using-setup-keys).
|
||||
* **Keeping the network map.** The Management service stores information about all the registered peers including Wireguard public key that was sent during the registration process.
|
||||
* **Managing private IP addresses.** Each peer receives a unique private IP with which it can be identified in the network.
|
||||
We use [Carrier Grade NAT](https://en.wikipedia.org/wiki/Carrier-grade_NAT) address space with an allocated address block <em>100.64.0.0/10</em>.
|
||||
@@ -47,7 +47,7 @@ We use [Carrier Grade NAT](https://en.wikipedia.org/wiki/Carrier-grade_NAT) addr
|
||||
Whenever a new peer joins the network, all other peers that are authorized to connect to it receive an update.
|
||||
After that, they are able to establish a connection to the new peer.
|
||||
* **Creating and managing ACLs.** ACL is a list of peers that a given peer has access to. <em>Coming Soon</em>.
|
||||
* **Managing private DNS.** [DNS](/docs/how-to/dns) allows referring to each of the peers with a fully qualified domain name (FQDN). <em>Coming Soon</em>.
|
||||
* **Managing private DNS.** [DNS](docs/how-to/manage-dns-in-your-network) allows referring to each of the peers with a fully qualified domain name (FQDN). <em>Coming Soon</em>.
|
||||
* **Monitoring network activity.** <em>Coming Soon</em>.
|
||||
* **Wireguard key rotation.** <em>Coming Soon</em>.
|
||||
|
||||
@@ -123,7 +123,7 @@ Below is a high level, step-by-step overview of the flow of communications withi
|
||||
|
||||
1. Administrator creates an account at [app.netbird.io](https://app.netbird.io/).
|
||||
2. The system automatically generates a new network with an allocated address block <em>100.64.0.0/10</em>.
|
||||
3. The system automatically generates 2 [setup keys](/docs/how-to/setup-keys) that can be used for authenticating new machines.
|
||||
3. The system automatically generates 2 [setup keys](/docs/how-to/register-peers-using-setup-keys) that can be used for authenticating new machines.
|
||||
4. Administrator (or a user) installs NetBird client and runs ```netbird up``` command providing one of the setup keys.
|
||||
5. NetBird client generates Wireguard private and public keys along with the initial configuration.
|
||||
6. NetBird client sends a registration request to the NetBird Management service calling Login gRPC endpoint, providing setup key, Wireguard public key and additional information about the machine.
|
||||
|
||||
@@ -100,7 +100,7 @@ One of the simplest ways of running NetBird client application is to use a pre-b
|
||||
* **NetBird account.**
|
||||
Register one at [app.netbird.io](https://app.netbird.io/).
|
||||
|
||||
You would need to obtain a [setup key](/docs/how-to/setup-keys) to associate NetBird client with your account.
|
||||
You would need to obtain a [setup key](/docs/how-to/register-peers-using-setup-keys) to associate NetBird client with your account.
|
||||
|
||||
The setup key could be found in the NetBird Management dashboard under the Setup Keys tab - [https://app.netbird.io/setup-keys](https://app.netbird.io/setup-keys).
|
||||
|
||||
|
||||
@@ -278,10 +278,10 @@ Check connection status:
|
||||
```
|
||||
|
||||
### Running NetBird with a Setup Key
|
||||
In case you are activating a server peer, you can use a [setup key](/docs/how-to/setup-keys) as described in the steps below.
|
||||
In case you are activating a server peer, you can use a [setup key](/docs/how-to/register-peers-using-setup-keys) as described in the steps below.
|
||||
> This is especially helpful when you are running multiple server instances with infrastructure-as-code tools like ansible and terraform.
|
||||
|
||||
1. Login to the Management Service. You need to have a `setup key` in hand (see [setup keys](/docs/how-to/setup-keys)).
|
||||
1. Login to the Management Service. You need to have a `setup key` in hand (see [setup keys](/docs/how-to/register-peers-using-setup-keys)).
|
||||
|
||||
For all systems:
|
||||
```bash
|
||||
|
||||
@@ -40,7 +40,7 @@ Setup keys are set to expire after 30 days. When expired, the setup key can't be
|
||||
<img src="/img/architecture/peer-auto-tagging-setupkey.gif" alt="high-level-dia" width="800" style={{boxShadow: '0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19)'}} />
|
||||
</p>
|
||||
|
||||
NetBird offers a powerful [Access Control feature](/docs/how-to/access-control) that allows easy access management of your resources.
|
||||
NetBird offers a powerful [Access Control feature](/docs/how-to/restrict-access-to-peers) that allows easy access management of your resources.
|
||||
In a basic scenario, you would create multiple groups of peers and create access rules to define what groups can access each other.
|
||||
Adding peers to groups might become time-consuming in large networks with dozens of machines.
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import {Note} from "@/components/mdx"
|
||||
import {HowToGuides} from "@/components/How-To-Guides"
|
||||
import {HowNetbirdWorks} from "@/components/How-NetBird-Works"
|
||||
import {AboutNetbird} from "@/components/AboutNetbird"
|
||||
|
||||
export const description =
|
||||
'Learn everything there is to know about NetBird.'
|
||||
@@ -19,10 +19,10 @@ NetBird can connect machines running anywhere in just a few clicks.
|
||||
It literally takes less than 5 minutes to deploy a secure peer-to-peer VPN with NetBird. {{ className: 'lead' }}
|
||||
|
||||
<div className="not-prose mb-16 mt-6 flex gap-3">
|
||||
<Button href="/docs/getting-started" arrow="right" children="Getting started" />
|
||||
<Button href="/docs/how-to/getting-started" arrow="right" children="Getting started" />
|
||||
<Button href="https://github.com/netbirdio/netbird" variant="outline" children="Explore Github" />
|
||||
</div>
|
||||
|
||||
<HowToGuides />
|
||||
|
||||
<HowNetbirdWorks />
|
||||
<AboutNetbird />
|
||||
|
||||
@@ -62,7 +62,7 @@ This Auth0 API will be used to access NetBird Management Service API.
|
||||
### Step 4: Enable Interactive SSO Login (Optional)
|
||||
|
||||
The [Interactive SSO Login feature](/getting-started/installation#running-netbird-with-sso-login) allows for machine
|
||||
authorization with your Identity Provider. This feature can be used as an alternative to [setup keys](/docs/how-to/setup-keys)
|
||||
authorization with your Identity Provider. This feature can be used as an alternative to [setup keys](docs/how-to/register-peers-using-setup-keys)
|
||||
and is optional.
|
||||
|
||||
You can enable it by following these steps:
|
||||
@@ -89,7 +89,7 @@ You can enable it by following these steps:
|
||||
|
||||
|
||||
### Step 4: Continue with the self-hosting guide
|
||||
You can now continue with the [NetBird Self-hosting Guide](/docs/selfhosted/selfhosted-guide).
|
||||
You can now continue with the [NetBird Self-hosting Guide](/docs/selfhosted/selfhosted-guide#step-3-configure-identity-provider).
|
||||
|
||||
## Keycloak
|
||||
|
||||
@@ -109,7 +109,7 @@ The following guide is an adapted version of the original
|
||||
### Expected Result
|
||||
|
||||
After completing this guide, you can log in to your self-hosted NetBird Dashboard and add your machines
|
||||
to your network using the [Interactive SSO Login feature](/getting-started/installation#running-netbird-with-sso-login)
|
||||
to your network using the [Interactive SSO Login feature](/docs/how-to/getting-started#running-net-bird-with-sso-login)
|
||||
over Keycloak.
|
||||
|
||||

|
||||
@@ -294,9 +294,9 @@ https://<YOUR-KEYCLOAK-HOST-AND-PORT>/realms/netbird/.well-known/openid-configur
|
||||
- NETBIRD_AUTH_CLIENT_ID=`netbird-client`
|
||||
- NETBIRD_AUTH_AUDIENCE=`netbird-client`
|
||||
- NETBIRD_AUTH_DEVICE_AUTH_CLIENT_ID=`netbird-client`. Optional,
|
||||
it enables the [Interactive SSO Login feature](/getting-started/installation#running-netbird-with-sso-login) (Oauth 2.0 Device Authorization Flow)
|
||||
it enables the [Interactive SSO Login feature](/docs/how-to/getting-started#running-net-bird-with-sso-login) (Oauth 2.0 Device Authorization Flow)
|
||||
|
||||
- You can now continue with the [NetBird Self-hosting Guide](/docs/selfhosted/selfhosted-guide).
|
||||
- You can now continue with the [NetBird Self-hosting Guide](/docs/selfhosted/selfhosted-guide#step-3-configure-identity-provider).
|
||||
|
||||
- Set property `IdpManagerConfig` in the `management.json` file with:
|
||||
<Note>
|
||||
@@ -438,7 +438,7 @@ NETBIRD_AUTH_SILENT_REDIRECT_URI="/silent-auth"
|
||||
NETBIRD_AUTH_USER_ID_CLAIM="oid"
|
||||
```
|
||||
|
||||
- You can now continue with the [NetBird Self-hosting Guide](/getting-started/self-hosting#step-3-configure-identity-provider).
|
||||
- You can now continue with the [NetBird Self-hosting Guide](/docs/selfhosted/selfhosted-guide#step-3-configure-identity-provider/docs/selfhosted/selfhosted-guide#step-3-configure-identity-provider).
|
||||
|
||||
- Set property `IdpManagerConfig` in the `management.json` file with:
|
||||
<Note>
|
||||
|
||||
@@ -13,7 +13,7 @@ If you would like to learn more about the architecture please refer to the [Arch
|
||||
We run NetBird in the cloud, and it will take less than 5 minutes to get started with our managed version. [Check it out!](https://netbird.io/pricing)
|
||||
</Note>
|
||||
|
||||
### Requirements
|
||||
## Requirements
|
||||
|
||||
- Virtual machine offered by any cloud provider (e.g., AWS, DigitalOcean, Hetzner, Google Cloud, Azure ...).
|
||||
- Any Linux OS.
|
||||
@@ -25,7 +25,7 @@ If you would like to learn more about the architecture please refer to the [Arch
|
||||
|
||||
For this tutorial we will be using domain ```demo.netbird.io``` which points to our Ubuntu 22.04 machine hosted at Hetzner.
|
||||
|
||||
### Step 1: Get the latest stable NetBird code
|
||||
## Step 1: Get the latest stable NetBird code
|
||||
|
||||
```bash
|
||||
#!/bin/bash
|
||||
@@ -43,7 +43,7 @@ Then switch to the infra folder that contains docker-compose file:
|
||||
```bash
|
||||
cd netbird/infrastructure_files/
|
||||
```
|
||||
### Step 2: Prepare configuration files
|
||||
## Step 2: Prepare configuration files
|
||||
|
||||
To simplify the setup we have prepared a script to substitute required properties in the [docker-compose.yml.tmpl](https://github.com/netbirdio/netbird/tree/main/infrastructure_files/docker-compose.yml.tmpl) and [management.json.tmpl](https://github.com/netbirdio/netbird/tree/main/infrastructure_files/management.json.tmpl) files.
|
||||
|
||||
@@ -80,7 +80,7 @@ This can be any email address. [Let's Encrypt](https://letsencrypt.org/) will cr
|
||||
If you want to setup netbird with your own reverse-Proxy and without using the integrated letsencrypt, follow [this step here instead](#advanced-running-netbird-behind-an-existing-reverse-proxy).
|
||||
</Note>
|
||||
|
||||
### Step 3: Configure Identity Provider
|
||||
## Step 3: Configure Identity Provider
|
||||
|
||||
NetBird supports generic OpenID (OIDC) protocol allowing for the integration with any IDP that follows the specification.
|
||||
Pick the one that suits your needs, follow the steps, and continue with this guide:
|
||||
@@ -88,7 +88,7 @@ Pick the one that suits your needs, follow the steps, and continue with this gui
|
||||
- Continue with [Auth0](/integrations/identity-providers/self-hosted/using-netbird-with-auth0) (managed service).
|
||||
- Continue with [Keycloak](/integrations/identity-providers/self-hosted/using-netbird-with-keycloak).
|
||||
|
||||
### Step 4: Disable single account mode (optional)
|
||||
## Step 4: Disable single account mode (optional)
|
||||
|
||||
NetBird Management service runs in a single account mode by default since version v0.10.1.
|
||||
Management service was creating a separate account for each registered user before v0.10.1.
|
||||
@@ -99,7 +99,7 @@ If you want to disable the single-account mode, set `--disable-single-account-mo
|
||||
[docker-compose.yml.tmpl](https://github.com/netbirdio/netbird/tree/main/infrastructure_files/docker-compose.yml.tmpl)
|
||||
`command` section of the `management` service.
|
||||
|
||||
### Step 5: Run configuration script
|
||||
## Step 5: Run configuration script
|
||||
Make sure all the required properties set in the ```setup.env``` file and run:
|
||||
|
||||
```bash
|
||||
@@ -108,12 +108,12 @@ Make sure all the required properties set in the ```setup.env``` file and run:
|
||||
|
||||
This will export all the properties as environment variables and generate ```docker-compose.yml``` and ```management.json``` files substituting required variables.
|
||||
|
||||
### Step 6: Run docker compose:
|
||||
## Step 6: Run docker compose:
|
||||
|
||||
```bash
|
||||
docker-compose up -d
|
||||
```
|
||||
### Step 7: Check docker logs (Optional)
|
||||
## Step 7: Check docker logs (Optional)
|
||||
|
||||
```bash
|
||||
docker-compose logs signal
|
||||
@@ -122,7 +122,7 @@ docker-compose logs coturn
|
||||
docker-compose logs dashboard
|
||||
```
|
||||
|
||||
### Advanced: Running netbird behind an existing reverse-proxy
|
||||
## Advanced: Running netbird behind an existing reverse-proxy
|
||||
|
||||
If you want to run netbird behind your own reverse-proxy, some additional configuration-steps have to be taken to [Step 2](#step-2--prepare-configuration-files).
|
||||
|
||||
@@ -130,7 +130,7 @@ If you want to run netbird behind your own reverse-proxy, some additional config
|
||||
Not all reverse-proxies are supported as netbird uses *gRPC* for various components.
|
||||
</Note>
|
||||
|
||||
#### Configuration for netbird
|
||||
### Configuration for netbird
|
||||
|
||||
In `setup.env`:
|
||||
- Set ```NETBIRD_DOMAIN``` to your domain, e.g. `demo.netbird.io`
|
||||
@@ -147,7 +147,7 @@ Optional:
|
||||
|
||||
Now you can continue with [Step 3](#step-3-configure-identity-provider).
|
||||
|
||||
#### Configuration for your reverse-proxy
|
||||
### Configuration for your reverse-proxy
|
||||
|
||||
Depending on your port-mappings and choice of reverse-proxy, how you configure the forwards differs greatly.
|
||||
|
||||
@@ -167,7 +167,7 @@ Make sure your reverse-Proxy is setup to use the HTTP2-Protocol when forwarding.
|
||||
Simply replace the file `docker-compose.yml.tmpl` with the chosen version.
|
||||
</Note>
|
||||
|
||||
### Get in touch
|
||||
## Get in touch
|
||||
|
||||
Feel free to ping us on [Slack](https://join.slack.com/t/netbirdio/shared_invite/zt-vrahf41g-ik1v7fV8du6t0RwxSrJ96A) if you have any questions
|
||||
|
||||
|
||||
Reference in New Issue
Block a user