Aller au contenu principal

Configurer un tunnel WireGuard

Configuration Tunnel WireGuard avec RedHeberg

WireGuard est une solution VPN moderne, performante et sécurisée, parfaite pour créer des tunnels IP privés avec votre serveur RedHeberg. Ce guide détaille l'installation complète côté client et serveur.

Vue d'ensemble

WireGuard utilise une cryptographie état-de-l'art et offre des performances exceptionnelles grâce à son implémentation dans le noyau Linux. Avec RedHeberg, vous bénéficiez de la protection Anti-DDoS RedHeberg + Netrix sur vos tunnels.

Avantages WireGuard

  • Performance : Intégré au noyau Linux, latence minimale
  • Sécurité : ChaCha20, Poly1305, BLAKE2s, Curve25519
  • Simplicité : Configuration minimale, gestion automatique des connexions
  • Compatibilité : Linux, Windows, macOS, iOS, Android

Installation côté serveur RedHeberg

1. Installation WireGuard sur votre VPS

# Mise à jour du système
sudo apt update && sudo apt upgrade -y

# Installation WireGuard
sudo apt install wireguard wireguard-tools -y

# Vérification de l'installation
wg --version

2. Génération des clés serveur

# Création du répertoire de configuration
sudo mkdir -p /etc/wireguard
cd /etc/wireguard

# Génération de la clé privée serveur
sudo wg genkey | sudo tee server_private.key
sudo chmod 600 server_private.key

# Génération de la clé publique serveur
sudo cat server_private.key | wg pubkey | sudo tee server_public.key

3. Configuration serveur wg0.conf

sudo nano /etc/wireguard/wg0.conf

Configuration complète du serveur :

[Interface]
# Clé privée du serveur (remplacer par votre clé)
PrivateKey = VOTRE_CLE_PRIVEE_SERVEUR
# Adresse IP du serveur dans le tunnel
Address = 10.0.0.1/24
# Port d'écoute WireGuard
ListenPort = 51820
# Sauvegarde de la configuration
SaveConfig = true

# Activation du routage IP
PostUp = echo 1 > /proc/sys/net/ipv4/ip_forward
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT
PostUp = iptables -A FORWARD -o wg0 -j ACCEPT
PostUp = iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

# Nettoyage à l'arrêt
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT
PostDown = iptables -D FORWARD -o wg0 -j ACCEPT
PostDown = iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

# Configuration client (exemple)
[Peer]
# Clé publique du client
PublicKey = CLE_PUBLIQUE_CLIENT
# IPs autorisées pour ce client
AllowedIPs = 10.0.0.2/32

4. Activation et démarrage du service

# Démarrage du service WireGuard
sudo systemctl enable wg-quick@wg0
sudo systemctl start wg-quick@wg0

# Vérification du statut
sudo systemctl status wg-quick@wg0
sudo wg show

Configuration côté client

1. Installation client WireGuard

Sur Ubuntu/Debian :

sudo apt update
sudo apt install wireguard wireguard-tools -y

2. Génération des clés client

# Répertoire de configuration client
mkdir -p ~/.config/wireguard
cd ~/.config/wireguard

# Génération clé privée client
wg genkey > client_private.key
chmod 600 client_private.key

# Génération clé publique client
cat client_private.key | wg pubkey > client_public.key

3. Configuration client

nano ~/.config/wireguard/wg0.conf

Configuration client complète :

[Interface]
# Clé privée du client
PrivateKey = VOTRE_CLE_PRIVEE_CLIENT
# Adresse IP client dans le tunnel
Address = 10.0.0.2/24
# DNS (optionnel)
DNS = 1.1.1.1, 1.0.0.1

[Peer]
# Clé publique du serveur RedHeberg
PublicKey = CLE_PUBLIQUE_SERVEUR
# IP publique de votre serveur RedHeberg
Endpoint = YOUR_SERVER_IP:51820
# Routage : tout le trafic via le tunnel
AllowedIPs = 0.0.0.0/0
# Maintien de la connexion
PersistentKeepalive = 25

Ajout d'un client côté serveur

Pour chaque nouveau client, ajoutez une section [Peer] :

# Ajout dynamique d'un peer
sudo wg set wg0 peer CLE_PUBLIQUE_CLIENT allowed-ips 10.0.0.3/32

# Sauvegarde permanente
sudo wg-quick save wg0

Gestion et vérification

Commandes de contrôle

# Démarrage connexion client
sudo wg-quick up wg0

# Arrêt connexion
sudo wg-quick down wg0

# Statut de la connexion
sudo wg show

# Statistiques détaillées
sudo wg show wg0 dump

Test de connectivité

# Ping du serveur depuis le client
ping 10.0.0.1

# Test de la bande passante
iperf3 -s # Sur le serveur
iperf3 -c 10.0.0.1 # Sur le client

Cas d'usage avancés

VPN de site à site

Configurez plusieurs serveurs RedHeberg avec des réseaux différents (10.0.1.0/24, 10.0.2.0/24) pour interconnecter vos infrastructures.

Sécurisation serveur de jeu

Configuration pour protéger un serveur Minecraft :

# Sur le serveur de jeu
[Interface]
PrivateKey = CLE_SERVEUR_JEU
Address = 192.168.100.1/24
ListenPort = 51820

# Seuls les joueurs VIP peuvent se connecter
[Peer]
PublicKey = CLE_JOUEUR_VIP
AllowedIPs = 192.168.100.10/32
Ouverture des ports

N'oubliez pas d'ouvrir le port UDP 51820 dans votre firewall RedHeberg via l'espace client.

Dépannage

Problèmes courants

# Vérification des logs
journalctl -u wg-quick@wg0 -f

# Test de connectivité UDP
nc -u YOUR_SERVER_IP 51820

# Vérification du routage
ip route show table all
Support RedHeberg

Pour toute assistance technique, contactez le support via l'espace client ou rejoignez le Discord.

La protection Anti-DDoS RedHeberg + Netrix sécurise automatiquement vos tunnels WireGuard contre les attaques.