
Configurez un VPN personnel dans le cloud
Algo VPN est un ensemble de scripts Ansible qui simplifient la mise en place d'un VPN personnel WireGuard et IPsec. Il utilise les réglages sécurisés par défaut les plus robustes et fonctionne avec les fournisseurs cloud courants.
Consultez notre annonce de publication pour plus d'informations.
Le moyen le plus simple de faire fonctionner un serveur Algo est de l'exécuter sur votre système local ou depuis Google Cloud Shell et de le laisser configurer une nouvelle machine virtuelle dans le cloud pour vous.
Configurez un compte chez un fournisseur d'hébergement cloud. Algo prend en charge DigitalOcean (le plus convivial), Amazon Lightsail, Amazon EC2, Vultr, Microsoft Azure, Google Compute Engine, Scaleway, DreamCompute, Linode, d'autres hébergements cloud basés sur OpenStack, des hébergements cloud basés sur CloudStack, ou Hetzner Cloud.
Obtenez une copie d'Algo. Les scripts Algo seront exécutés depuis votre système local. Il y a deux façons d'obtenir une copie :
Téléchargez le fichier ZIP. Décompressez le fichier pour créer un répertoire nommé algo-master contenant les scripts Algo.
Utilisez git clone pour créer un répertoire nommé algo contenant les scripts Algo :
git clone https://github.com/trailofbits/algo.git
Définissez vos options de configuration. Ouvrez config.cfg dans votre éditeur de texte préféré. Spécifiez les utilisateurs que vous souhaitez créer dans la liste users. Créez un utilisateur unique pour chaque appareil que vous prévoyez de connecter à votre VPN. Vous devriez également examiner les autres options avant le déploiement, car changer d'avis par la suite peut vous obliger à déployer un tout nouveau serveur.
Lancez le déploiement. Revenez à votre terminal. Dans le répertoire Algo, exécutez le script approprié pour votre plateforme :
macOS/Linux :
./algo
Windows :
.\algo.ps1
La première fois que vous exécutez le script, il installera automatiquement l'environnement Python requis (Python 3.11+). Lors des exécutions suivantes, il démarre immédiatement et fonctionne sur toutes les plateformes (macOS, Linux, Windows via WSL). Le script PowerShell Windows utilise automatiquement WSL si nécessaire, car Ansible nécessite un environnement de type Unix. Plusieurs fonctionnalités optionnelles sont disponibles, dont aucune n'est requise pour un serveur VPN pleinement fonctionnel. Ces fonctionnalités optionnelles sont décrites dans la documentation de déploiement.
C'est tout ! Vous pouvez maintenant configurer des clients pour se connecter à votre VPN. Passez à Configurer les clients VPN ci-dessous.
"# Congratulations! #"
"# Your Algo server is running. #"
"# Config files and certificates are in the ./configs/ directory. #"
"# Go to https://whoer.net/ after connecting #"
"# and ensure that all your traffic passes through the VPN. #"
"# Local DNS resolver 172.16.0.1 #"
"# The p12 and SSH keys password for new users is XXXXXXXX #"
"# The CA key password is XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX #"
"# Shell access: ssh -F configs/<server_ip>/ssh_config <hostname> #"
Les certificats et fichiers de configuration dont les utilisateurs auront besoin sont placés dans le répertoire configs. Assurez-vous de sécuriser ces fichiers car beaucoup contiennent des clés privées. Tous les fichiers sont enregistrés dans un sous-répertoire nommé avec l'adresse IP de votre nouveau serveur Algo VPN.
Important pour les utilisateurs IPsec : Si vous souhaitez ajouter ou supprimer des utilisateurs ultérieurement, vous devez sélectionner yes à l'invite Do you want to retain the keys (PKI)? lors du déploiement du serveur. Cela préserve l'autorité de certification nécessaire à la gestion des utilisateurs.
WireGuard est utilisé pour fournir des services VPN sur les appareils Apple. Algo génère un fichier de configuration WireGuard, wireguard/<nom_utilisateur>.conf, et un code QR, wireguard/<nom_utilisateur>.png, pour chaque utilisateur défini dans config.cfg.
Sur iOS, installez l'application WireGuard depuis l'App Store iOS. Ensuite, utilisez l'application WireGuard pour scanner le code QR ou transférer le fichier de configuration par AirDrop vers l'appareil.
Sur macOS, installez l'application WireGuard depuis le Mac App Store. WireGuard apparaîtra dans la barre de menu une fois l'application lancée. Cliquez sur l'icône WireGuard, choisissez Importer les tunnels depuis un fichier..., puis sélectionnez le fichier de configuration WireGuard approprié.