Aller au contenu principal

VPN

Sécuriser sa connexion et protéger sa vie privée

Notions théoriques

Qu'est-ce qu'un VPN ?

Un VPN (Virtual Private Network) est un réseau privé virtuel permettant de sécuriser une connexion Internet en chiffrant les données et en masquant l’adresse IP de l’utilisateur.

Un VPN est utilisé pour :

  • Protéger la vie privée en empêchant les sites web et les fournisseurs d’accès Internet (FAI) de suivre l’activité en ligne.
  • Sécuriser les connexions sur les réseaux publics (Wi-Fi dans un café, hôtel, etc.).
  • Contourner la censure ou les restrictions géographiques en simulant une connexion depuis un autre pays.

Comment fonctionne un VPN ?

  1. Connexion à un serveur VPN : L’utilisateur se connecte à un serveur VPN situé dans un pays de son choix.
  2. Chiffrement des données : Toutes les données envoyées et reçues passent par un tunnel sécurisé.
  3. Masquage de l’adresse IP : Le site web consulté voit uniquement l’adresse IP du serveur VPN et non celle de l’utilisateur.

Les protocoles VPN les plus courants

Un VPN utilise des protocoles spécifiques pour sécuriser les connexions :

  • OpenVPN : Très sécurisé et open source, il est utilisé par de nombreux fournisseurs VPN.
  • WireGuard : Plus récent, il offre une meilleure performance avec un chiffrement avancé.
  • IKEv2/IPSec : Rapide et stable, souvent utilisé sur les appareils mobiles.

Avantages et inconvénients d’un VPN

Avantages

  • Sécurise les connexions sur les réseaux Wi-Fi publics.
  • Permet d’accéder à du contenu restreint géographiquement.
  • Protège contre la surveillance et le suivi en ligne.

Inconvénients

  • Peut ralentir la connexion Internet en fonction du serveur utilisé.
  • Certains services bloquent les connexions VPN (Netflix, banques en ligne).
  • Les VPN gratuits peuvent être peu sécurisés et revendre les données des utilisateurs.

Exemple pratique

Il est possible de configurer un VPN sur un ordinateur en utilisant WireGuard, un protocole VPN rapide et sécurisé.

1. Installer WireGuard

Sur un système Linux (Ubuntu/Debian) :

sudo apt update
sudo apt install wireguard -y

2. Générer une paire de clés

WireGuard utilise une clé publique et une clé privée pour sécuriser la connexion.

wg genkey | tee privatekey | wg pubkey > publickey

3. Configurer le client VPN

Créer un fichier de configuration /etc/wireguard/wg0.conf :

[Interface]
PrivateKey = VOTRE_CLÉ_PRIVÉE
Address = 10.0.0.2/24
DNS = 8.8.8.8

[Peer]
PublicKey = CLÉ_PUBLIQUE_DU_SERVEUR
Endpoint = vpn.monserveur.com:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25

4. Activer la connexion VPN

sudo wg-quick up wg0

Pour désactiver le VPN :

sudo wg-quick down wg0

5. Vérifier la connexion VPN

Vérifier l’adresse IP après connexion :

curl ifconfig.me

L’adresse IP affichée doit être celle du serveur VPN et non celle du FAI.


Test de mémorisation/compréhension


Quel est le rôle principal d'un VPN ?


Quel protocole VPN est réputé pour sa rapidité et sa sécurité ?


Que permet un VPN en termes de confidentialité ?


Quel service peut bloquer l'utilisation d'un VPN ?


Quel est le principal inconvénient d'un VPN gratuit ?


Quel fichier contient la configuration d'un client WireGuard ?


Quelle commande permet d'activer une connexion WireGuard ?


Quelle commande permet de vérifier son adresse IP après connexion à un VPN ?


Quel élément n'est PAS un protocole VPN ?


Comment un VPN sécurise-t-il les données ?



TP pour réfléchir et résoudre des problèmes

Objectif du TP

Configurer et tester un VPN WireGuard sur un ordinateur afin de sécuriser la connexion Internet et masquer l’adresse IP.

Ce TP est divisé en plusieurs étapes :

  1. Installer WireGuard
  2. Générer une paire de clés pour l’authentification
  3. Configurer le client VPN
  4. Établir la connexion VPN
  5. Vérifier que la connexion VPN fonctionne

Étape 1 : Installer WireGuard

WireGuard est un protocole VPN moderne, rapide et sécurisé. Il est disponible sur la plupart des systèmes d’exploitation.

Instructions

  1. Mettre à jour la liste des paquets pour s’assurer d’avoir la dernière version de WireGuard :
    sudo apt update && sudo apt upgrade -y
  2. Installer WireGuard sur un système Linux (Ubuntu/Debian) :
    sudo apt install wireguard -y
  3. Vérifier que l’installation s’est bien déroulée en exécutant :
    wg --version
    Cette commande doit afficher la version installée de WireGuard.

Vérifier si :

  • WireGuard est installé et la commande wg --version affiche bien une version valide.

Étape 2 : Générer une paire de clés pour l’authentification

WireGuard utilise une paire de clés (une clé privée et une clé publique) pour sécuriser la connexion entre le client et le serveur.

Instructions

  1. Générer une clé privée et la stocker dans un fichier :
    wg genkey | tee privatekey
  2. Générer la clé publique associée en utilisant la clé privée :
    cat privatekey | wg pubkey > publickey
  3. Vérifier que les fichiers privatekey et publickey ont bien été créés en listant leur contenu :
    cat privatekey
    cat publickey

Vérifier si 2 fichiers ont été générés :

  • privatekey contient la clé privée.
  • publickey contient la clé publique dérivée.

Étape 3 : Configurer le client VPN

Il est maintenant nécessaire de configurer le client WireGuard pour qu’il puisse se connecter au serveur VPN.

Instructions

  1. Créer un fichier de configuration pour WireGuard :
    sudo nano /etc/wireguard/wg0.conf
  2. Ajouter la configuration suivante en remplaçant les valeurs par celles obtenues précédemment :
    [Interface]
    PrivateKey = VOTRE_CLÉ_PRIVÉE
    Address = 10.0.0.2/24
    DNS = 8.8.8.8

    [Peer]
    PublicKey = CLÉ_PUBLIQUE_DU_SERVEUR
    Endpoint = vpn.monserveur.com:51820
    AllowedIPs = 0.0.0.0/0
    PersistentKeepalive = 25
  3. Enregistrer et fermer le fichier (CTRL + X, puis Y et Entrée).
  4. Vérifier que le fichier est bien enregistré en listant son contenu :
    cat /etc/wireguard/wg0.conf

Vérifier si :

  • Le fichier /etc/wireguard/wg0.conf contient bien la configuration du client VPN.

Étape 4 : Établir la connexion VPN

Une fois la configuration terminée, il est possible d’activer la connexion VPN.

Instructions

  1. Lancer la connexion VPN en activant l’interface WireGuard :
    sudo wg-quick up wg0
  2. Vérifier que l’interface VPN est bien active :
    wg show
    Cette commande doit afficher des informations sur la connexion, notamment l’adresse IP et l’état de l’interface.

Vérifier si :

  • La commande wg show affiche des informations sur l’interface VPN, indiquant que la connexion est active.

Étape 5 : Vérifier que la connexion VPN fonctionne

Il est important de tester si la connexion VPN est bien établie et si l’adresse IP a été modifiée.

Instructions

  1. Vérifier l’adresse IP publique AVANT d’activer le VPN :
    curl ifconfig.me
    Noter l’adresse IP affichée.
  2. Activer le VPN (si ce n’est pas déjà fait) :
    sudo wg-quick up wg0
  3. Vérifier l’adresse IP publique APRÈS activation du VPN :
    curl ifconfig.me
    L’adresse IP doit maintenant être celle du serveur VPN et non celle du fournisseur d’accès Internet (FAI).
  4. Tester la connexion en accédant à un site bloqué géographiquement (si applicable).
  5. Désactiver le VPN après le test :
    sudo wg-quick down wg0

Vérifier si :

  • L’adresse IP a changé après l’activation du VPN, indiquant que la connexion est bien redirigée via le serveur VPN.
info

Le VPN WireGuard est maintenant configuré et fonctionnel. Il permet de sécuriser la connexion Internet et de masquer l’adresse IP.