diff --git a/src/components/NavigationDocs.jsx b/src/components/NavigationDocs.jsx index d5446e2e..e8580cb2 100644 --- a/src/components/NavigationDocs.jsx +++ b/src/components/NavigationDocs.jsx @@ -286,6 +286,7 @@ export const docsNavigation = [ { title: 'Activity Events Postgres Store', href: '/selfhosted/activity-postgres-store'}, { title: 'Supported IdPs', href: '/selfhosted/identity-providers' }, { title: 'Management geolocation', href: '/selfhosted/geo-support' }, + { title: 'AmneziaWG support', href: '/selfhosted/amneziawg' }, { title: 'Troubleshooting', href: '/selfhosted/troubleshooting' }, ], diff --git a/src/pages/selfhosted/amneziawg.mdx b/src/pages/selfhosted/amneziawg.mdx new file mode 100644 index 00000000..d6b1b071 --- /dev/null +++ b/src/pages/selfhosted/amneziawg.mdx @@ -0,0 +1,34 @@ +import {Note} from "@/components/mdx"; + +# AmneziaWG support + +Netbird uses amneziaWG protocol implementation under the hood. It's backward-compatible with basic wireguard so it's up to you to enable it or not. + +## Management settings + +To setup amneziaWG for you instance set these environment variables in docker-compose.yml: +```yaml +- NETBIRD_AMNEZIA_JC= +- NETBIRD_AMNEZIA_JMIN= +- NETBIRD_AMNEZIA_JMAX= +- NETBIRD_AMNEZIA_S1= +- NETBIRD_AMNEZIA_S2= +- NETBIRD_AMNEZIA_H1= +- NETBIRD_AMNEZIA_H2= +- NETBIRD_AMNEZIA_H3= +- NETBIRD_AMNEZIA_H4= +- NETBIRD_AMNEZIA_I1= +- NETBIRD_AMNEZIA_I2= +- NETBIRD_AMNEZIA_I3= +- NETBIRD_AMNEZIA_I4= +- NETBIRD_AMNEZIA_I5= +``` + +You can read further about settings in [AmneziaVPN documentation](https://docs.amnezia.org/documentation/amnezia-wg) + +If you leave these settings empty basic wireguard protocol will be used + +## Kernel implementation + +On unix-based systems Netbird uses Kernel implementation of wireguard protocol if possible. With AmneziaWG settings enabled NetBird will choose basic golang implementation unless you install [amneziawg kernel module](https://github.com/amnezia-vpn/amneziawg-linux-kernel-module) +