[Tuto] Utiliser son VPS comme serveur Wireguard pour un VPN maison (et gratuit)
Cette actualité est sponsorisée par NextVPN !
Illustration : Flock
Le 16 mars à 10h49
Dans un premier tuto, nous avons installé un gestionnaire de mot de passe – Vaultwarden – sur un VPS à quelques euros par mois. Il ronronne depuis sur le serveur, sans en utiliser toutes les ressources, loin de là ! Nous en profitons donc pour ajouter un autre service : un serveur VPN, avec Wireguard. Coût de l’opération : 0 euro. On vous détaille toutes les étapes.
[Tuto] Utiliser son VPS comme serveur Wireguard pour un VPN maison (et gratuit)
Cette actualité est sponsorisée par NextVPN !
Illustration : Flock
Dans un premier tuto, nous avons installé un gestionnaire de mot de passe – Vaultwarden – sur un VPS à quelques euros par mois. Il ronronne depuis sur le serveur, sans en utiliser toutes les ressources, loin de là ! Nous en profitons donc pour ajouter un autre service : un serveur VPN, avec Wireguard. Coût de l’opération : 0 euro. On vous détaille toutes les étapes.
Le 16 mars à 10h49
Sécurité
Sécurité
10 min
Un VPN dans le cas présent, pourra vous être utile sur des réseaux Wi-Fi publics et/ou partagés afin de créer un tunnel chiffré entre votre ordinateur/smartphone et votre VPS. Cela permet d’éviter des attaques du type Man in the middle ou le récent AirSnitch qui casse l’isolement des utilisateurs, par exemple. Vous pouvez également l’utiliser en déplacement afin d’avoir une IP française.
Pour choisir votre VPS, nous avons, pour rappel, publié un comparatif de trois offres à moins de 5 euros par mois. Nous sommes actuellement en train de passer en revue plusieurs hébergeurs et leurs VPS pas cher afin de vous expliquer toutes les subtilités. L’importance des vCore avec Ionos, les enjeux de la virtualisation avec LWS, etc.
Quant à l’utilité des VPS, nous avons publié un premier tuto sur la manière d’auto-héberger un gestionnaire de mot de passe, qui dispose d’applications mobiles et d’extensions pour navigateurs gratuites. Un VPN est un second usage, et c’est loin d’être le dernier ! Si ce n’est pas encore fait, pensez à le sécuriser !
Installation de Wireguard sur le serveur, puis création des clés
L’installation est simple et rapide. Il faut tout d’abord se connecter au VPS en SSH, nous utilisons PuTTY pour cela. Une fois sur le terminal, on commence par un « update » des dépôts ensuite on lance l’installation de Wireguard via la commande apt (cela installe automatiquement les dépendances wireguard-tools au passage) :
Il reste 78% de l'article à découvrir.
Déjà abonné ou lecteur ? Se connecter
Soutenez un journalisme indépendant,
libre de ton, sans pub et sans reproche.
Accédez en illimité aux articles
Profitez d'un média expert et unique
Intégrez la communauté et prenez part aux débats
Partagez des articles premium à vos contacts
expert et sans pub.
Commentaires (34)
Le 16 mars à 11h19
J'ai mis la configuration en place via networkd et je trouve plus simple et plus élégant d'avoir la configuration réseau centralisée et avec des méthodes unifiées plutot que de passer par du spécifique. La création des clés se fait de la même façon si je me souvient bien, et ensuite on a dans le répertoire /etc/systemd/network (comme pour toutes les interface réseaux), un fichier .netdev avec les paramètres de l'interface réseau (nom, clés, port d'écoute, interlocuteurs...) et un fichier .network avec les paramètres réseau (IP, masque, routage), le second n'étant pas spécifique à Wireguard.
Modifié le 16 mars à 12h01
Je suis intéressé par la configuration, est-ce que tu pourrais nous la partager s'il te plait ?
Le 17 mars à 16h02
Assurez vous que c'est bien systemd-networkd qui gère votre réseau et pas un autre système.
Pour créer un VPN entre les machines Alpha et Bravo:
Fichier
alpha:/etc/systemd/network/99-wg0bravo.netdevFichier
alpha:/etc/systemd/network/99-wg0bravo.networkJe fais le symétrique pour l'autre serveur, les sections Route permettent aux machines des LAN des deux cotés de se voir via Wireguard
Le 18 mars à 11h10
Modifié le 16 mars à 11h31
Ps : on peut aussi installer wiregard sur son propre routeur OpenWRT, pensez au port 443 pour que ça passe partout !
Le 17 mars à 14h35
Modifié le 16 mars à 11h54
fibre. (Depuis que j'ai la fibre j'ai rendu le vps.)
Mais ca impose d'avoir un routeur supplementaire (ou de le remplacer) chez soi par rapport à la solution proposée dans l'article.
Edit : beaucoup plus simple en fait, openwrt le gère nativement (load balancing), sauf si on veut vraiment agreger les debits (aucun interet a priori avec la fibre et surtout goulot etranglement du vps à 400Mb/s). Openmpctprouter n'est pas encore obsolete, mais semble peu maintenu.
Modifié le 16 mars à 12h02
Est-ce qu'il n'y aurait pas une erreur de configuration ? Le PostUp et PostDown sont identiques.
Le 16 mars à 14h29
Le 16 mars à 13h12
tu n'as pas entendu parler de pivpn seb ?
ça n'est pas limité au raspi, ça marche sur tout debian/ubuntu en ipv4 comme ipv6.
Le 16 mars à 13h45
Le 16 mars à 21h51
Le 17 mars à 22h50
Le 16 mars à 13h59
Et pour simplifier le tout, je trouve que tailscale est plus simple d'emploi (une grande partie de la complexité des clés, ... étant masqué). On choisit son exit node (une machine chez soi, un vps, ...) et hop
Le 16 mars à 14h02
Le 16 mars à 14h17
Le 16 mars à 16h58
Le 16 mars à 21h22
Modifié le 16 mars à 18h29
- le coût n'est pas si élevé que ça et on peut facilement l'installer avec des outils tiers comme Yunohost / DietPi.
- si on veut augmenter la rentabilité, on peut également installer d'autres apps (mots de passes, notes, boites mails, etc ...).
- on a la maîtrise sur les données
Bref, à une époque où on parle de souveraineté, je trouve ça plutôt important et le seul élément "compliqué" que j'ai eu à mettre en place, c'est l'installation automatique des mises à jour (unattended-upgrades) qui demande à aller modifier un fichier de config. Le reste se fait avec une interface graphique.
Et en préférence :
- si le système doit être accessible de l'extérieur : Yunohost (qui se chargera tout seul d'installer les certificats Let's Encrypt)
- si c'est en interne uniquement : DietPi
Le seul truc important à retenir (surtout si ça doit être accessible à l'extérieur), c'est que chaque app augmente la surface d'attaque, donc le risque de compromission du système.
Le 17 mars à 07h34
(et la vérification régulière de restauration)
Le 17 mars à 19h07
Est-ce qu'il n'existerait pas l'inverse où un serveur R (receveur) contacte un serveur S (sauvegardé) pour initier la sauvegarde de S et une fois fini, de récupérer les données depuis R ?
En gros :
- R demande à S d'initier la sauvegarde
- S sauvegarde et informe R quand c'est fini
- R télécharge la sauvegarde
Modifié le 17 mars à 20h10
Le 17 mars à 08h03
Le 16 mars à 19h05
Faites votre choix :
On va empêcher Seb de
Le 16 mars à 23h54
Le 17 mars à 08h49
Le 17 mars à 10h10
Par contre, je ne trouve pas de logs complets (avec les adresses IP, les tentatives...) pour surveiller l'usage.
WireGuard logue assez peu, et je n'ai pas encore trouvé comment loguer plus, surtout sous docker dans cette image.
Tu évoques du filtrage et plus, peux-tu en dire plus, en particulier sur les logs, STP ?
Le 20 mars à 12h00
Le 20 mars à 13h22
[Interface]
PrivateKey = ------
Address = 10.8.0.2/24
DNS = 1.1.1.1
Le 20 mars à 19h51
Le 22 mars à 23h18
Il y a une page de doc, sur wg-easy et AdGuard https://wg-easy.github.io/wg-easy/latest/examples/tutorials/adguard/
Le 26 mars à 04h18
Le 17 mars à 22h57
Le 18 mars à 10h27
Signaler un commentaire
Voulez-vous vraiment signaler ce commentaire ?