Table des matières:
- Étape 1: Choisir votre service VPN
- Étape 2: Installez le Raspberry Pi
- Étape 3: Installez OpenVPN
- Étape 4: Configurer le routage
- Étape 5: Configurer le pare-feu et le NAT
- Étape 6: Conclusion
Vidéo: Passerelle VPN Raspberry Pi : 6 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:09
Mise à jour 2018-01-07:
- Mise à jour des éléments manquants et modifications nécessaires pour la version actuelle de Raspian.
- Également créé un guide spécifique pour NordVPN.
Il existe différentes utilisations du VPN. Soit vous voulez protéger votre vie privée et vos données privées des regards indiscrets, soit vous devez vous approvisionner dans un autre pays. L'approvisionnement dans un autre pays peut être très utile pour accéder à des services qui ne sont pas fournis dans votre pays. Il existe aujourd'hui un certain nombre de services VPN et la plupart d'entre eux offrent des logiciels faciles à utiliser pour votre ordinateur et des applications pour votre tablette ou votre téléphone. Mais si vous avez d'autres appareils non pris en charge par le logiciel que vous souhaitez passer par le VPN ? Créez ensuite une passerelle qui vous donne accès à Internet via le VPN.
Si vous regardez votre configuration réseau de base, vous avez une "passerelle par défaut" qui est utilisée pour toute adresse IP non située dans votre sous-réseau actuel (très simplifié). Ainsi, si vous configurez une passerelle qui peut acheminer le trafic Internet sur une connexion VPN établie, tout appareil compatible réseau peut tirer parti du tunnel VPN.
Mon cas d'utilisation principal dans mon appartement de San Francisco est un tunnel VPN vers ma Suède natale afin que je puisse diffuser des chaînes de lecture suédoises sur mes lecteurs multimédias et ma télévision intelligente. Il s'agit d'un cas d'utilisation assez courant pour la plupart des personnes ayant besoin d'un tunnel VPN. Étant donné que mes lecteurs multimédias et mes téléviseurs intelligents ne sont pas pris en charge par le logiciel VPN, j'en ai construit un à partir d'un Raspberry Pi.
Vous pouvez en acheter un pour moins de 40 $ sur Amazon. Je vous recommande cependant d'acheter un étui et un adaptateur secteur convenable. Pour cette instructable, vous avez besoin de:
- Framboise Pi 2 ou 3
- Un cas de votre goût
- Un adaptateur secteur décent
- Un câble réseau
Étape 1: Choisir votre service VPN
L'important lors de la sélection d'un service VPN est qu'il réponde à vos exigences. Pour ce cas d'utilisation, j'avais besoin d'un service VPN avec un point de sortie suédois, c'est la chose la plus importante car j'ai besoin des services suédois pour être convaincu que je suis en Suède. Au fil des ans, j'ai utilisé plusieurs fournisseurs différents et voici les éléments que je prends en considération lors de la sélection du fournisseur VPN pour le cas d'utilisation spécifique:
Essai gratuit
Je souhaite une période de test gratuite ou une petite quantité de données de test pour avoir une idée du logiciel ou de l'application. Je souhaite également tester les performances et l'expérience globale avant de payer pour cela. Il est également agréable de vérifier que mon idée fonctionnera avant de commencer à payer.
Intimité
Si la mise en œuvre est pour des problèmes de confidentialité, alors ce que la politique de confidentialité indique est vraiment important. Il est également important de savoir dans quel pays l'entreprise opère et quelles lois protègent votre vie privée. Les utilisateurs vraiment soucieux de la confidentialité devraient consulter un service qui indique qu'aucun journal de trafic n'est stocké et autorise les paiements anonymes via Bitcoin par exemple.
Trafic autorisé
Il peut y avoir des limitations sur le type de trafic que vous serez autorisé à exécuter. Les fournisseurs les plus sérieux bloquent généralement le trafic peer-to-peer. Il ne s'agit pas seulement d'éviter les problèmes juridiques, mais aussi de pouvoir maintenir les performances pour tous les utilisateurs. Il existe cependant de nombreux bons fournisseurs qui permettent le peer-to-peer tout en offrant un service de haute qualité. Mais si ce n'est pas votre principal besoin, je vous recommande de sélectionner un service qui n'autorise pas le peer-to-peer.
Limite de données
N'utilisez jamais un service qui maintient un plafond de données sur ses utilisateurs payants. Cela s'épuisera au pire moment possible exactement comme les données sur votre téléphone juste avant la partie amusante d'un clip vidéo !
Pays de sortie
Selon le cas d'utilisation, cela a une importance différente. Pour un cas d'utilisation comme le mien, où je dois me retrouver dans un pays spécifique, cela doit bien sûr figurer sur la liste. Je dois également être autorisé à sélectionner le pays dans lequel je sors. Il existe des services pour lesquels vous ne pouvez pas sélectionner le pays de sortie, restez à l'écart de ceux-ci. Vous pouvez vous retrouver dans un pays avec de mauvaises lois sur les performances ou la confidentialité. Même si vous n'avez pas besoin d'un pays spécifique, vous devez toujours sélectionner un service avec quelques pays différents à afficher pour pouvoir en trouver un avec de bonnes performances.
Type de logiciel et assistance
C'est l'une des principales raisons pour lesquelles je préfère les services avec un test gratuit. Il y a tellement de fournisseurs avec de mauvais logiciels qui sont bogués, peu sûrs ou qui ne fonctionnent tout simplement pas. Pour une implémentation Raspberry Pi, j'ai besoin d'un fournisseur qui prend en charge OpenVPN.
Ma sélection
Pour cette construction, je suis allé avec Tunnel Bear. Un test gratuit jusqu'à 500 Go est offert afin que je puisse tester que je pouvais réellement diffuser avant de payer quoi que ce soit. Ils sont basés au Canada qui, après la Suède, possède certaines des lois sur la protection de la vie privée les plus strictes au monde. Pas de plafond de données sur le service payant et je suis également autorisé à connecter plusieurs appareils à la fois. Ainsi, la protection de mon téléphone, de ma tablette et de mon ordinateur lorsque je voyage sur un réseau Wi-Fi non sécurisé est également réglée. Le nœud de sortie en Suède est pris en charge, il est en fait fourni via Bahnhof qui est connu pour sa forte confidentialité en Suède. Pour les forfaits payants, ils offrent le support OpenVPN. Ils ne le font pas pour le test gratuit, mais il suffisait de l'exécuter depuis mon ordinateur portable pour s'assurer que les services de streaming fonctionnaient.
Étape 2: Installez le Raspberry Pi
Pour des implémentations comme celle-ci, j'utilise le système d'exploitation Raspbian Lite. Puisque je n'ai pas du tout besoin de l'interface graphique. Vous pouvez obtenir la dernière version ici.
J'utilise Win32DiskImager pour charger le fichier.img sur la carte SD du Raspberry Pi.
Une fois que le Raspberry Pi a démarré, je regarde dans la liste DHCP de mes routeurs pour obtenir l'adresse IP, puis je me connecte via SSH avec Putty. Le nom d'utilisateur et le mot de passe standard sont pi/raspberry
Une fois connecté, je lance l'outil raspi-config pour modifier les paramètres de base.
sudo raspi-config
Les choses les plus importantes à prendre en compte dans cette configuration sont:
- Développer le système de fichiers
- Changer le mot de passe
Vous pouvez également changer le nom d'hôte de votre Raspberry Pi si vous le souhaitez. Mes DHCP ont des baux très longs et je peux aussi réserver une adresse spécifique. Si vous n'avez pas cette capacité, vous devez configurer le Raspberry Pi pour utiliser une adresse IP statique. Étant donné que d'autres appareils l'utiliseront comme passerelle par défaut, il est important qu'il continue à utiliser la même adresse IP. Voici un article que j'ai écrit sur la définition d'une adresse IP statique dans Raspbian Jessie.
Ensuite, nous devons tout mettre à niveau vers la dernière version:
sudo apt-get updatesudo apt-get upgrade sudo apt-get dist-upgrade
Étape 3: Installez OpenVPN
Nous devons maintenant installer OpenVPN sur le Raspberry Pi.
sudo apt-get install openvpn
Ensuite, nous devons nous assurer que le service démarre correctement.
sudo systemctl activer openvpn
Une fois l'installation terminée, nous devons copier les fichiers de configuration et les certificats OpenVPN dans la boîte. Cela vous sera fourni par votre fournisseur VPN. Dans mon cas, en utilisant TunnelBear, j'ai trouvé un article de blog sur le support Linux. Sur cette page, il y a un lien vers un fichier zip contenant tout ce dont nous avons besoin.
Le fichier contient les fichiers de certificat et un fichier de configuration.opvn pour chaque pays vers lequel vous pouvez créer un tunnel. Vous avez besoin de tous les fichiers de certificat et du fichier de configuration.opvn pour le pays de votre choix, dans mon cas la Suède. Décompressez les fichiers nécessaires et utilisez winscp pour télécharger les fichiers sur votre Raspberry Pi. Le même nom d'utilisateur/mot de passe que celui utilisé pour SSH vous amènera à /home/pi, déposez simplement les fichiers là-bas.
Ensuite, nous retournons au terminal SSH et déplaçons les fichiers dans le dossier OpenVPN. La première commande est juste pour s'assurer que nous sommes dans le dossier /home/pi.
cd /accueil/pi
sudo mv * /etc/openvpn/
Nous devons maintenant apporter quelques modifications aux fichiers. Nous devons d'abord renommer le fichier de configuration de.ovpn en.conf. Tout fichier se terminant par.conf dans le dossier /etc/openvpn démarrera automatiquement au démarrage du démon OpenVPN. Nous devons d'abord entrer dans ce répertoire.
cd /etc/openvpn
Ensuite, nous changeons le nom du fichier de configuration. Vous pouvez lui donner le nom que vous voulez tant qu'il se termine par.conf. Je préfère utiliser des noms de fichiers sans espaces vides, dans ce cas je vais avec swe.conf.
sudo mv *.ovpn swe.conf
Ensuite, nous avons besoin d'un fichier d'authentification contenant le nom d'utilisateur et le mot de passe utilisés pour le tunnel VPN. Ouvrez un éditeur de texte et écrivez le nom d'utilisateur et le mot de passe sur des lignes séparées. Nous appellerons ce fichier auth.txt.
sudo nano auth.txt
Le contenu devrait ressembler à cet exemple:
Nom d'utilisateur
le mot de passe
Ensuite, utilisez CTRL + O pour écrire dans le fichier et CTRL + X pour quitter l'éditeur de texte nano. Nous devons également protéger le fichier auth.txt contenant nos informations d'identification.
sudo chmod 600 /etc/openvpn/auth.txt
Ensuite, nous devons éditer le fichier de configuration pour nous assurer que tous les chemins sont corrects et ajouter une référence au fichier auth.txt nouvellement créé.
sudo nano swe.conf
Les lignes qui doivent être modifiées sont celles faisant référence à d'autres fichiers, elles doivent être des chemins absolus. Dans cet exemple, voici ce que nous recherchons:
ca CACertificate.crt
cert UserCertificate.crt clé PrivateKey.key
Nous les changeons en chemins absolus comme ceci:
ca /etc/openvpn/CACertificate.crt
cert /etc/openvpn/UserCertificate.crt clé /etc/openvpn/PrivateKey.key
Ensuite, à la fin du fichier, nous ajoutons une référence au fichier auth.txt, comme ceci:
auth-user-pass /etc/openvpn/auth.txt
Encore une fois, nous utilisons CTRL + O pour enregistrer le fichier, puis CTRL + X pour quitter nano. Nous pouvons maintenant redémarrer le démon OpenVPN et voir que le tunnel fonctionne.
redémarrage du service sudo openvpn
Si vous exécutez la commande ifconfig, vous devriez voir un adaptateur tun0 en plus de vos adaptateurs eth0 et lo si le tunnel est actif. Vous pouvez également exécuter la commande this command pour vérifier votre IP publique:
wget https://ipinfo.io/ip -qO -
Si vous rencontrez des problèmes pour démarrer le tunnel, essayez d'abord de redémarrer votre Raspberry Pi, puis vérifiez la configuration pour les erreurs.
Étape 4: Configurer le routage
Nous devons maintenant activer le transfert IP. Il permet au trafic réseau d'entrer de l'une des interfaces réseau et de sortir de l'autre. Essentiellement créer un routeur.
sudo /bin/su -c "echo -e '\n#Enable IP Routing\nnet.ipv4.ip_forward = 1' > /etc/sysctl.conf"
Si vous exécutez sudo sysctl -p, vous devriez voir ceci imprimé à l'écran:
net.ipv4.ip_forward = 1
Désormais, le routage est activé et le trafic peut passer par le Raspberry Pi, par le tunnel et sur Internet.
Étape 5: Configurer le pare-feu et le NAT
Étant donné que nous aurons plusieurs clients à l'intérieur accédant à Internet via une adresse IP publique, nous devons utiliser NAT. Il signifie traduction d'adresse réseau et gardera une trace de quel client a demandé quel trafic lorsque les informations reviennent sur le tunnel. Nous devons également configurer une certaine sécurité autour du Raspberry Pi lui-même et du tunnel.
sudo iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
Activer le NAT.
sudo iptables -A FORWARD -i eth0 -o tun0 -j ACCEPTER
Autoriser tout trafic provenant de eth0 (interne) à passer par tun0 (tunnel).
sudo iptables -A FORWARD -i tun0 -o eth0 -m state --state RELATED, ESTABLISHED -j ACCEPT
Autoriser le trafic de tun0 (tunnel) à revenir sur eth0 (interne). Puisque nous spécifions l'état RELATED, ESTABLISHED, il sera limité à la connexion initiée depuis le réseau interne. Blocage du trafic externe essayant d'initier une nouvelle connexion.
sudo iptables -A INPUT -i lo -j ACCEPT
Autoriser le propre trafic de bouclage du Raspberry Pi.
sudo iptables -A ENTRÉE -i eth0 -p icmp -j ACCEPTER
Autoriser les ordinateurs du réseau local à envoyer un ping au Raspberry Pi.
sudo iptables -A ENTRÉE -i eth0 -p tcp --dport 22 -j ACCEPTER
Autoriser SSH depuis le réseau interne.
sudo iptables -A INPUT -m state --state ESTABLISHED, RELATED -j ACCEPT
Autoriser le retour de tout le trafic initié par le Raspberry Pi. Il s'agit du même principe d'état que précédemment.
sudo iptables -P FORWARD DROP
sudo iptables -P INPUT DROP sudo iptables -L
Si le trafic ne correspond à aucune des règles spécifiées, il sera supprimé.
sudo apt-get install iptables-persistent
sudo systemctl activer netfilter-persistant
La première ligne installe une paix de code qui rend les règles iptable que nous venons de créer persistantes entre les redémarrages. Le second enregistre les règles après les avoir modifiées. Cette fois, il suffit de lancer le premier. Si vous modifiez les règles, exécutez la seconde pour enregistrer. Les règles Iptable sont en vigueur dès que vous les ajoutez si vous vous trompez et perdez l'accès, redémarrez simplement et celles qui ne sont pas déjà enregistrées seront rétablies.
Étape 6: Conclusion
Vous pouvez désormais utiliser ce tunnel depuis n'importe quel appareil ou ordinateur sur le même réseau. Remplacez simplement la passerelle par défaut par l'adresse IP de votre Raspberry Pi. Dans mon cas, mes deux centres multimédias Kodi (une chambre et un salon) utilisent cette connexion pour que je puisse diffuser mes chaînes de lecture suédoises. Bien sûr, il y a d'autres choses pour lesquelles vous pouvez également l'utiliser.
Gardez simplement à l'esprit que selon le fournisseur de VPN que vous avez choisi et la vitesse de votre connexion Internet, les performances peuvent être lentes.
Si vous avez des questions ou si vous voulez que je clarifie quelque chose, faites-le moi savoir dans les commentaires ! Pour plus d'articles techniques, veuillez visiter mon blog Hackviking!
Conseillé:
MuMo - Passerelle LoRa : 25 étapes (avec photos)
MuMo - LoRa Gateway : ### UPDATE 10-03-2021 // les dernières informations / mises à jour seront disponibles sur la page github : https://github.com/MoMu-Antwerp/MuMoWhat is MuMo?MuMo est une collaboration entre développement de produits (un département de l'Université d'Anvers) sous le
Comment transformer votre Raspberry Pi en passerelle d'accès à distance : 6 étapes
Comment transformer votre Raspberry Pi en passerelle d'accès à distance : Hé les gars ! À la lumière des récents événements, notre équipe de remote.it a travaillé dur pour trouver des idées pour rendre le travail à distance indolore et accessible. Nous avons mis au point l'image de carte SD remote.itPi, qui est une carte SD que vous pouvez mettre dans un nouveau
Passerelle Lora (Dragino LG01-P): 6 étapes
Passerelle Lora (Dragino LG01-P): LoRa est un LPWAN rouge, por sus siglas en francés (LOW POWER WIDE AREA NETWORK). Es una red de largo alcance y bajo consumo de energía, ideal para dispositivos IoT. Entre las aplicaciones más comunes se encuentran; Ciudades inteligentes, Agriculture
Système d'éclairage de passerelle intelligent - Team Sailor Moon: 12 étapes
Système d'éclairage de passerelle intelligent - Équipe Sailor Moon : Salut ! Voici Grace Rhee, Srijesh Konakanchi et Juan Landi, et ensemble nous formons la Team Sailor Moon ! Aujourd'hui, nous vous proposons un projet de bricolage en deux parties que vous pouvez mettre en œuvre directement dans votre propre maison. Notre système d'éclairage de passerelle intelligent final comprend un ul
Passerelle Raspberry Pi LoRaWAN : 3 étapes
Passerelle Raspberry Pi LoRaWAN : Ce projet est une passerelle Raspberry PI iC880a-spi LoRaWAN. Il a été mis en place à l'aide de divers autres didacticiels en ligne et intègre le meilleur et ce qui fonctionne actuellement à partir de ces didacticiels et les références étaient nécessaires tout au long. La porte