diff --git a/src/pages/docs/about-netbird/how-netbird-works.mdx b/src/pages/docs/about-netbird/how-netbird-works.mdx
index d717303e..6f2ecbaf 100644
--- a/src/pages/docs/about-netbird/how-netbird-works.mdx
+++ b/src/pages/docs/about-netbird/how-netbird-works.mdx
@@ -29,7 +29,7 @@ With NetBird clients installed and authorized on the Management service, machine
-While it is possible to create a full mesh network, it might be not a desirable outcome. In this case, [ACLs](/overview/acls) 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/access-control) can be utilized to limit the access to certain machines.
Let's now take a closer look at each of NetBird's components.
@@ -41,7 +41,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](/overview/setup-keys).
+After installation, NetBird client requires login that can be done through Identity Provider (IDP) or with a [setup key](/docs/how-to/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 100.64.0.0/10.
@@ -49,7 +49,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. Coming Soon.
-* **Managing private DNS.** [DNS](/overview/dns) allows referring to each of the peers with a fully qualified domain name (FQDN). Coming Soon.
+* **Managing private DNS.** [DNS](/docs/how-to/dns) allows referring to each of the peers with a fully qualified domain name (FQDN). Coming Soon.
* **Monitoring network activity.** Coming Soon.
* **Wireguard key rotation.** Coming Soon.
@@ -125,7 +125,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 100.64.0.0/10.
-3. The system automatically generates 2 [setup keys](/overview/setup-keys) that can be used for authenticating new machines.
+3. The system automatically generates 2 [setup keys](/docs/how-to/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.
diff --git a/src/pages/docs/about-netbird/netbird-vs-traditional-vpn.mdx b/src/pages/docs/about-netbird/netbird-vs-traditional-vpn.mdx
index 0f96e03e..c4324903 100644
--- a/src/pages/docs/about-netbird/netbird-vs-traditional-vpn.mdx
+++ b/src/pages/docs/about-netbird/netbird-vs-traditional-vpn.mdx
@@ -26,7 +26,7 @@ To achieve this, NetBird client applications employ signalling servers to find o
These are similar to the signaling servers used in [WebRTC](https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API/Signaling_and_video_calling#the_signaling_server)
Thanks to [NAT traversal techniques](https://en.wikipedia.org/wiki/NAT_traversal),
-outlined in the [Why Wireguard with NetBird](/docs/documentation/wireguard-plus-netbird.md) section,
+outlined in the [Why Wireguard with NetBird](/docs/about-netbird/why-wireguard-with-netbird) section,
NetBird installation doesn't require complex network and firewall configuration.
It just works, minimising the maintenance effort.
diff --git a/src/pages/docs/about-netbird/other.mdx b/src/pages/docs/about-netbird/other.mdx
index bb6f739a..9903abbf 100644
--- a/src/pages/docs/about-netbird/other.mdx
+++ b/src/pages/docs/about-netbird/other.mdx
@@ -23,7 +23,7 @@ The goal of the task is to get familiar with the system by setting up a self-hos
It is possible to set up multiple peers on the same machine. Find out how!
4. Ping machines and make sure that they are reachable.
-5. We might ask you to provide a generated [setup key](/overview/setup-keys) so that we could test your setup.
+5. We might ask you to provide a generated [setup key](/docs/how-to/setup-keys) so that we could test your setup.
Please reach out to us with any questions. We believe you will have some! :)
diff --git a/src/pages/docs/how-to/dns.mdx b/src/pages/docs/how-to/dns.mdx
index e168aac6..ac1ef081 100644
--- a/src/pages/docs/how-to/dns.mdx
+++ b/src/pages/docs/how-to/dns.mdx
@@ -23,7 +23,7 @@ Starting [v0.11.0](https://github.com/netbirdio/netbird/releases), NetBird autom
to each peer in a private `netbird.cloud` space that can be used to access the machines. E.g., `my-server.netbird.cloud`.
Besides accessing machines by their domain names, you can configure NetBird to use your private nameservers,
-control what nameservers a specific [peer group](https://netbird.io/docs/overview/acls#groups) should use, and set up split DNS.
+control what nameservers a specific [peer group](/docs/how-to/access-control#concepts) should use, and set up split DNS.
Nameservers is available for NetBird [v0.11.0](https://github.com/netbirdio/netbird/releases) or later.
diff --git a/src/pages/docs/how-to/examples.mdx b/src/pages/docs/how-to/examples.mdx
index e1203bec..bd392ce3 100644
--- a/src/pages/docs/how-to/examples.mdx
+++ b/src/pages/docs/how-to/examples.mdx
@@ -103,7 +103,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](/overview/setup-keys) to associate NetBird client with your account.
+You would need to obtain a [setup key](/docs/how-to/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).
@@ -115,4 +115,4 @@ docker run --rm --name PEER_NAME --hostname PEER_NAME --cap-add=NET_ADMIN -d -e
That is it! Enjoy using NetBird.
-If you would like to learn how to run NetBird Client as an ECS agent on AWS, please refer to [this guide](/examples/aws-ecs-client-daemon).
+If you would like to learn how to run NetBird Client as an ECS agent on AWS, please refer to [this guide](#net-bird-client-on-aws-ecs-terraform).
diff --git a/src/pages/docs/how-to/getting-started.mdx b/src/pages/docs/how-to/getting-started.mdx
index 0ed18278..3876a358 100644
--- a/src/pages/docs/how-to/getting-started.mdx
+++ b/src/pages/docs/how-to/getting-started.mdx
@@ -280,10 +280,10 @@ Check connection status:
```
### Running NetBird with a Setup Key
-In case you are activating a server peer, you can use a [setup key](/overview/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/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](/overview/setup-keys)).
+1. Login to the Management Service. You need to have a `setup key` in hand (see [setup keys](/docs/how-to/setup-keys)).
For all systems:
```bash
diff --git a/src/pages/docs/how-to/setup-keys.mdx b/src/pages/docs/how-to/setup-keys.mdx
index 33403efa..e6467f15 100644
--- a/src/pages/docs/how-to/setup-keys.mdx
+++ b/src/pages/docs/how-to/setup-keys.mdx
@@ -43,7 +43,7 @@ Setup keys are set to expire after 30 days. When expired, the setup key can't be
-NetBird offers a powerful [Access Control feature](/overview/acls) that allows easy access management of your resources.
+NetBird offers a powerful [Access Control feature](/docs/how-to/access-control) 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.
diff --git a/src/pages/docs/how-to/users.mdx b/src/pages/docs/how-to/users.mdx
index c3b3d441..5da3be38 100644
--- a/src/pages/docs/how-to/users.mdx
+++ b/src/pages/docs/how-to/users.mdx
@@ -52,7 +52,7 @@ Personal access tokens can be used in a variety of scenarios, including:
### Creating a Personal Access Token
-To create a personal access token, you'll need to log in to your account and navigate to the "Users" section and look for your user or create a [service user](#) to use for your API requests.
+To create a personal access token, you'll need to log in to your account and navigate to the "Users" section and look for your user or create a [service user](#service-users) to use for your API requests.
diff --git a/src/pages/docs/selfhosted/identity-providers.mdx b/src/pages/docs/selfhosted/identity-providers.mdx
index 7c7d0aea..ae598a78 100644
--- a/src/pages/docs/selfhosted/identity-providers.mdx
+++ b/src/pages/docs/selfhosted/identity-providers.mdx
@@ -12,7 +12,7 @@ There are a few Identity Provider options that you can choose to run a self-host
## Auth0
-This guide is a part of the [NetBird Self-hosting Guide](/getting-started/self-hosting) and explains how to integrate **self-hosted** NetBird with [Auth0](https://auth0.com/).
+This guide is a part of the [NetBird Self-hosting Guide](/docs/selfhosted/selfhosted-guide) and explains how to integrate **self-hosted** NetBird with [Auth0](https://auth0.com/).
Auth0 is a flexible, drop-in solution to add authentication and authorization services to your applications.
It is a 3rd party managed service and can't be self-hosted. Auth0 is the right choice if you don't want to manage an Identity Provider (IDP)
@@ -64,7 +64,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](/overview/setup-keys)
+authorization with your Identity Provider. This feature can be used as an alternative to [setup keys](/docs/how-to/setup-keys)
and is optional.
You can enable it by following these steps:
@@ -91,11 +91,11 @@ 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](/getting-started/self-hosting#step-3-configure-identity-provider).
+You can now continue with the [NetBird Self-hosting Guide](/docs/selfhosted/selfhosted-guide).
## Keycloak
-This guide is a part of the [NetBird Self-hosting Guide](/getting-started/self-hosting) and explains how to integrate
+This guide is a part of the [NetBird Self-hosting Guide](/docs/selfhosted/selfhosted-guide) and explains how to integrate
**self-hosted** NetBird with [Keycloak](https://www.keycloak.org/).
Keycloak is an open source software product to allow single sign-on with Identity and Access Management aimed at modern applications and services.
@@ -298,7 +298,7 @@ https:///realms/netbird/.well-known/openid-configur
- 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)
-- 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).
- Set property `IdpManagerConfig` in the `management.json` file with:
@@ -324,7 +324,7 @@ it enables the [Interactive SSO Login feature](/getting-started/installation#run
## Azure AD
-This guide is a part of the [NetBird Self-hosting Guide](/getting-started/self-hosting) and explains how to integrate **self-hosted** NetBird with [Azure AD](https://azure.microsoft.com/en-us/products/active-directory/).
+This guide is a part of the [NetBird Self-hosting Guide](/docs/selfhosted/selfhosted-guide) and explains how to integrate **self-hosted** NetBird with [Azure AD](https://azure.microsoft.com/en-us/products/active-directory/).
Azure AD is a an enterprise identity service that provides single sign-on and multifactor authentication to your applications.
It is a 3rd party managed service and can't be self-hosted.