Raspberry – VPN ou Réseau privé virtuel

107 affichages

Envie d’accéder à vos informations hors de chez vous, comme si vous étiez chez vous ? Un petit VPN ça vous parle ?

« Euh… Mais il dit quoi là, le Manu !!! »
Un VPN ou Virtuel Private Network (Réseau privé virtuel en français) est une infrastructure informatique vous permettant d’accéder à toutes vos machines ou toutes vos informations stockées sur celles-ci comme si vous étiez chez vous, alors que vous n’êtes pas chez vous…

Par exemple, vous pouvez accéder à vos mails, à vos fichiers stockés sur votre NAS, envoyer une lettre d’amour à votre conjoint(e) via votre imprimante partagée… tout ça en étant à l’autre bout du monde, , sans modifier aucune configuration, comme si vous étiez connectés à votre réseau local personnel, et bien sûr de manière sécurisé.

Encore une fois, « Raspberry est ton ami ! »

En plus, vous allez voir, c’est super simple à mettre en place.

De quoi avons nous besoin ?



  • Un raspberry pi fonctionnel, comme d’habitude, c’est la base,

  • Un service de DNS dynamique si votre Ip publique est changeante,

  • Un client VPN pour tester,

  • Un ticket de bus pour aller chez un pote pour voir si ça fonctionne bien à distance 🙂

C’est parti !


Avant tout, on se connecte au Raspberry pi, en SSH ou bien directement en local avec un clavier et une plage braille si nécessaire.
Comme d’hab, avant chaque installation, on met à jour son système Raspbian :
sudo apt-get update
sudo apt-get upgrade
On répond « O » pour confirmer la mise à jour de paquet.

Des geeks ont eu l’audace de développer un script qui permet d’automatiser l’installation d’un VPN avec l’application OpenVPN, sur un Raspberry PI. Du coup ça simplifie vraiment les choses. Si vous êtes aussi geek comme moi, dans un prochain tutoriel, je vous montrerai comment installer et configurer OpenVPN à la main, mais je vous préviens, ce sera bien plus compliqué, mais ça aura l’intérêt de fonctionner sur tous les autres systèmes équipé de Debian.
Aujourd’hui, on va se contenter du script qui fait très bien son boulot.
On commence par télécharger le script qui se lancera tout seul :
curl -L https://install.pivpn.io | bash

Le script nous annonce qu’on s’apprête à transformer notre Raspberry pi en serveur VPN.
On valide avec « ENTER ».
Puis une seconde fois pour confirmer qu’on va configurer notre serveur en DHCP ou en Manuel

Dans l’écran suivant il nous est demandé de confirmer les informations de connexion de notre Raspberry Pi, son adresse IP et sa passerelle.
On ne touche à rien car normalement les bonnes informations sont déjà pré-inscrites
On tabule puis on valide sur « Oui »
On valide « OK »
Puis encore une fois « OK »
Ici, on nous demande d’ajouter un premier utilisateur qui permettra de gérer le serveur OpenVPN. Dans mon écran, il n’y a que l’utilisateur pi puisque je n’en n’ai pas ajouter d’autres. Si vous avez d’autres utilisateurs créés sur votre raspberry PI, choisissez celui que vous voulez à l’aide des flèches haut et bas.
On valide une première fois donc par « ENTER » sur OK, puis une seconde fois.
Le script nous demande si on doit mettre à jour les paquets pour plus de sécurité,
On tabule et on valide sur « Oui »

Ensuite, nous devons choisir le protocole de communication. UDP est sélectionné par défaut, on laisse et on valide par « ENTER »
Puis on doit choisir le port de communication. Par défaut, c’est le port 1194. Vous pouvez effacer et le changer si vous le souhaitez, mais veillez à vous en rappeler car il faudra l’utiliser plus tard.
On valide par « ENTER ».
On confirme dans l’écran suivant en tabulant et en validant sur « Oui ».
Sécurité quand tu nous tiens. Dans cet écran, il nous faut choisir le mode de cryptage. Par défaut, le cryptage sélectionné est 1024.. Il est recommandé d’utiliser 2048. Choisissez à l’aide des flèches haut et bas, le cryptage voulu puis valider une première fois par « ENTER », puis une seconde fois.
Dans l’écran actuel, on va choisir « Non » car on veut optimiser la compatibilité avec tous nos appareils.
On a un chouette message : « This will be take a long time… » traduit par, cela va prendre un moment. En effet la génération de certificats et de clefs de sécurité peut prendre jusqu’à 20 minutes. Allez boire un verre pendant que ça bosse.
………………………………………………………………………………….
(13 minutes plus tard) … C’est bon ? Non, toujours pas ? Bon bah on va reprendre un deuxième verre 😀 Oui, selon le type de cryptage, 1028, 2048 ou 4096, le temps de génération des certificats et des clefs de sécurité peut être plus ou moins long.
………………………………………………………………………………….
Ah, 23 minutes plus tard… C’est bon !!!

L’écran d’après nous propose de saisir notre IP publique. Normalement, le champ est déjà pré-rempli. Si vous êtes chez un fournisseur d’accès internet qui vous délivre des IP’s dynamiques, ce qui signifie qu’elles peuvent changer, régulièrement, il vous faudra, en amont de cette installation, vous inscrire à un service de DNS dynamiques. Dans ce champ, vous y rentrerez donc votre nom de serveur par exemple : « manu-dpk.dyndns.org ». Si vous avez une IP publique statique, ne touchez pas au champ déjà pré-rempli.
Validez par « ENTER »
On choisit ensuite notre fournisseur dns, qui permettra de résoudre les requêtes si vous devez accéder à Internet via votre VPN.
« Google » est sélectionné par défaut, on valide par « ENTER »
On finalise par « OK »
On nous propose de redémarrer notre Raspberry pi, On tabule et on valide sur « Oui »
On confirme le redémarrage en validant sur « OK »

Notre Raspberry PI redémarre.

L’installation est donc terminée.

Remarques


Avant de pouvoir l’utiliser, il faut d’une part ouvrir le port de votre réseau local via votre box, celui qu’on a choisi dans l’installation, par défaut le port 1194 en UDP et le rediriger vers l’adresse IP locale de votre raspberry PI. Cette manipulation est différente selon les Boxs donc je ne m’attarderai pas sur ce point, mais généralement, la redirection de port (ou le Port Forwardings) se trouve dans les paramètres réseau de votre box.
D’autre part, il faudra créer un client qui permettra de se connecter au VPN. Pour se faire, vous devez vous reconnecter à votre raspberry PI puis tapez la commande
pivpn add
Le script vous demande votre nom d’utilisateur, on le saisit puis on valide par « ENTER ». Ensuite, c’est autour de saisir le mot de passe, puis une seconde fois. La clef privée est générée et un fichier client.ovpn est généré, que vous devez importer dans votre logiciel de client VPN.

Sinon, le script « pivpn » offre d’autres commandes :


  • pivpn clients : pour afficher les clients connectés

  • pivpn list : pour afficher les certificat valides et révoqués
  • pivpn revoke : pour révoquer un certificat précis

  • pivpn uninstall : pour désinstaller pivpn et le serveur VPN.

Conclusion


Cette installation vient parfaire votre infrastructure informatique privée. Je pense que c’est la meilleure solution pour accéder à votre NAS à distance et en toute sécurité.
Je n’ai pas expliquer comment utiliser le VPN, n’hésitez pas à me faire votre demande en commentaire en précisant le système d’exploitation client utilisé.

2 réponses sur “Raspberry – VPN ou Réseau privé virtuel”

  1. Salut manu encore du beau travail tout ça 😉 . J’aurai juste une petite question c’est comment y accéder à distance chez quelqu’un sous Windows par exemple.

  2. Salut Christopher,
    Bien, je viens de tester sous Windows 7 avec ma machine virtuelle et ça marche 🙂
    D’abord, il te faut suivre le tutoriel ci-dessus et en fin récupérer un fichier client.ovpn qui sert de fichier de configuration pour te connecter au VPN.
    Ensuite, installer le client oPenVPN pour windows ici :
    https://openvpn.net/index.php/open-source/downloads.html
    Puis copier ton fichier client.opvn dans le répertoire : c:\programme\OpenVpn\config\
    Et lancer OpenVPn avec l’icône du bureau…
    Le logiciel te demandera le mot de passe que tu as saisi pour créer ton client, tu le saisis et hop, tu es connecté à ton VPN…
    Si ce n ‘est pas le cas, après avoir lancer OpenVpn sur ton windows, rends toi dans la barre des tâches, cliques sur OpenVPn puis le nom de ton profil. Saisis le mot de passe du client… Et c’est bon !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *