Table des matières:
- Étape 1: Matériaux
- Étape 2: Configuration du point d'accès Wifi - Partie 1 - Adresse IP statique pour Wifi
- Étape 3: Configuration du point d'accès Wifi - Partie 2 - Configuration Hostapd
- Étape 4: Configuration DNSMasq et transfert IP
- Étape 5: Configuration d'OpenVPN et configuration du fournisseur de services VPN
Vidéo: Sécurisez tout le Wifi avec un VPN - Point d'accès ! : 5 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:08
Alors que de plus en plus de nos vies sont envoyées dans le grand nuage dans le ciel qu'est Internet, il devient de plus en plus difficile de rester en sécurité et privé dans vos aventures personnelles sur Internet. Que vous accédiez à des informations sensibles que vous souhaitez garder privées, que vous essayiez de contourner les limites imposées à l'endroit ou à quoi vous pouvez naviguer sur votre réseau, ou que vous souhaitiez simplement une expérience de navigation plus sécurisée, le conseil le plus courant que j'entends pour rester en sécurité sur Internet est d'utiliser un réseau privé virtuel (ou VPN en abrégé).
Les VPN offrent deux excellents services dans un seul package, en ce sens qu'ils cryptent tous les paquets d'informations qui leur sont envoyés et qu'ils créent des services distants qui se trouvent sur le même réseau que le VPN local pour la machine que vous utilisez pour vous connecter. Si mon serveur VPN est en Allemagne et que je me connecte à mon VPN depuis un ordinateur portable en Australie, mon ordinateur portable aura désormais une adresse IP en Allemagne !
Cependant, un point d'achoppement majeur avec les services VPN les plus populaires est que de nombreux types d'appareils se trouvent dans des situations où ils ne peuvent pas être configurés pour utiliser un client VPN ou n'ont pas de client VPN disponible. Nous voulons donc que nos appareils soient connectés à notre VPN, mais pour ces autres machines qui ne peuvent pas se connecter avec un simple client VPN, nous voulons qu'elles soient connectées à notre VPN sans même savoir qu'elles sont connectées ! Entrez un point d'accès VPN !
Étape 1: Matériaux
Les matériaux pour ce projet sont faibles, mais tous les éléments sont nécessaires.
Autre que votre routeur domestique (que je suppose que vous devriez avoir), vous aurez besoin
- 1 Raspberry Pi (de préférence le Raspberry Pi 3 ou mieux, mais tant qu'il peut supporter une connexion ethernet ça devrait aller !)
- 1 cordon Ethernet
- 1 dongle wifi (sauf si vous utilisez un Raspberry Pi 3, auquel cas vous pouvez utiliser le wifi intégré
- 1 alimentation 5V 2amp pour le Raspberry Pi
Étape 2: Configuration du point d'accès Wifi - Partie 1 - Adresse IP statique pour Wifi
Avant de configurer la connexion VPN pour notre point d'accès Raspberry Pi, nous devons configurer le Pi comme point d'accès. Pour ce faire, nous utiliserons les packages hostapd et dnsmasq pour le Raspberry Pi. Hostapd est un démon d'espace utilisateur permettant de définir des points d'accès sans fil et des serveurs d'authentification, tandis que dnsmasq fournit une infrastructure réseau (DNS, DHCP, démarrage réseau, etc.) pour les petits réseaux et les petits routeurs réseau.
Donc, avant de commencer, assurez-vous d'avoir une image propre de Raspbian OS s'exécutant sur le Pi, avec les dernières mises à jour appliquées. Vous voulez également vous assurer que votre Raspberry Pi est connecté à votre routeur via une connexion Ethernet en dur, PAS en wifi ! Finalement, nous accepterons les demandes de connexion d'autres appareils via notre module wifi, vous ne voulez donc pas être connecté à votre routeur via le même module. Si vous utilisez un Raspberry Pi Zero ou un ajout plus ancien (qui n'a pas de wifi intégré), vous pouvez toujours utiliser ce Raspberry Pi, vous avez juste besoin d'un dongle wifi USB.
Après vous être connecté à votre Raspberry Pi (via SSH ou avec un moniteur allumé) vérifiez qu'il est à jour
sudo apt-get mise à jour
sudo apt-get mise à niveau
Ensuite, vous voudrez télécharger et installer hostapd et dnsmasq
sudo apt-get install hostapd dnsmasq
Une fois les packages installés, les deux programmes démarreront automatiquement, mais nous souhaitons apporter des modifications à leurs configurations avant de les exécuter. Nous allons donc contacter le contrôle du système pour arrêter les services liés à ces programmes
sudo systemctl arrêter hostapd
sudo systemctl stop dnsmasq
Avec les services maintenant arrêtés, nous voudrons nous attribuer une adresse IP statique, en utilisant le fichier de configuration dhcpcd trouvé dans /etc/dhcpcd.conf
Avant de faire cela, nous voulons nous assurer que nous référençons la bonne interface lors de l'attribution de l'adresse IP statique. Si vous utilisez un Raspberry Pi 3b ou Raspberry Pi Zero W, il doit être répertorié comme wlan0. Si vous utilisez un dongle wifi, je trouve normalement qu'il est un peu plus facile de connecter le dongle wifi au routeur, de saisir une nouvelle adresse IP, puis de vérifier votre connexion pour trouver votre interface. Vous pouvez vérifier votre interface en exécutant la commande suivante
ifconfig
Si vous vérifiez l'image du haut jointe à cette étape, vous pouvez voir (moins les adresses IP rédigées) les interfaces attribuées à mon Raspberry Pi. Dans mon cas, j'utilise wlan0, mais cela dépend de votre configuration. Comme je l'ai mentionné plus tôt, si vous utilisez un dongle wifi, connectez-vous à votre réseau, exécutez la commande ifconfig, et quelle que soit l'interface qui apparaît et qui a une adresse IP valide et qui n'est pas "eth0" ou "lo" sera l'interface que vous voulez utiliser.
Maintenant que je sais quelle interface est destinée à mon adaptateur wifi, je peux lui attribuer une adresse IP statique dans le fichier de configuration dhcpcd ! Affichez la configuration dans votre éditeur préféré (j'utilise nano).
sudo nano /etc/dhcpcd.conf
En bas de la configuration, nous souhaitons ajouter les lignes suivantes, mais remplacer "wlan0" par quelle que soit votre interface:
interface wlan0 statique ip_address=192.168.220.nohook wpa_supplicant
Cette commande établit une adresse IP statique de 192.168.220.1, puis indique à l'interface wlan0 de ne pas se connecter au pilote wpa_supplicant qui est généralement utilisé pour que cette interface se connecte à d'autres réseaux. Nous faisons cela pour (éventuellement) diffuser notre propre signal via l'interface wlan0, plutôt que de nous connecter à un réseau via cette interface.
Si vous utilisez nano pour effectuer ces modifications, enregistrez les modifications en appuyant sur ctrl+x, puis sur Y, puis entrez pour enregistrer le fichier et quittez nano. (gardez à l'esprit que nous allons entrer et sortir de nano un peu dans ce tutoriel).
Enfin, pour que ces modifications prennent effet, vous devrez soit redémarrer votre Pi, soit simplement redémarrer le service dhcpcd pour recharger la configuration et appliquer ces modifications
sudo systemctl redémarrer dhcpcd
Attendez un moment, puis exécutez à nouveau la commande ifconfig pour vérifier et voir si vos modifications ont pris effet. J'admets, parfois j'ai essayé ceci et mon routeur a toujours un bail valide sur l'adresse IP que j'utilisais, donc il gardera l'ancienne adresse. Si tel est le cas, vérifiez tout dans votre configuration et redémarrez à nouveau le service dhcpcd.
Notre adaptateur wifi (devrait) avoir maintenant une adresse IP statique !
Ensuite, la configuration hostapd et dnsmasq !
Étape 3: Configuration du point d'accès Wifi - Partie 2 - Configuration Hostapd
Avec les modifications de dhcpcd.conf à l'écart, il est temps de commencer avec hostapd ! Commencez par créer un nouveau fichier hostapd.conf dans votre éditeur de texte préféré (encore une fois dans nano pour moi !)
sudo nano /etc/hostapd/hostapd.conf
Lorsque vous affichez le fichier de configuration, copiez le texte suivant et collez-le dans le fichier config.
interface=wlan0driver=nl80211
hw_mode=g channel=6 ieee80211n=1 wmm_enabled=0 macaddr_acl=0 ignore_broadcast_ssid=0
auth_algs=1 wpa=2 wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP
# Nom et mot de passe du réseau Wifi VOUS DEVRIEZ CHANGER CE ssid=Pi-WifiFoLife # La phrase de passe du réseau wpa_passphrase=Y0uSh0uldCh@ng3M3
Une fois que vous avez collé cela, recherchez la dernière section en bas qui contient "ssid=" et "wpa_passphrase=". C'est ainsi que s'appellera le réseau wifi que nous mettons en place et quel est le mot de passe pour se connecter au réseau wifi que nous mettons en place. ASSUREZ-VOUS DE CHANGER CELA POUR QUELQUE CHOSE D'AUTRE ! Tu étais prévenu.
De plus, si vous utilisez un dongle wifi au lieu du wifi intégré, vous devrez modifier la section d'interface en haut de la configuration pour qu'elle corresponde à l'interface de votre dongle wifi. Vous devrez peut-être également changer de pilote, en fonction du modèle de dongle wifi que vous utilisez. Pour une liste (pour la plupart complète) des dongles wifi compatibles, de leurs pilotes correspondants et des pages de support, j'ai trouvé cette page très utile ! Consultez également la page d'assistance du produit que vous utilisez si vous êtes bloqué. N'oubliez pas que si vous avez pu vous connecter à votre réseau plus tôt dans le didacticiel avec votre dongle wifi, cela signifie qu'il devrait y avoir un pilote fonctionnel pour le dongle sur votre pi quelque part !!!
Maintenant que nous avons notre nouveau fichier de configuration, nous devons nous assurer de dire aux processus hostapd de référencer le nouveau fichier de configuration ! commencer par ce qui suit:
sudo nano /etc/default/hostapd
Trouvez la ligne dans le fichier que nous venons d'ouvrir qui lit et remplacez-la par DAEMON_CONF="/etc/hostapd/hostapd.conf" (assurez-vous que vous décochez # au début pour décommenter le champ!)
Il y a un autre fichier de configuration pour hostapd que nous devons mettre à jour. Exécutez la commande suivante:
sudo nano /etc/init.d/hostapd
Ce changement est presque identique au précédent. Recherchez la section DAEMON_CONF= et remplacez-la par DAEMON_CONF=/etc/hostapd/hostapd.conf
Ensuite, enregistrez et quittez ce fichier !
Hostapd est maintenant configuré !
Étape 4: Configuration DNSMasq et transfert IP
Avec hostapd maintenant configuré (mais pas encore en cours d'exécution), nous pouvons maintenant passer à dnsmasq !
Avant de vous lancer dans l'édition des fichiers de configuration, nous pouvons continuer et renommer l'un des fichiers de configuration d'origine, car nous n'utiliserons rien de ce qui se trouve dans ce fichier de configuration particulier.
Faire une commande mv rapide avec un nouveau nom de fichier devrait faire l'affaire
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.old
Créez ensuite un nouveau fichier de configuration !
sudo nano /etc/dnsmasq.conf
Sans entrer trop dans celui-ci, je copierais simplement ce qui suit et le collerais dans le nouveau fichier
interface=wlan0 # Utilisez l'interface wlan0 (ou toute autre interface sans fil) server=1.1.1.1 # Cloudfare dhcp-range=192.168.220.50, 192.168.220.150, 12h # Plage IP et durée de bail
La ligne du haut de cette configuration est pour l'interface que nous utilisons pour diffuser notre signal, la ligne du milieu est pour notre fournisseur de service de nom de domaine, puis la ligne du bas est la plage d'adresses IP que le Pi attribuera aux utilisateurs qui se connectent à le Pi Wifi. Allez-y et enregistrez ce fichier, puis quittez nano (ou vim, ou tout ce que vous utilisez pour les modifications de fichier).
Ensuite, nous devons configurer le fichier de configuration systctl.conf pour transférer tout le trafic qui arrive sur l'interface sans fil pour l'acheminer via la connexion Ethernet.
sudo nano /etc/sysctl.conf
Dans ce fichier de configuration, tout ce que vous avez à faire est de décommenter la ligne #net.ipv4.ip_forward=1 et de sauvegarder/sortir de ce fichier de configuration.
Maintenant que nous avons configuré le transfert, nous voulons configurer un NAT (Network Address Translation) entre l'interface sans fil (wlan0) et l'interface ethernet (eth0). Cela permet de transférer tout le trafic du wifi vers la connexion Ethernet (et éventuellement VPN !).
Ajouter une nouvelle règle à iptable pour le transfert NAT
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
La règle est maintenant configurée, mais l'iptable est vidé à chaque redémarrage du Raspberry Pi, nous devons donc enregistrer cette règle afin qu'elle puisse être (re)chargée à chaque redémarrage de notre Pi.
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"
La règle est maintenant enregistrée, mais nous devons mettre à jour le fichier de configuration local rc.local du Pi pour nous assurer qu'il est chargé à chaque fois !
Ouvrez le fichier rc.local dans votre éditeur préféré
sudo nano /etc/rc.local
et trouvez la section qui dit sortie 0
Juste au-dessus de cette ligne (ne la supprimez pas !), ajoutez la commande suivante qui rechargera la règle NAT que nous avons configurée. Il devrait maintenant ressembler à ceci
iptables-restore < /etc/iptables.ipv4.nat exit0
Enregistrez et quittez ce fichier, et maintenant toutes nos configurations doivent être effectuées pour le point d'accès !
Tout ce que nous avons à faire est de démarrer les services hostapd et dnsmasq, et de redémarrer notre Raspberry Pi !
démarrage du service sudo hostapd
démarrage du service sudo dnsmasq
Testez pour vous assurer que vous pouvez voir votre nouveau point d'accès. Si tout est bien configuré, vous devriez maintenant avoir un point d'accès wifi sur votre Raspberry Pi ! Maintenant, redémarrez le pi
redémarrage sudo
Ensuite, configurez une connexion OpenVPN !
Étape 5: Configuration d'OpenVPN et configuration du fournisseur de services VPN
Maintenant que notre Pi diffuse le wifi, il est temps de configurer openvpn ! Nous allons commencer par installer openvpn via apt-get install
sudo apt-get install openvpn -y
Une fois l'installation d'openvpn terminée, nous devons accéder à l'emplacement où nous stockerons nos informations d'authentification et le fichier de configuration openvpn.
cd /etc/openvpn
La première chose que nous allons faire ici (dans /etc/openvpn) est de configurer un fichier texte dans lequel nous stockerons notre nom d'utilisateur et notre mot de passe pour le service VPN que nous utilisons.
sudo nano auth.txt
Tout ce dont nous avons besoin est de stocker le nom d'utilisateur et le mot de passe dans ce fichier, rien d'autre.
Nom d'utilisateur
le mot de passe
Je dois ajouter qu'à ce stade, vous devriez avoir une idée de qui vous souhaitez utiliser comme service VPN pour vos connexions. Il y a un large débat sur le service qui est le meilleur ou le plus sûr, alors faites le tour et vérifiez également les critiques à leur sujet ! Pour les besoins de ce didacticiel, j'utilise Private Internet Access (PIA). Ils sont assez bon marché et sont reconnus pour être très fiables ! Vous pouvez également configurer votre VPN pour qu'il se termine dans à peu près n'importe quelle grande région du monde ! Canada? Russie? Japon? Pas de problème!
Si vous utilisez Private Internet Access, ils ont également une partie pratique de leur site, où vous pouvez créer le type de fichier de configuration openvpn que vous pouvez utiliser dans cette configuration ! Il existe d'autres types de configurations openvpn que vous pouvez utiliser avec d'autres fournisseurs, mais j'ai décidé de choisir celle-ci.
Quel que soit le fournisseur de services que vous choisissez, vous avez besoin d'un fichier de connexion openvpn (doit se terminer par.ovpn pour le type de fichier) dudit fournisseur de services pour vous connecter. Pour simplifier, j'ai renommé le mien "connectionprofile.ovpn" avant de le charger sur mon Raspberry Pi. Une fois que vous avez téléchargé le fichier.ovpn sur le Pi ou que vous l'avez transféré sur le Pi, assurez-vous que le fichier se trouve dans /etc/openvpn sur votre Pi.
Après avoir déplacé le fichier vpn ouvert dans le bon dossier, nous devons ensuite changer le type de fichier car openvpn attend un fichier de configuration qui se termine par.conf au lieu de.ovpn. Quand j'ai fait cela, je voulais toujours garder le fichier d'origine intact, juste au cas où quelque chose de génial se produirait, alors j'ai juste utilisé une commande cp (puisque vous êtes dans /etc/openvpn, vous devrez utiliser les autorisations sudo pour exécuter cette commande)
sudo cp /etc/openvpn/connectionprofile.ovpn /etc/openvpn/connectionprofile.conf
Avec la configuration de profil openvpn créée, nous devons effectuer un changement rapide pour fournir nos informations d'identification, il est donc temps de sortir à nouveau de nano!
sudo nano /etc/openvpn/connectionprofile.conf
Vous voudrez trouver la ligne auth-user-pass et la remplacer par auth-user-pass auth.txt
Cela indique à openvpn de récupérer le fichier d'informations d'identification que nous avons utilisé précédemment pour authentifier le profil que nous avons fourni.
Enregistrez et quittez le fichier de configuration du profil !
Cela devrait être tout pour la configuration VPN, mais nous voudrons tester que toute notre configuration a été correctement configurée avant de configurer le service VPN pour qu'il démarre automatiquement. Exécutez la commande suivante pour tester la connexion VPN
sudo openvpn --config "/etc/openvpn/connectionprofile.conf"
Vous devriez voir un tas de texte défiler pendant que le Pi fait des tentatives de connexion au fournisseur de services VPN (espérons-le pas de messages d'erreur !), mais vous voulez le laisser jusqu'à ce que vous voyiez la séquence d'initialisation terminée dans la fenêtre. Si vous finissez par voir cela, cela signifie que votre Pi est connecté à votre fournisseur de services VPN ! Vous pouvez continuer et tuer le processus en appuyant sur ctrl + c dans la fenêtre du terminal.
Maintenant que le VPN fonctionne, nous devons effacer les iptables actuels. Nous pouvons compléter cela avec les trois commandes suivantes
sudo iptables -Fsudo iptables -t nat -F sudo iptables -X
Depuis que nous avons vidé les iptables, nous devons réinitialiser la règle nat que nous avions créée plus tôt dans ce didacticiel en exécutant la commande suivante (cette commande devrait vous sembler familière !)
sudo iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
Nous pouvons maintenant enregistrer cette configuration par rapport à la configuration précédente que nous avons reconstituée à l'étape précédente. (cette commande devrait également vous sembler familière !)
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"
Maintenant que nous avons configuré les règles NAT, nous devons modifier la configuration par défaut pour openvpn afin d'utiliser le profil que nous avons configuré. Nous le faisons en éditant le fichier de configuration dans /etc/default/openvpn
sudo nano /etc/default/openvpn
Trouvez la ligne qui dit #autostart="all", décommentez cette ligne et remplacez-la par le nom de votre fichier de configuration openvpn (moins le.conf bien sûr!) Donc dans mon cas, je change la ligne en autostart=" profil de connexion"
puis enregistrez et quittez ce fichier de configuration !
Cela devrait être tout pour la configuration VPN ! Redémarrez simplement le Pi et vérifiez que tout fonctionne en vous connectant au point d'accès et en vérifiant votre adresse IP via un site tel que whatismyip.com.
Avec cette configuration, il est possible que l'adresse IP de votre routeur soit divulguée via une fuite DNS. Nous pouvons résoudre ce problème en modifiant le DNS que nous référençons dans le fichier dhcpcd.conf pour pointer vers un service DNS externe, tel que Cloudflare !
Ouvrez le fichier dhcpcd.conf dans votre éditeur préféré:
sudo nano /etc/dhcpcd.conf
Recherchez la ligne dans la configuration #static domain_name_servers=192.168.0.1, décommentez la ligne et modifiez-la comme suit: static domain_name_servers=1.1.1.1 et enregistrez/sortez du fichier de configuration. Redémarrez le Pi une fois de plus et vous pouvez maintenant vérifier que l'adresse IP de votre routeur n'est pas divulguée via ipleak.net.
Une autre chose à savoir est que l'adresse IP de votre routeur peut être divulguée via WebRTC. WebRTC est une plate-forme utilisée par tous les navigateurs modernes pour mieux standardiser les communications, notamment la messagerie instantanée, la vidéoconférence et le streaming audio et vidéo. Un sous-produit de cette plate-forme est que si elle n'est pas cochée, elle peut divulguer l'adresse IP de votre routeur si vous êtes connecté à un VPN. Le moyen le plus simple d'éviter cela en utilisant des extensions de navigateur ou des plugins, tels que webrtc-leak-prevent.
Avec tout configuré sur votre pi maintenant, si vous voulez vous assurer que tout votre trafic Internet est crypté, vous pouvez vous connecter à ce point d'accès, et tout votre trafic sera crypté via le VPN !
J'espère que vous avez apprécié mon Instructable, allez maintenant sécuriser tout le wifi !!
Conseillé:
Première horloge pour tout-petits - Avec minuterie lumineuse : 16 étapes (avec photos)
Première horloge pour tout-petits - avec minuterie lumineuse : ce guide vous montre comment créer des « visages » d'horloge interchangeables - qui peuvent contenir les photos de votre enfant, des photos de famille / d'animaux de compagnie - ou toute autre chose - que vous pensiez qu'il serait agréable de changer périodiquement. Fixez simplement le plexiglas transparent sur l'ar
Contrôler l'accès d'Arduino YÚN avec MySQL, PHP5 et Python : 11 étapes (avec images)
Contrôler l'accès d'Arduino YÚN avec MySQL, PHP5 et Python : Bonjour les amis ! Eh bien, comme vous le savez, en septembre, le nouveau premier shield d'Arduino, Arduino YUN. Ce petit ami a un système Linux embarqué avec lequel nous pouvons exécuter tout ce à quoi vous pouvez penser (du moins jusqu'à présent). Alors qu'il y a très peu d'informations
Sécurisez intelligemment votre maison intelligente : 14 étapes
Sécurisez intelligemment votre maison intelligente : Je participe au concours Safe and Secure. Si vous aimez mon instructable, votez pour cela ! Je vais vous montrer comment sécuriser totalement et facilement et à moindre coût votre maison et son environnement. Il contient des segments où vous apprendrez à : 1. Configurer y
Accès au clavier 4x4 avec Arduino : 5 étapes (avec photos)
Accès au clavier 4x4 avec Arduino : Le clavier 4x4 est un composé de 16 touches disposées comme une matrice. La méthode utilisée pour accéder au clavier 4x4 avec la méthode de balayage matriciel. Le clavier 4x4 nécessite 8 broches pour y accéder, soit 4 broches pour les colonnes et 4 broches pour la ligne. Comment la numérisation m
Protégez et sécurisez les données sur votre ordinateur portable : 6 étapes
Protégez et sécurisez les données sur votre ordinateur portable : Perdre un ordinateur portable est nul; perdre des données et des mots de passe importants est bien pire. Voici ce que je fais pour protéger mes données