[DD-WRT] Installer un accès OpenVPN à votre réseau local - MAJ 06/2023

Vous trouverez ici quelques contributions sur des sujets variés mais qui n'ont aucun rapport avec le monde de l'aérien
Règles du forum
Courtoisie envers les membres et respect envers les sociétés sont les maitre mots de ces forums. Tout manquement sera sanctionné par un rappel à l'ordre, voir une exclusion temporaire ou définitive des forums !
Avatar de l’utilisateur
FTP
Messages : 1028
Inscription : 06 mars 2004 14h41
Contact :

[DD-WRT] Installer un accès OpenVPN à votre réseau local - MAJ 06/2023

Message par FTP »

OpenVPN est un logiciel libre qui une fois installé sur un serveur permet d'ouvrir un accès extérieur extrêmement sécurisé à ce serveur.
Ca permet de créer une liaison entre un ordinateur client et un serveur, en émulant (simulant) un réseau privé, au sein d'un autre réseau (souvent le réseau Internet), par échange de données cryptées. Pour faire simple, ça permet aux 2 ordinateurs de se mettre dialoguer comme s'ils étaient sur un même réseau privé, de s"échanger tout ce qu'un fonctionnement en réseau permet, mais en cachant leur mode de fonctionnement en cryptant tous leurs échanges pour que personne ne sache comment ils échangent et ce qu'ils s'échangent ; même si ces échanges se passent sur un réseau public comme le réseau Internet.

D'ou ce nom de "VPN", réseau privé virtuel (VPN = Virtual Private Network), pour son caractère "privé" (échanges cryptés, la plupart du temps complétés de la nécessité d'avoir un identifiant client et un mot de passe) et "virtuel" pour son mode de fonctionnement émulant (simulant) un réseau au sein d'un autre réseau par une construction purement logicielle.

Concrètement pour un particulier, installer un serveur OpenVPN sur son routeur par exemple, permet d'ouvrir un accès extérieur extrêmement sécurisé sur le réseau local de son domicile (LAN), permettant ainsi de s'y connecter quand on est hors de son domicile, depuis Internet, via une liaison totalement sécurisée, cryptée.

OpenVPN fonctionne grâce à un système de triple authentifications :
  • un mot de passe pour l'accès client (optionnel),
  • une authentification du serveur par le client (via un échange de certificats et clés),
  • et une authentification du client par le serveur (via un échange inverse de certificats et clés)
Puis après quelques contrôles supplémentaires, le tunnel -crypté- est créé et l'accès autorisé.

C'est donc un outil extrêmement efficace et sécurisé. Bien plus sécurisé que l'ouverture de multiple ports en fonction de ses besoins (cf. la liste interminable de ports potentiellement à ouvrir que liste Synology en fonction des services qu'on souhaite utiliser), ou encore que les deux principaux autres types de VPN, PPTP (non crypté) et L2TP/IPsec.

Donc, si vous avez un besoin d'accès à votre LAN depuis l'extérieur pour...
  • accéder à vos données sur votre NAS,
  • aux applications qui tournent sur votre NAS,
  • à votre musique ou vos films,
  • pour faire de la maintenance sur votre réseau,
  • rebooter ou relancer un appareil de temps à autre,
  • voir contourner les restrictions géographiques de certains services en ligne quand vous êtes à l'étranger en les utilisant depuis votre adresse IP française
  • ou même contourner la censure du pays où vous êtes en déplacement grâce au tunnel crypté d'OpenVPN vers votre routeur et donc vers le net,
...alors l'installation d'un serveur OpenVPN sur votre routeur sera la solution à privilégier et résoudra tous ces besoins d'un coup ! :)

Mais assez parlé, voyons maintenant comment l'installer sur un routeur mis à jour avec le firmware DD-WRT.


Sommaire
1/ Vérifier votre version de firmware DD-WRT
2/ Vérifier l'horodatage du routeur
3/ Générer ses certificats de sécurité et clés privées
4/ Activer et paramétrer le serveur OpenVPN sur le routeur DD-WRT 5/ Préparation du/des fichier(s) client .ovpn
6/ Installation du/des client(s) sur iOS (iPhone ou iPad)
7/ Installation du/des client(s) sur Windows
8/ Optionnel : ouvrir le firewall d'éventuels NAS sur le LAN aux accès depuis OpenVNP
9/ Optionnel : ouvrir l'accès depuis le LAN aux disques partagés d'un client OpenVPN distant
10/ Optionnel : assigner une IP fixe au client OpenVPN


1/ Vérifier votre version de firmware DD-WRT
En effet, la version de serveur OpenVPN et les options de paramétrage ont évolué avec les mises à jour de DD-WRT.
Ce tuto est donc basé sur une version récente de DD-WRT. Il nécessite d'avoir le firmware 46681 (de mai 2021) ou plus récent.
Si vous avez un firmware plus ancien, je vous conseille de le mettre à jour...
https://dd-wrt.com/support/other-downloads/?path=betas%2F


2/ Vérifier l'horodatage du routeur
Avant de débuter, il faut aussi vérifier que l'horodatage du routeur est correct. Sinon, les certificats ne seront pas valides et vous ne pourrez pas vous connecter à votre VPN.

Pour ce faire...
  • Se connecter à l'admin de son routeur DD-WRT via un navigateur et son adresse IP (généralement 192.168.0.1 ou 192.168.1.1)
  • Saisir son nom d'utilisateur et son mot de passe
  • Onglet Status > Router > Current Time
  • Vérifier si la date et l'heure sont correctes
  • Si "non", ajuster les paramétrages dans Setup > Basic Setup > Time Settings

3/ Générer ses certificats de sécurité et clés privées
La base de l'installation d'OpenVPN, aussi bien côté serveur que côté clients est de générer une Infrastructure de Gestion de Clés (PKI, Public Key Infrastructure, en anglais). Il s'agit d'un ensemble de certificats publiques et de clés privées qui sécuriseront les processus d'authentification et de cryptage du tunnel VPN.

Pour ce faire, on va utiliser les scripts Easy-RSA mis à disposition par OpenVPN pour faciliter la création des certificats et clés.
  • Télécharger Easy-RSA-3 (version 3.1.1 minimum)...
    https://github.com/OpenVPN/easy-rsa/releases
  • Décompresser l'archive. Il n'y a pas d'installation. Vous devez obtenir un répertoire "\EasyRSA-3.x.x\"
  • Lancer Easy-RSA en double-cliquant sur le fichier "EasyRSA-Start.bat" situé dans le répertoire "EasyRSA-3.x.x"
  • Une fenêtre de commande doit s'ouvrir...
    Image


    :!: La suite de la procédure va consister à copier/coller les lignes de commande ci-dessous dans la fenêtre de commande et à les exécuter
  • Préparer l'environnement PKI
    Il s'agit de créer un sous-dossier \pki\ (Public Key Infrastructure) qui va recevoir les futurs fichiers des certificats et clés...
    ./easyrsa init-pki
  • Etendre l'expiration des futurs certificats de 1 à 10 ans
    echo 'set_var EASYRSA_CERT_EXPIRE 3650' >> pki/vars

  • Créer le certificat public et la clé privée de l'Autorité de certification (Certificate Authority)
    - Dans notre cas, l'autorité de certification c'est nous. C'est nous qui créons et certifions.
    Et l'objet de ce certificat est d'être le certificat maître, celui qui va servir à certifier tous les autres et toutes les clés, du serveur et des clients.
    ./easyrsa build-ca nopass ("nopass" pour dire qu'on n'utilise pas de mot de passe à ce niveau)
    - Il vous sera ensuite demandé un nom pour ce certificat (appelé "Common name"). Ce nom sera affiché sur les logiciels clients quand on installera ce certificat, sur un iPhone par exemple. Vous pouvez mettre ce que vous voulez comme Certificat OpenVPN maitre par exemple.
    :!: Attention, les espaces sont autorisés, mais pas les accents ("maitre" ok, mais pas "maître") !

  • Créer le certificat du serveur DD-WRT
    - Lancer la création du certificat du serveur DD-WRT, dont le nom de fichier sera "DD-WRT_Server.crt"
    ./easyrsa gen-req DD-WRT_Server nopass ("nopass" pour dire qu'on n'utilise pas de mot de passe à ce niveau)
    - Donner un nom (Common name) au certificat, comme Certificat OpenVPN de DD-WRT.
  • Signer le certificat "DD-WRT_Server" grâce au certificat maître (ca.crt)
    ./easyrsa sign-req server DD-WRT_Server
    Et confirmer qu'on veut bien signer le certificat...
    yes

  • Créer un premier certificat client, personnel, avec mot de passe cette fois
    - Lancer la création d'un certificat d'accès au VPN, personnel, dont le nom de fichier sera "Prénom.crt"
    ./easyrsa gen-req Prénom (vous pouvez remplacer "Prénom" par ce que vous voulez)
    - Saisir un mot de passe pour ce certificat car chaque accès personnel au VPN doit être contrôlé par un mot de passe.
    - Et enfin, donner un nom (Common name) au certificat, comme Certificat OpenVPN de Prenom
    :!: Attention, les espaces sont autorisés, mais pas les accents ("prenom" ok, mais pas "prénom") !
  • Signer le certificat "Prénom" grâce au certificat maître (ca.crt)
    ./easyrsa sign-req client Prénom (en remplaçant "Prénom" par ce que vous avez utilisé à l'étape précédente)
    Et confirmer qu'on veut bien signer le certificat...
    yes

  • Optionnel : créer un fichier "dh.pem". Inutile avec un DD-WRT récent, vous pouvez utiliser le paramètre "Use ECDH instead of DH.PEM" à la place (cf. § suivant).
    ./easyrsa gen-dh
  • Fermer la fenêtre d'invite de commande / quitter Easy-RSA-3
    exit
Voilà, c'est fait, vous avez l'ensemble des certificats de sécurité et clés dont vous avez besoin ! :)

Si vous le souhaitez, vous pouvez maintenant réunir les fichiers qui ont été générés dans un même répertoire pour qu'ils soient plus facile d'accès :
  • ca.crt (certificat public de l'Autorité de certification) dans la racine du répertoire \pki\
  • DD-WRT_Server.crt (certificat public du serveur DD-WRT) dans le sous répertoire \pki\issued\
  • DD-WRT_Server.key (clé privée du serveur DD-WRT) dans le sous répertoire \pki\private\
  • Prénom.crt (certificat public du client "Prénom") dans le sous répertoire \pki\issued\
  • Prénom.key (clé privée du client "Prénom") dans le sous répertoire \pki\private\
  • Optionnel : dh.pem (paramètres Diffie-Hellman) dans la racine du répertoire \pki\

:!: Plus tard, si vous voulez revenir sur la création de certificats & clés, vous aurez 2 possibilités :
  • Soit juste créer de nouveaux certificats & clés pour de nouveaux clients, sur la base des certificats CA et serveur existants. Dans ce cas, il vous faudra :
    - Lancer Easy-RSA en double-cliquant sur le fichier "EasyRSA-Start.bat"
    - Ne surtout pas exécuter la commande ./easyrsa init-pki !
    - Et passer directement à la création de nouveaux clients ./easyrsa gen-req Prénom, etc. cf. ci-dessus
  • Soit redémarrer de zéro et dans ce cas il faudra d'abord supprimer le répertoire /pki/ avant de reprendre la procédure du début.

4/ Activer et paramétrer le serveur OpenVPN sur le routeur DD-WRT
  • Se connecter à l'admin de son routeur DD-WRT via un navigateur et son adresse IP (généralement 192.168.0.1 ou 192.168.1.1)
  • Saisir son nom d'utilisateur et son mot de passe

    Activer OpenVPN
  • Onglet Services > VPN > OpenVPN Server / Daemon > OpenVPN > Enable...
    Image
  • CVE-2019-14899 Mitigation > Disable (pour laisser le LAN accessible, car ce patch introduit en décembre 2019 coupe l'accès au LAN)
  • Start Type > WAN Up (car "System" peut générer des problèmes dans certains cas)
  • Inbound Firewall on TUN > décoché (sinon le serveur ne sera pas joignable)
  • Config as > GUI (server) (ouvre les options avancées)
  • Server mode > Router (TUN) (on n'est pas dans le cas d'un Bridge/pont entre 2 routeurs)
  • Network > 10.8.0.0 (laisser l'adresse par défaut)
  • Port > 1194 (laisser le port par défaut)
  • Tunnel Protocol > UDP4 (l'UDP est plus rapide que TCP, mais s'il est instable, passer au TCP)
  • Encryption Cipher > Not set (on utilise maintenant les 3 champ "... Data Cipher")
  • Hash Algorithm > None (on utilise maintenant les 3 champ "... Data Cipher")
  • First Data Cipher > CHACHA20-POLY1305 (le plus sécurisé, mais pas pris en charge par l'app iOS OpenVPN Connect 3.2.x)
  • Second Data Cipher > AES-256-GCM (le plus sécurisé pris en charge par l'app iOS OpenVPN Connect 3.2.x)
  • Third Data Cipher > Not set (inutile de proposer d'autres options moins sécurisées s'il n'y a pas de besoin)
  • Advanced Options > Enable (ouvre d'autres options avancées)
  • Compression > Disabled (car il y a une faille de sécurité avec la compression)
  • Push Client route > Default Gateway (pour faire passer tout le trafic du client par le VPN)
  • Allow Client to Client > Disable (pour ne pas autoriser les échanges entre les clients VPN)
  • Allow Clients WAN access (internet) > Enable (donne accès à Internet à travers le VPN)
  • Allow Clients full LAN access > Enable (donne accès au LAN à travers le VPN)
  • Tunnel MTU setting > 1400 (il est conseillé de réduire légèrement la valeur par rapport au maximum de 1500)
  • Use ECDH instead of DH.PEM > Enable (évite de devoir générer un fichier DH.PEM)

    Puis...
    Image
  • Public Server Cert > Copier/coller dans le champ de "-----BEGIN CERTIFICATE-----" à "-----END CERTIFICATE-----" du fichier DD-WRT_server.crt
  • CA Cert > Copier/coller dans le champ tout le contenu du fichier ca.crt
  • Private Server Key > Copier/coller dans le champ tout le contenu du fichier DD-WRT_server.key
  • Additional Config > ajouter les lignes suivantes pour permettre que sur le client, quand on utilisera le VPN, des logiciels comme Windows Explorer puissent continuer à accéder aux dossiers partagés par leur nom...

    Code : Tout sélectionner

    # Push the local DNS server to the VPN clients, so they can query on it
    push "dhcp-option DNS 192.168.0.1"
    # Push the LAN Domain name to the VPN clients, so name resolution & mapped shared folders in Windows Explorer will work
    push "dhcp-option DOMAIN home"
    Le nom de domaine "home" sera paramétré un peu plus bas dans la procédure.
  • Laisser vide les 6 autres champs memo

    Enfin...
  • [Save] > [Apply Settings]


    Paramétrages complémentaires
  • Onglet Services > Services…
    Image

    Paramétrer un nom de domaine pour le LAN
  • DHCP Server > Used Domain > LAN & WLAN
  • DHCP Server > LAN Domain > home (vous pouvez choisir le nom de domain que vous voulez, mais attention à bien aussi le paramétrer dans les paramétrages d'OpenVPN > Additional Config !)

    Demander au serveur DNS d'écouter les requêtes venant des clients VPN
  • Dnsmasq > Additional Dnsmasq Options > interface=tun2
    ("tun2" est le nom de l'interface utilisée par le VPN; cf. Setup > Advanced Routing > [Show Routing Table])
  • [Save] > [Apply Settings] (bien sauvegarder avant le paramétrage suivant !)

    Optionnel : informer DNSmasq du nom de vos NAS ou autres appareils qui ont un nom de réseau, si vous en avez
  • DHCP Server > Static Leases > cliquer sur [Add] autant de fois que vous aurez d'appareils à ajouter
    :!: Il faut ajouter toutes les lignes avant d'en remplir une sinon le rafraîchissement supprimera les infos déjà saisies !
  • DHCP Server > Static Leases > paramétrer pour chaque ligné ajoutée, pour chaque appareil :
    Son adresse MAC - Son nom de réseau - L'adresse IP qu'on veut lui donner ou qu'il a déjà - 1440
  • [Save] > [Apply Settings]

Voilà. Le serveur doit maintenant être correctement paramétré :)
On va donc le vérifier. Pour cela...
  • Onglet Administration > Management > [Reboot Router]

    Puis, une fois que le routeur aura complètement redémarré...
  • Onglet Status > OpenVPN
    La toute première ligne doit être : Serveur: CONNECTED SUCCESS
Si c'est le cas, parfais, votre serveur VPN est en route ! :)


5/ Préparation du/des fichier(s) client .ovpn
Ce type de fichier qui concentre à la fois le paramétrage, les certificats et la clé privée, est nécessaire à l'installation des clients (des accès) OpenVPN.
Pour ce faire...
  • Ouvrir un éditeur de texte comme NotePad++ ou EditPlus
  • Créer un nouveau fichier
  • Copier les lignes suivantes dedans...

    Code : Tout sélectionner

    client
    dev tun
    proto udp4
    remote 00.00.00.00 1194
    resolv-retry infinite
    nobind
    persist-key
    persist-tun
    remote-cert-tls server
    verb 4
    float
    tun-mtu 1400
    auth-nocache
    data-ciphers CHACHA20-POLY1305:AES-256-GCM
    
    # Certificat de l'Autorité de Cartification
    # Coller entre les 2 balises <ca> ci-dessous, l'intégralité du contenu du fichier "ca.crt"
    <ca>
    =====> Coller ici le contenu de ca.crt <=====
    </ca>
    
    # Certificat de sécurité du client
    # Coller entre les 2 balises <cert> ci-dessous, de la ligne "-----BEGIN CERTIFICATE-----"
    # à la ligne "-----END CERTIFICATE-----" du fichier "Prénom.crt"
    <cert>
    =====> Coller ici le contenu de Prénom.crt <=====
    </cert>
    
    # Clé privée du client
    # Coller entre les 2 balises <key> ci-dessous, l'intégralité du contenu du fichier "Prénom.key"
    <key>
    =====> Coller ici le contenu de Prénom.key <=====
    </key>
  • Personnaliser les éléments suivant :
    - remote 00.00.00.00 1194 > Personnaliser "00.00.00.00" par l'adresse IP fixe de votre box internet ou son adresse DynDNS
    :!: En effet, il faut que votre box Internet ait une adresse IP fixe OU que vous utilisiez un service DynDNS et que vous paramétriez l'adresse donnée par ce service (onglet Setup > DDNS pour faire le paramétrage côté DD-WRT).
    :idea: Pour connaître/vérifier l'adresse IP de votre box : sur un ordinateur, un smartphone ou une tablette connecté en filaire ou en WiFi à votre réseau local, dans un navigateur, tapez myipaddress.com
    - Les deux certificats et la clé privée > Cf. explication ci-dessus, en commentaire du paramétrage
  • Sauvegarder le fichier en le nommant "Prénom.ovpn"
:!: A noter qu'après avoir fait des premiers essais, si vous avez des soucis de stabilité avec l'UDP, vous pourrez revenir dans les paramétrages d'OpenVPN et de ce fichier client pour remplacer le paramètre "udp4" par "tcp".


6/ Installation du/des client(s) sur iOS (iPhone ou iPad)
  • Déposer grâce à iTunes directement dans OpenVPN Connect ou envoyer par email sur l'iPhone/iPad les 2 fichiers suivant :
    - ca.crt
    - Prénom.ovpn (profil personnalisé - cf. ci-dessus)

    Installer et paramétrer l'app OpenVPN Connect
  • iPhone/iPad > App Store > Télécharger OpenVPN Connect
    Image
    https://apps.apple.com/fr/app/openvpn-connect/id590379981
  • OpenVPN > Menus > Settings >...
    - Allow Compression > [No]
    - AES-CBC Cipher Algorithm > décoché
    Image

    Installer le certificat de sécurité et le profil de connexion
  • Mail > Ouvrir l'email avec les 2 fichiers en pièces jointes
  • Taper sur "ca.crt" pour que l'OS le télécharge puis fermer la pop-up de confirmation que le profil est téléchargé
  • Réglage > Profil téléchargé (tout en haut) > Installer > code PIN > Installer > Installer > OK
  • Mail > Ouvrir l'email avec les 2 fichiers en pièces jointes
  • Taper sur "Prénom.ovpn" puis choisir l'app OpenVPN pour l'installer
  • OpenVPN > Add > Save Private Key Password > taper le mot de passe de l'accès VPN > Connect > Autoriser > code PIN

    Tester la connexion VPN
  • Couper le WiFi pour que l'iPhone/iPad passe en 3G/4G/5G (ou le connecter sur un Wifi en dehors de la maison)
  • OpenVPN > Activer le profil "00.00.00.00/Prénom"
    L'accès OpenVPN à votre LAN doit s'activer.

    Vérifier que le trafic Web passe bien par le LAN distant
  • Safari > myipaddress.com
  • Vérifier que l'adresse IP est bien celle de votre box (vue au §6 quand on a personnalisé le fichier .ovpn) et non plus celle de l'iPhone ou iPad en 3G/4G/5G

7/ Installation du/des client(s) sur Windows
  • Télécharger la dernière version d'OpenVPN pour Windows 64 bits (MSI installer)
    https://openvpn.net/community-downloads/
  • Exécuter le fichier .msi téléchargé > [Customize]
    - OpenVPN GUI > Launch on User Logon > x Entire feature will be unavailable
  • [Install Now] > [Close] une fois l'installation terminée

    Installer son profil de connexion
  • Démarrer > OpenVPN > OpenVPN GUI (Graphic User Interface)
  • [OK] pour fermer la pop-up qui dit qu'aucun profil de connexion n'a été trouvé
    Image
  • Cliquer droit sur l'icône d'OpenVPN dans la barre des tâches (écran avec cadenas) > Import > Importer fichier...
  • Sélectionner le fichier Prénom.ovpn et cliquer sur [Ouvrir]
    Image

    Paramétrer un raccourci sur le bureau
  • Renommer le raccourci OpenVPN GUI déjà sur le bureau en VPN perso
  • Clic droit sur le raccourci > Propriétés > Cible > compléter pour que via ce raccourci, OpenVPN se connecte automatiquement à votre profil...
    "C:\Program Files\OpenVPN\bin\openvpn-gui.exe" --connect Prénom.ovpn
  • [OK] pour valider

    Tester la connexion VPN
  • S'assurer que l'ordinateur est connecté à Internet en 3G/4G/5G (éventuellement en WiFi via le partage de connexion d'un smartphone) ou sur un Wifi qui n'est pas sur votre LAN
  • Sous Windows > Navigateur > myipaddress.com
  • Noter l'adresse IP qui doit être celle de la connexion 3G/4G/5G ou du WiFi hors LAN personnel

    Puis...
  • Double cliquer sur le raccourci "VPN perso" sur le bureau pour lancer votre connexion VPN
  • Eventuellement, si c'est la toute première fois, accepter l'accès d'OpenVPN Daemon aux réseaux privés et publics
  • Taper le mot de passe de votre accès VPN (Cf. §3 ci-dessus)
    Image
  • Et éventuellement cocher "Se souvenir du mot de passe" si on souhaite le faire
  • [OK] pour valider
    Et voilà. Vous devez maintenant être connecté à votre LAN via votre VPN personnel.
    Image

    Vérifier que le trafic Web passe bien par le LAN distant
  • Navigateur > myipaddress.com
  • Vérifier que l'adresse IP est cette fois-ci celle de votre box (vue au §6 quand on a personnalisé le fichier .ovpn) et non plus celle de la connexion 3G/4G/5G ou du WiFi hors LAN
    Si c'est bien ça, tout fonctionne !

Voilà, vous pouvez maintenant vous connecter à votre LAN personnel via un tunnel crypté OpenVPN de n'importe où dans le monde et bénéficier des services décrits en introduction ! :D

A partir de là, vous pouvez en plus avoir à utiliser les procédures optionnelles ci-dessous en fonction de vos besoin.


8/ Optionnel : ouvrir le firewall d'éventuels NAS sur le LAN aux accès depuis OpenVNP
En effet, si vous possédez un NAS et que son firewall est activé, alors il faut ajouter une règle au firewall pour autoriser les accès depuis le réseau du VPN (10.8.0.0).

Pour un NAS Synology :
  • Se connecter à l'admin de son NAS via un navigateur et son adresse IP
  • Saisir son nom d'utilisateur et son mot de passe
  • Panneau de configuration > Sécurité > Pare-feu > [Modifier les règles] > [Créer] >...
  • Ports > Tous
  • IP source > IP spécifique > [Sélectionnez] > Sous-réseau > 10.8.0.0 / 255.255.255.0 > [OK]
  • Action > Autoriser
  • [OK]

    Vous devriez donc obtenir un paramétrage qui ressemble à ça, dont la ligne ajoutée ici surlignée...
    Image

9/ Optionnel : ouvrir l'accès depuis le LAN aux disques partagés d'un client OpenVPN distant
Si depuis votre LAN, depuis votre desktop, en utilisant Windows Explorer par exemple, vous avez besoin d'accéder aux disques partagés d'un ordinateur ou d'un NAS qui se connecte à distance en OpenVPN, alors il vous faut ajouter une règle au firewall du desktop pour autoriser ce type d'accès car par défaut c' est bloqué (en revanche les accès web fonctionnent sans règle supplémentaire, comme pour accéder à l'admin DSM d'un NAS Synology).

Pour un ordinateur sous Windows 10...
  • Paramètres > Mise à jour et sécurité > Sécurité Windows > Pare-feu et protection du réseau > Paramètres avancés
  • Règle de trafic entrant > Action > Nouvelle règle...
  • Personnalisée > Étendue > A quelles adresses IP locales... : Ces adresses IP > [Ajouter]
  • Cette adresse IP... : 10.8.0.0/24 > [OK] > [Suivant >]
  • Autoriser la connexion > [Suivant >]
  • Cocher uniquement "Public" (décocher "Domaine" et "Privé") > [Suivant >]
  • Donner un nom à la règle, comme "Accès aux disques partagés des clients OpenVPN" > [Terminer]

10/ Optionnel : assigner une IP fixe au client OpenVPN
Après avoir rendu accessible le client OpenVPN depuis le LAN, pour certains services il vous faudra peut-être aussi assigner une adresse IP fixe à ce client OpenVPN. Pour ce faire, on va utiliser les configurations client du répertoire CCD (Client Config Directory) d'OpenVPN.

Sous DD-WRT...
  • Administration > Commands > Startup [Edit] > ajouter à la suite des commandes existantes une ligne de commande par client pour lequel on veut une adresse IP fixe > [Save Startup]
    Ligne de commande type : echo "ifconfig-push 10.8.0.254 255.255.255.0" > /tmp/openvpn/ccd/CommonName
    - 10.8.0.254 sera l'adresse IP fixe. Ne pas utiliser les premières adresses 10.8.0.1, 10.8.0.2, etc., commencer par la fin 10.8.0.254, 10.8.0.253, etc.
    - Remplacer CommonName par le nom du profil client OpenVPN (son Common name - cf. §3)
    Chaque ligne de commande créera à la volée à chaque boot du routeur, pour le profil client concerné, un fichier de configuration dans le répertoire /ccd/.
  • Administration > Management > Reboot Router
L'urgent est fait, l'impossible est en cours, pour les miracles prévoir 24h !
Avatar de l’utilisateur
FTP
Messages : 1028
Inscription : 06 mars 2004 14h41
Contact :

Re: DD-WRT : installer un accès OpenVPN à votre réseau local

Message par FTP »

Article mis à jour :)
  • Ajustements de la procédure à la version 3.1.1 d'EasyRSA (notamment le fichier "vars" maintenant dans le répertoire /pki/)
  • Ajout d'une étape optionnelle : l'ouverture du firewall du client OpenVPN aux accès depuis le LAN
  • Ajout d'une étape optionnelle : l'assignation d'une IP fixe pour le client OpenVPN
  • Transfert des 3 étapes optionnelles à la fin du tuto
L'urgent est fait, l'impossible est en cours, pour les miracles prévoir 24h !
Avatar de l’utilisateur
FTP
Messages : 1028
Inscription : 06 mars 2004 14h41
Contact :

Re: DD-WRT : installer un accès OpenVPN à votre réseau local - MAJ 11/2022

Message par FTP »

Article mis à jour :)
  • Amélioration du titre et des explications de la procédure optionnelle 9 : ouvrir l'accès depuis le LAN aux disques partagés d'un client OpenVPN distant
L'urgent est fait, l'impossible est en cours, pour les miracles prévoir 24h !
Répondre