Mise en Place et configuration VPN Wireguard - SERVEUR / Réseau HOMELAB
Inspiré du guide de it-connect.fr: https://www.it-connect.fr/mise-en-place-de-wireguard-vpn-sur-debian-11/
0 - Le réseau souhaité

Je souhaiter lier mon réseau local avec mes serveurs. Mes VPS sont sur 2 sous réseaux: 150.107.201.0/24 et 46.247.109.0/24.
Sur mon réseau local, le sous réseau est : 192.168.0.0/24. Celui du VPN de la box est 192.168.27.0/24.
Je souhaiter donner à tous mes serveurs une IP en 10.0.0.0/24. Je souhaite que tout le VPN puisse avoir accès à la fois au 192.168.0.0/24 (sous réseau de ma box), au sous réseau du VPN de la box: 192.168.27.64/27 et au sous réseau 10.0/24
1 - Préparation du serveur
1.1 - Installation de wireguard
1.2 - Génération de la clé / des clés
wg genkey | tee privatekey | wg pubkey > publickey
On garde ces 2 clés pour les étapes 1.3 et 2
1.3 - Création de la config
Mettre ceci dans le fichier (en remplaçant la clé privée et clé publique)
2 - Génération du client
Sur le client, ouvrir wireguard puis créer une config vide. 
On récupère la clé publique générée par celui-ci pour l'étape 3.1
La configuration doit ressembler à ça:
On your ajoute l'ip choisie pour le client (ou les 2 IP dans notre cas)
3 - Fin de la configuration coté serveur
3.1 Ajout du client
(Avant tout modification dans la config, bien couper l'interface avec sudo wg-quick down wg0)
On retourne dans la config:
On ajoute à la fin du fichier une entrée (ou plusieurs) [Peer]
3.2 Sécurité et ouverture de ports
3.2.1 Firewall
On active le routage avec:
Puis on installe ufw:
On autorise le ssh pour pas être déconnecté:
Ainsi que le port du VPN:
Ensuite, on édite la configuration:
A la tout fin du fichier on rajoute:
Et on rajoute (après la section "# ok icmp code for FORWARD"):
On active et redémarre le firewall:
3.2.2 Ouverture de ports
Si la machine est derrière un NAT, il faut ouvrir le port de celui-ci.
Faire pointer le port 51820 vers l'ip de notre machine
3.3 - Activation du service VPN
On peut enfin activer le vpn
et on le lance
On peut regarder les logs avec:
Mis à jour