PiVPN
PiVPN, c’est un outil super pratique pour ceux qui veulent mettre en place leur propre VPN à la maison, facilement et à moindre coût. Il s’installe sur un Raspberry Pi (d’où son nom), mais il peut aussi fonctionner sur d’autres machines Linux. Avec PiVPN, tu peux sécuriser tes connexions internet, accéder à ton réseau local à distance, ou contourner certaines restrictions géographiques. PiVPN automatise le processus de configuration de VPN, simplifiant une tâche qui peut être complexe pour les utilisateurs novices.
WireGuard et OpenVPN
Performance de la machine (utilisation du processeur)
-
WireGuard : Utilise beaucoup moins de ressources CPU grâce à son design minimaliste et son utilisation de primitives cryptographiques modernes.
- Différence : WireGuard consomme 40% à 70% moins de CPU qu'OpenVPN lors d'une utilisation intensive.
-
OpenVPN : Plus gourmand en CPU, surtout lorsqu'il utilise des algorithmes cryptographiques plus complexes comme AES-256.
Débit (vitesse de connexion)
-
WireGuard : Optimisé pour des débits élevés. Il peut atteindre 20% à 300% de débit supplémentaire par rapport à OpenVPN, surtout sur des connexions avec une faible latence.
- Par exemple : Sur une même machine, WireGuard pourrait atteindre 900 Mbps tandis qu'OpenVPN plafonnerait à 300 Mbps.
-
OpenVPN : Limité par son architecture qui nécessite plus de cycles CPU pour le chiffrement et le décodage.
Nombre de connexions simultanées
-
WireGuard : Peut gérer davantage de connexions simultanées en raison de sa faible consommation de ressources. Environ 30% à 50% de connexions supplémentaires sont possibles sur le même matériel.
-
OpenVPN : Peut gérer moins de connexions simultanées car chaque tunnel consomme plus de ressources CPU et mémoire.
Latence
-
WireGuard : A une latence plus faible, environ 10% à 50% de réduction de la latence par rapport à OpenVPN, car il n'implémente pas autant de couches protocolaires.
-
OpenVPN : La latence est plus élevée, en partie en raison de la surcharge de TLS et de son modèle client-serveur.
WireGuard est nettement plus performant qu’OpenVPN dans presque tous les domaines techniques, particulièrement sur des machines légères comme un Raspberry Pi. OpenVPN reste cependant pertinent lorsqu’une compatibilité étendue ou des fonctionnalités spécifiques comme des configurations multi-authentifications sont nécessaires.
Ici je vais vous présenter les deux situations avec WireGuard et OpenVPN.
Installation WireGuard
Assurez vous de mettre à jour votre Raspberry Pi. Une fois cela fait, le processus d'installation est rapide et ne requiert qu'une seule commande à exécuter :
curl -L https://install.pivpn.io | bash
Configuration
La configuration est relativement facile à réaliser en suivant le guide, bien qu'il soit en anglais. Les étapes ne sont pas particulièrement complexes : vous décidez d'abord si le Raspberry Pi fonctionnera en mode DHCP ou avec une adresse IP fixe (recommandé pour faciliter la redirection sur votre box). Ensuite, vous choisissez l'utilisateur (User) qui sera autorisé à administrer le serveur VPN.
Dans mon cas, seul l'utilisateur "said" est configuré sur mon matériel. Vient ensuite l'étape où il faut choisir le mode d'installation, c’est-à-dire le type de service VPN à déployer : OpenVPN ou WireGuard.
Nous sommes presque à la fin ! Il reste à spécifier le port à utiliser et à rediriger vers votre Raspberry Pi. Pour WireGuard, le port par défaut est le 51820 (UDP). Sur l'avant-dernier écran, il vous sera demandé de choisir un fournisseur de DNS pour les clients. Si vous utilisez AdGuard ou PiHole dans votre réseau pour bloquer les publicités, c'est l'occasion de sélectionner l'option "Custom" (tout en bas de la liste) et d'y entrer le nom ou l'adresse IP de votre service. Vous pouvez en ajouter deux, séparés par une virgule.
Enfin, il vous sera demandé de choisir la méthode de connexion à votre serveur VPN : soit en utilisant l’adresse IP publique de votre box, soit en optant pour un domaine DNS (Domaine/Dynamic DNS). Si vous sélectionnez cette dernière option, vous devrez indiquer le nom de domaine (par exemple : domaine.fr/.com/.org…). Et voilà, l’installation et la configuration de votre VPN avec PiVPN sont désormais terminées.
Un message vous suggérera d'activer les Unattended Upgrades pour automatiser les mises à jour de sécurité. Enfin, il est conseillé de redémarrer votre Raspberry Pi après l'installation de PiVPN. Veillez à configurer correctement votre routeur en ouvrant ce port dans les règles NAT/PAT.
Ajout d’un utilisateur/périphérique
Pour ajouter un appareil, il vous suffira ensuite de taper la commande suivante :
pivpn -a
Installation OpenVPN
Avec OpenVPN, peu d'éléments diffèrent durant l'installation.
À cette étape, vous devrez choisir entre OpenVPN et WireGuard.
PiVPN vous offre ensuite la possibilité de choisir entre les protocoles UDP et TCP. Une configuration en UDP est généralement plus rapide, car les paquets sont envoyés sans nécessiter de confirmation de réception. En revanche, avec le protocole TCP, chaque paquet est confirmé à l’arrivée, ce qui permet une vérification de leur intégrité, mais au prix d’une vitesse légèrement réduite.
Vous devrez ensuite sélectionner le port que votre serveur OpenVPN utilisera. Par défaut, le port 1194 est suggéré, mais vous êtes libre d’en choisir un autre en fonction de vos besoins. Assurez vous toutefois d’ouvrir ce port dans les règles NAT/PAT de votre routeur pour permettre le bon fonctionnement du serveur.
Vous aurez le choix entre trois niveaux de chiffrement. Sélectionnez celui qui correspond le mieux à vos besoins. Un chiffrement de 4096 bits peut significativement ralentir la connexion. Pour notre part, nous avons opté pour l’option recommandée, le chiffrement de 2048 bits.
Commandes PiVPN











