Skip to main content

[Debian] Serveur Wireguard

Introduction

Wireguard est un service VPN récent, sécurisé et performant.

Il peut fonctionner dans plusieurs configurations différentes mais utilise exclusivement le protocole UDP.

image.png

Source

Installation du serveur

Réseau privé

Wireguard peut fonctionner en mode réseau simple, c'est à dire qu'il va vous permettre d'établir un réseau avec les hôtes que vous connecterez en mode P2P. Il n'y aura pas de serveur VPN à proprement parler ni une nouvelle passerelle par défaut pour les hôtes.

  • Tout d'abord, installez le paquet wireguard :
apt install -y wireguard

Ensuite, éditez la configuration de votre premier noeud à travers le fichier /etc/wireguard/wg0.conf :

[Interface]
PrivateKey = <PRV_KEY>
Address = <SRV_IP>/<CIDR_IP>
ListenPort = 51820
  • Dans un deuxième terminal, lancez la génération de :
  1. La clé privée du serveur :
    wg genkey | sudo tee /etc/wireguard/wg-private.key
  2. La clé publique du serveur :
    wg pubkey | sudo tee /etc/wireguard/wg-public.key

Vous pouvez réitérer les deux commandes ci-dessus pour générer une paire clé privée/publique pour chaque hôte du réseau VPN.

Ensuite, pour chaque hôte, ajoutez cela dans la configuration du serveur :

[Peer]
PublicKey = <NODE_PUB_KEY>
AllowedIPs = <NET_ID>/<CIDR_MASK>
Endpoint = <PUBLIC_SERVER_IP>:51820

Une fois que vous avez configurer le serveur et les hôtes, vous pouvez démarrer le serveur wireguard :

wg-quick up wg0

Vous devinerez que pour l'éteindre il s'agit de cette commande :

wg-quick down wg0

Pour activer le service à chaque démarrage, exécutez la commande suivante :

systemctl enable wg-quick@wg0.service

Installation des hôtes

Tout d'abord, installez le paquet wireguard :

apt install -y wireguard

Ensuite, créez le fichier de configuration du client /etc/wireguard/wg0.conf :

[Interface]
PrivateKey = <NODE_PRV_KEY>
Address = <NODE_VPN_IP>/<CIDR_IP>

[Peer]
PublicKey = <SRV_PUB_KEY>
AllowedIPs = <NET_ID>/<CIDR_MASK>
Endpoint = <PUBLIC_SRV_IP>:51820

Et démarrez wireguard :

wg-quick up wg0

 

Générateur de configuration

Si vous êtes habituez à la configuration de Wireguard, vous verrez que vous pouvez gagner du temps grâce à ce générateur de fichier de config :