# 03 - Installation des prérequis

Cette page décrit l'installation des composants nécessaires au fonctionnement du serveur **WireGuard** sur le LXC **NETWORK**.

À l'issue de cette étape, le serveur disposera de tous les outils nécessaires pour créer le VPN, générer les clés cryptographiques et assurer le routage des paquets.

---

## Prérequis

<table id="bkmrk-%C3%89l%C3%A9ment-valeur-syst%C3%A8"><thead><tr><th>Élément</th><th>Valeur</th></tr></thead><tbody><tr><td>Système d'exploitation</td><td>Debian 12 (Bookworm)</td></tr><tr><td>Serveur</td><td>LXC NETWORK</td></tr><tr><td>Adresse IP</td><td>10.151.151.40</td></tr><tr><td>Accès</td><td>Compte sudo ou root</td></tr><tr><td>Connexion Internet</td><td>Requise</td></tr></tbody></table>

---

## Architecture concernée

```

                     Internet
                         │
                         ▼
                    Freebox
                 192.168.150.0/24
                         │
                         ▼
                Routeur ASUS
                 10.151.151.0/24
                         │
                         ▼
              LXC NETWORK (Debian 12)
                  10.151.151.40
                         │
                  Installation de
                   WireGuard

```

---

## Installation des paquets

Mettre à jour les dépôts puis installer les différents composants nécessaires.

```
sudo apt update

sudo apt install wireguard qrencode iptables-persistent -y

```

---

## Description des paquets

<table id="bkmrk-paquet-description-w"><thead><tr><th>Paquet</th><th>Description</th></tr></thead><tbody><tr><td>**wireguard**</td><td>Serveur VPN WireGuard et outils de gestion.</td></tr><tr><td>**qrencode**</td><td>Permet de générer des QR Codes pour les clients mobiles.</td></tr><tr><td>**iptables-persistent**</td><td>Sauvegarde automatiquement les règles NAT après un redémarrage.</td></tr></tbody></table>

---

## Vérification de l'installation

Contrôler que WireGuard est correctement installé.

```
wg --version

```

**Résultat attendu**

```
wireguard-tools v1.x.x

```

La version peut varier selon les mises à jour de Debian.

---

## Vérification du module WireGuard

Contrôler que le noyau Linux dispose bien du support WireGuard.

```
sudo modprobe wireguard

lsmod | grep wireguard

```

**Résultat attendu**

```
wireguard    XXXXX    X

```

---

## Vérification des outils installés

```
which wg

which wg-quick

which qrencode

```

**Résultat attendu**

```
/usr/bin/wg
/usr/bin/wg-quick
/usr/bin/qrencode

```

---

## Versions installées

Il peut être utile de conserver les versions des composants installés afin de faciliter un futur dépannage.

```
dpkg -l | grep wireguard

dpkg -l | grep qrencode

```

---

## Bonnes pratiques

> **Recommandations**
> 
> - Installer WireGuard directement sur Debian plutôt que dans un conteneur Docker.
> - Conserver AdGuard Home dans Docker avec `network_mode: host`.
> - Toujours mettre à jour les dépôts avant l'installation.
> - Éviter de mélanger plusieurs méthodes d'installation (APT, Snap, compilation).

---

## Dépannage

### Commande "wg" introuvable

Vérifier que le paquet est bien installé.

```
dpkg -l | grep wireguard

```

---

### Le module WireGuard ne se charge pas

Vérifier la version du noyau Linux.

```
uname -r

```

Debian 12 intègre nativement le support WireGuard dans son noyau.

---

## Résumé de cette étape

<table id="bkmrk-%C3%89l%C3%A9ment-statut-paque"><thead><tr><th>Élément</th><th>Statut</th></tr></thead><tbody><tr><td>Paquets installés</td><td>✅</td></tr><tr><td>WireGuard disponible</td><td>✅</td></tr><tr><td>Module noyau chargé</td><td>✅</td></tr><tr><td>QR Code disponible</td><td>✅</td></tr><tr><td>iptables-persistent installé</td><td>✅</td></tr></tbody></table>

---

> À l'issue de cette étape, le serveur possède tous les outils nécessaires pour mettre en place le VPN WireGuard. La prochaine page sera consacrée à la préparation de l'environnement, à la création de l'arborescence de travail et à la génération des clés cryptographiques du serveur.