Avec les risques croissants sur la confidentialité en ligne, créer son propre VPN avec WireGuard offre une solution sécurisée et performante. Ce tutoriel vous montre comment installer et configurer WireGuard sur un VPS avec l'adresse IP 51.0.0.27, pour router tout votre trafic Internet de manière sécurisée.
📌 Pourquoi Choisir WireGuard ?
- Vitesse : Protocole moderne (meilleures performances qu'OpenVPN/IPSec)
- Simplicité : Configuration minimaliste (~100 lignes de code)
- Sécurité : Chiffrement avec ChaCha20 et authentification par clés
ℹ️ Comparaison technique : WireGuard offre un débit 2x supérieur à OpenVPN avec une latence réduite.
🛠️ Prérequis
- Un VPS (Ubuntu/Debian recommandé) avec IP 51.0.0.27
- Accès root via SSH
- 10 minutes disponibles
🔧 Installation de WireGuard
1. Connexion au VPS
ssh root@51.0.0.27
2. Installation des paquets
Sur Ubuntu/Debian :
sudo apt update && sudo apt install wireguard resolvconf -y
📂 Configuration du Serveur
1. Génération des clés cryptographiques
umask 077
wg genkey | tee /etc/wireguard/privatekey | wg pubkey > /etc/wireguard/publickey
2. Configuration du serveur
Créez le fichier /etc/wireguard/wg0.conf
:
[Interface]
Address = 10.8.0.1/24
PrivateKey = <CONTENU_PRIVATEKEY>
ListenPort = 51820
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
3. Activation du service
# redemarrer le service:
sudo systemctl restart wg-quick@wg0
# active le service au demarrage
sudo systemctl enable --now wg-quick@wg0
Apres des modifications sur le serveur, il faut toujours redemarrer et verifier que la configuration est ok.
sudo systemctl restart wg-quick@wg0
sudo wg show wg0
wg0 est une interface, on aurrait pu definir wg1...📱 Configuration Client
1. Création des clés client
wg genkey | tee client_private.key | wg pubkey > client_public.key
Cette commande va produire 2 fichiers : client_public.key et client_private.key
2. Ajout du client sur le serveur
Éditez /etc/wireguard/wg0.conf
et ajoutez :
[Peer]
PublicKey = <CLIENT_PUBLIC_KEY1>
AllowedIPs = 10.8.0.2/32
[Peer]
PublicKey = <CLIENT_PUBLIC_KEY2>
AllowedIPs = 10.8.0.3/32
[Peer]
PublicKey = <CLIENT_PUBLIC_KEY3>
AllowedIPs = 10.8.0.4/32
3. Fichier de configuration client
Créez un fichier client.conf
avec :
[Interface]
PrivateKey = <CLIENT_PRIVATE_KEY>
Address = 10.8.0.2/24
DNS = 1.1.1.1
[Peer]
PublicKey = <SERVER_PUBLIC_KEY>
Endpoint = 51.0.0.27:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25
4. Verifier si la configuration est ok au niveau du serveur :
il faut afficher les informations sur l'interface: sudo wg show wg0
debian@habeuk:~$ sudo wg show wg0
interface: wg0
public key: <clé_publique_du_serveur>
private key: (hidden)
listening port: 51820
peer: <clé_publique_du_client1>
allowed ips: 10.8.0.2/32
peer: <clé_publique_du_client2>
allowed ips: 10.8.0.3/32
peer: <clé_publique_du_client3>
allowed ips: 10.8.0.4/32
Sur le resultat ci-dessus, on a un seul client.🌍 Test de Fonctionnement
Activez la connection en local
sudo wg-quick up /etc/wireguard/wg0.conf
Arreter la connexion via la VPN
sudo wg-quick down /etc/wireguard/wg0.conf
Ressource utile :
https://docs.vultr.com/how-to-install-wireguard-vpn-on-debian-12