Configurer OpenVPN Server sur un NAS Synology

I. Présentation

Dans ce tutoriel, nous allons voir comment mettre en place un serveur VPN sur un NAS Synology, via OpenVPN, afin de mettre en place un VPN client-to-site facilement. Je vais commencer par quelques rappels sur la notion de VPN et l'intérêt de mettre en place ce VPN, que ce soit à la maison ou en entreprise, avant d'attaquer la partie pratique !

En ce qui me concerne, j'utilise un Synology DS220+ qui tourne sous DSM 7.0.1, mais vous pouvez utiliser d'autres modèles ou DSM 6.x : le paquet VPN Server que nous allons utiliser est compatible avec énormément de modèles, toutes gammes confondues. À ce sujet, la liste est disponible sur cette page : Synology - VPN Server.

II. Rappels sur le VPN client-to-site

Le VPN, Virtual Private Network, en mode "client-to-site" va permettre d'établir un tunnel sécurisé et chiffré entre un ordinateur (ou un smartphone, une tablette) qui sera le client VPN et un serveur VPN distant, qui sera représenté par le NAS Synology dans cet exemple. Grâce à ce tunnel établi entre les deux machines, le client VPN peut accéder au contenu du NAS, mais aussi aux autres périphériques (un autre NAS, un serveur, des caméras, etc.) connectés sur le réseau local où se situe le NAS.

Ainsi, vous allez pouvoir accéder à votre NAS et aux autres périphériques de votre réseau de n'importe où, de façon sécurisée, à condition d'avoir une connexion Internet. En entreprise, cela permettrait aux salariés en télétravail de se connecter au réseau de l'entreprise à distance afin d'accéder aux serveurs applicatifs, serveurs de fichiers, etc. Nous pouvons schématiser cette situation de la façon suivante :

Synology OpenVPN

Ici, il n'est pas question de mettre en place un VPN qui permettrait de contourner les restrictions géographiques d'un pays, d'être anonyme, etc... Comme peuvent le proposer les VPN grand public comme NordVPN, CyberGhost, Surfshark, etc.

Pour approfondir le sujet, voici deux articles que vous pouvez lire :

III. Installation de VPN Server sur Synology

Connectez-vous à votre NAS sur l'interface DSM, et ouvrez le "Centre de paquets". Recherchez "VPN" : le paquet "VPN Server" va apparaître, il suffit de cliquer sur "Installer".

Installation de VPN Server sur Synology

L'installation du paquet est terminée, cliquez sur le bouton "Ouvrir" ou ouvrez l'application via le menu principal. Passez à la configuration.

IV. Configuration d'OpenVPN Server

Sur un NAS Synology, on peut configurer trois types de tunnels VPN différents :

  • PPTP (Point-to-Point Tunneling Protocol) : c'est un protocole historique pour faire du VPN, mais il n'est pas suffisamment robuste d'un point de vue de la sécurité pour que je vous le recommande.
  • OpenVPN : une solution sécurisée, rapide et très populaire pour mettre en place un VPN, il s'appuie sur un client OpenVPN à installer sur les machines clientes.
  • L2TP/IPSec : le VPN L2TP assure le chiffrement des flux grâce à IPSec, et il s'avère que c'est une solution fiable, mais plus lourde qu'OpenVPN, ce qui la rend un peu plus lente à l'usage.

Passons à la configuration du VPN "OpenVPN". Cliquez sur "OpenVPN" sur la gauche et cochez la case "Activer le serveur OpenVPN".

Différentes options sont proposées, voici la configuration que je vous recommande (ci-dessous les explications) :

Configuration OpenVPN Synology

- Adresse IP dynamique : il s'agit du sous-réseau utilisé pour le VPN, et ici plus particulièrement de l'adresse IP de votre NAS via le VPN. Lorsque la connexion VPN est montée, le client VPN est isolé dans un sous-réseau, ce qui l'empêche de communiquer avec les autres clients VPN éventuels (c'est un plus niveau sécurité).

- Nombre de connexions maximales : il s'agit du nombre de connexions VPN au total en simultanées.

- Nombre maximum de connexions d'un compte : il s'agit du nombre de connexions VPN simultanées que l'on autorise pour un seul et même compte utilisateur. S'il y a plusieurs personnes à utiliser le VPN, c'est préférable d'avoir un compte par personne et de définir cette valeur à "1" : chacun utilise son compte, c'est mieux pour le suivi des connexions. Si vous avez besoin d'utiliser plusieurs machines pour un seul utilisateur, il faudra ajuster la valeur.

- Port : par défaut le port 1194, mais comme tout le monde le connaît, on va utiliser un autre port pour masquer l'existence du VPN. Le port 14911 est un exemple.

- Protocole : l'utilisation du protocole UDP permet d'alléger la transmission des paquets et donc d'avoir un VPN plus rapide.

- Chiffrement : algorithme de chiffrement, l'AES-256-CBC c'est bien, c'est costaud !

- Authentification : algorithme de hachage

- Valeur de l'option Mssfix : taille maximale des paquets qui transitent sur le VPN (à ne pas confondre avec la taille des fichiers).

Pour le reste, vous pouvez cocher l'option "Activer la compression sur la liaison VPN" pour rendre les flux plus rapides grâce à la compression, mais cela consomme plus de ressources sur le système, car il faut compresser les données. Enfin, l'option "Autoriser aux clients l'accès au serveur LAN" doit être cochée si le client VPN doit pouvoir accéder à un autre équipement de votre réseau que le NAS en lui-même (un PC, une imprimante, un serveur, etc.).

Nous avons fait le tour de l'essentiel, cliquez sur le bouton "Appliquer".

Ensuite, cliquez sur le bouton "Exporter la configuration" afin d'obtenir un ZIP avec la configuration OVPN.

Exporter la configuration VPN

Finalisons la configuration avec la section "Privilège" : il faut indiquer quels sont les utilisateurs qui ont accès au VPN. Par défaut, les trois types de VPN sont autorisés pour tous les utilisateurs. Je vous recommande de tout décocher et de cocher "OpenVPN" seulement pour les comptes qui doivent utiliser le VPN. Histoire de gérer les droits finement. Cliquez sur "Appliquer".

Gérer l'accès au VPN Synology

Notre VPN Server est prêt, passons à l'étape suivante de la configuration, car cela n'est pas fini.

V. Configuration du routeur

Lorsque le client VPN va chercher à établir une connexion avec votre serveur VPN, c'est-à-dire le NAS, il doit pouvoir communiquer avec le NAS. Le problème, c'est que le NAS est sur votre réseau local, derrière un routeur (une box) ou un pare-feu : il n'est pas accessible directement.

Pour atteindre le NAS, le principe est le suivant : nous allons contacter le routeur sur son adresse IP publique, et grâce à ce que l'on appelle une règle de NAT (ou une redirection de ports), le routeur sait qu'il devra relayer cette connexion au NAS Synology. Grâce à ce procédé, notre client VPN pourra établir une connexion VPN avec le NAS Synology.

Bien que dans la théorie le principe reste le même, l'interface de gestion des box et routeurs étant différente selon les opérateurs, c'est difficile de vous montrer des copies d'écran qui fonctionnent pour tout le monde.

Prenons tout de même un exemple avec mon routeur Netgear Nighthawk. Dans la configuration, j'ai une section "Ouverture de port" qui va me permettre de créer la règle. Voici les valeurs à utiliser :

  • Nom du service / de la règle : NAS Synology - VPN (valeur à titre indicative sans réelle importance)
  • Type de service (ou de protocole) : UDP
  • Port externe : 14911, car il s'agit du port de notre VPN (à adapter selon votre choix)
  • Port interne : 14911 pour la même raison
  • Adresse IP interne : l'adresse IP de votre NAS pour que le routeur sache vers qui rediriger le flux

Règle de NAT pour VPN Synology

Pour ma part, j'obtiens la règle suivante :

Tout est prêt, nous pouvons tester le VPN.

VI. Première utilisation du client VPN

Afin de tester le VPN, il faut utiliser un ordinateur connecté à un autre réseau. Par exemple, vous pouvez mettre votre smartphone en partage de connexion et utiliser cette connexion avec votre PC le temps du test.

Sous Windows, il y a deux versions différentes pour le client OpenVPN :

- OpenVPN Connect pour Windows - Client nouvelle génération

- OpenVPN GUI pour Windows - Client classique

Ce n'est qu'une question d'interface, car ils font globalement la même chose, même si je trouve le client OpenVPN GUI plus pratique à utiliser lorsqu'il y a besoin d'utiliser un certificat (ce qui n'est pas notre cas, ici). Avec le client OpenVPN Connect, il faut un certificat au format PKCS12 ce qui nécessite de le convertir avant de pouvoir l'importer, ce qui n'est pas nécessaire avec le client standard.

Bref, dans tous les cas, vous devez récupérer le fichier "VPNConfig.ovpn" contenu dans l'archive ZIP obtenue précédemment.

Ensuite, il faut modifier le fichier afin de remplacer "YOUR_SERVER_IP" par l'adresse IP publique de votre connexion où se situe le NAS, un nom de domaine si vous avez associé un nom de domaine à votre IP publique. Si votre adresse IP publique change régulièrement, il vaut mieux configurer le DDNS Synology et utiliser le nom dans le fichier de config afin d'être tranquille (sinon il faudra mettre à jour l'IP régulièrement).

Note : pensez à laisser le numéro de port à la suite de l'adresse IP (ou du nom de domaine).

Mettre à jour l'adresse IP dans le fichier OVPN

Sauvegardez le fichier.

Installez le client OpenVPN Connect : c'est tout simple, quelques clics suffisent. Nous devons importer notre configuration, donc cliquez sur "File" puis "Browse" et sélectionnez le fichier "VPNConfig.ovpn".

Importer profil OpenVPN du VPN Synology

Normalement le champ "Serveur Hostname" doit afficher l'adresse IP publique ou le nom de domaine du fichier de configuration. Vous savez, il s'agit de la valeur que vous définit dans le fichier de config. Indiquez un nom d'utilisateur au niveau du champ "Username" et cliquez sur "Connect".

Le message "Missing external certificate" s'affiche, ce n'est pas gênant, car nous n'utilisons pas de certificat dans cet exemple. Cliquez sur "Continue".

Au bout de quelques secondes, la connexion VPN doit être établie ! Félicitations ! 🙂

À partir de la connexion VPN, on peut accéder à l'interface de gestion du NAS Synology ! Puisque j'ai activé l'option "Autoriser aux clients l'accès au serveur LAN" je peux également accéder à mes autres périphériques connectés à mon réseau local.

Note : si vous n'avez pas coché la case pour accéder au LAN via le VPN, le NAS sera accessible avec l'adresse IP définie dans la configuration d'OpenVPN Server. Dans mon exemple, c'est l'adresse IP "10.8.0.1" (voir copie d'écran précédente)

Accès au NAS Synology depuis le VPN

Sur l'interface du NAS, au sein de la section "Liste de connexion" de "VPN Server", nous pouvons voir que l'utilisateur "it-connect" est actuellement connecté.

VII. Informations supplémentaires

Pour finir cet article, je vais vous lister quelques astuces et conseils afin de vous apporter un complément d'information. À appliquer selon vos besoins.

  • Le client OpenVPN GUI

En utilisant ce client VPN à la place de l'OpenVPN Connect, vous pouvez déposer le fichier de configuration et le certificat (s'il y en a un), directement dans ce dossier : C:\Program Files\OpenVPN\config. Créez un sous-dossier au préalable pour organiser le dossier. Le certificat au format CRT sera pris en charge sans difficulté avec ce client. Le nom du fichier OVPN sera utilisé comme nom de connexion dans la liste des connexions OpenVPN (ici "VPNConfig").

Voici un exemple :

 

  • Full tunneling ou split tunneling ?

Par défaut, le VPN est configuré en mode split tunneling, c'est-à-dire que la passerelle par défaut du PC reste la box, donc pour aller sur Internet on utilise la box. Pour contacter le NAS, on utilise le VPN. Si l'on passe en mode full tunneling, la passerelle par défaut devient le serveur VPN (le NAS) et donc tout les flux du PC (donc les flux de navigation Internet) vont passer par le VPN. Cette configuration est pertinente en entreprise, car on va pouvoir appliquer des restrictions sur les flux VPN (bloquer certains sites, par exemple) puisque l'on utilisera la connexion Internet de l'entreprise à distance.

Pour basculer en mode "full tunneling", modifiez le fichier de configuration OVPN afin de décommenter cette ligne :

redirect-gateway def1
  • Ignorer le certificat avec OpenVPN Connect

Lors de l'utilisation d'OpenVPN Connect, parfois le logiciel est insistant avec le certificat. Pour lui faire comprendre d'ignorer le certificat, ajoutez cette ligne au fichier de config OVPN :

setenv CLIENT_CERT 0

Voilà, votre NAS Synology est désormais un serveur VPN ! Il ne vous reste plus qu'à en profiter ! Si vous utilisez un NAS ASUSTOR, vous pouvez consulter mon tutoriel "OpenVPN avec un NAS ASUSTOR".

Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Partager sur Google+ Envoyer par mail

Florian Burnel

Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.

florian has 3781 posts and counting.See all posts by florian

12 thoughts on “Configurer OpenVPN Server sur un NAS Synology

  • Bonjour Florian,
    Merci beaucoup pour ce tuto tres détaillé.

    Mais malgré tous mes essais, il m’est totalement impossible d’utiliser le VPN depuis mon iPhone via l’application OpenVPN IOS officielle.

    Je parviens bien à me connecter, mais lorsque je vérifies mon IP depuis le smartphone, ce n’est pas la meme ip que celle de mon SYNO.
    Et impossible de me connecter à mon SYNO

    C’est troublant… non ?
    Chris

    Répondre
    • Bonsoir Chris,
      Normalement tu dois avoir une adresse IP sur ton smartphone qui fait partie du réseau VPN géré par le NAS (en 10.8… par défaut). Quand tu es connecté en VPN, si tu regardes sur le NAS, tu vois bien la connexion de ton smartphone dans l’application VPN Server ?
      Bon courage
      Florian

      Répondre
      • Hello Florian,
        Merci pour ta réponse
        Je viens de vérifier, en effet l’IP privée de mon iPhone est bien en 10.8… qui fait partie du réseau géré par le NAS.
        Je vois bien la connexion de l’iPhone dans l’application VPN Server.

        > J’ai bien coché le paramètre « Autoriser aux clients l’accès au serveur LAN » (ainsi que toutes les autres étapes du tuto)
        > J’ai également essayé de dé-commenter la ligne « redirect-gateway def1 » dans le ficher de configuration .ovpn

        X – Je n’arrive pas à accéder à mon NAS depuis mon iPhone en tapant son IP locale (192.168.0…)
        X – Je n’arrive pas non plus à accéder à mon NAS depuis mon iPhone en tapant son IP définie dans la configuration d’OpenVPN Server (qui est chez moi, la même que dans ton exemple) « 10.8.0.1 »
        X – Et je confirme que l’IP publique de mon iPhone ne change pas, c’est toujours la même qu’avant activer le VPN (et non l’IP publique de mon NAS)

        Je devrais avoir la même IP publique que mon NAS ?
        Et je devrais également pouvoir accéder à mon NAS comme si j’étais connecté chez moi à mon wifi ?

        Il y a une configuration particulière ou un paramètre spécifique pour les appareils IOS ?

        Si toi, un un lecteur à une idée, car la je ne vois pas…
        Merci
        Chris

        Répondre
  • Bonjour Florian,

    J’ai tout plein de client avec des OpenVPN sur Nas et ton tuto est parfait !

    J’ai une petite précision, les déploiements de logiciels ne fonctionneront pas, ni avec PDQdeploy (version gratuite) ni avec GPO, sur une solution de VPN de ce type.

    Hâte de lire un tuto là dessus !

    Répondre
    • Haaa j’ai trouvé une solution.
      Créer une route sur le DC, pour relier le sous réseau 10.0.0.X et 192.168.0.X. Après ça vous pouvez déployer avec PDQdeploy.

      Répondre
  • Bonjour Florian,
    tout d’abord merci pour vos tutos, très faciles d’accès même pour des personnes non initiées comme moi !
    Mon activité d’automaticien indépendant m’impose d’avoir une solution de sauvegarde, et j’ai opté pour un NAS Synology DS220j.
    J’ai donc suivi vos tutos pour le sécuriser d’abord, et aujourd’hui pour configurer l’accès avec OpenVPN. Tout c’est bien passé, j’y accède depuis mon PC connecté au point d’accès wifi de mon téléphone.
    Par contre il m’est impossible d’accéder à mes 2 dossiers partagés du NAS depuis l’explorateur windows. Quand je suis connecté en local je n’ai aucun souci.
    Quel conseil me donneriez-vous ?

    Répondre
    • Bonjour Anthony,

      Est-ce que vous avez coché l’option « Autoriser aux clients l’accès au serveur LAN » ? Si ce n’est pas le cas, vous pouvez accéder au NAS et donc aux partages en utilisant l’adresse IP dynamique du NAS (10.8.0.1 dans mon exemple). Sinon, si vous avez configuré le pare-feu du NAS (comme je le recommande dans mon cours sur la sécurisation), il faudrait ajouter une règle pour autoriser le réseau 10.8.0.0/24 à faire du partage de fichiers.

      Voilà deux pistes à explorer 🙂
      Florian

      Répondre
      • Ok merci du retour. De mémoire sauf omission j’ai bien coché l’option, mais je vérifierai ça. Par contre j’ai dû zapper l’adresse IP dynamique… Je vous redirai ce qu’il en est !

        Répondre
      • Bonjour Florian,
        J’ai vérifié les pistes proposées, l’option « Autoriser aux clients l’accès au serveur LAN » est cochée. Et coté pare-feu (c’est le 1er cours que j’ai mis en application 😉 ), j’ai essayé de créer une règle mais je ne suis pas sûr de l’avoir bien faite.
        Pour la partie Ports, j’ai coché « Personnalisé », puis Protocole = Tous, Ports = 24, Type = Port de destination.
        Pour la partie IP source, j’ai coché « IP spécifique », puis « Sous-réseau », Adresse IP = 10.8.0.0, Masque = 255.255.255.0
        Lorsque j’essaie d’ouvrir le dossier partagé directement dans mon explorateur windows, ça m’ouvre un popup disant
        « Erreur lors de la reconnexiopn de L: à \\NAS\Dossier
        Microsoft windows network : nom de périphérique local déjà utilisé
        Cette connexion n’a pas été restaurée »

        Est-ce que la règle pour le port 24 dans le pare-feu est bien configurée ?

        Aussi, c’est peut-être une piste, je n’arrive pas à imprimer via le VPN.

        Merci encore pour votre aide.

        Répondre
        • Bonjour Anthony,

          Le port 24, je ne vois pas à quoi il correspond ? Le protocole SMB s’appuie sur le port 445 (voire 139). Dans un premier temps, pour vérifier si c’est bien une histoire du pare-feu, tu devrais ouvrir tout le flux dans le pare-feu pour 10.8.0.0 et ensuite affiner la règle 😉

          Répondre
        • Je pensais que 10.8.0.0/24 = port 24 🤭
          Je continue mon paramétrage et test, je vais bien finir par y arriver.
          Merci !

          Répondre
          • Ah non, le /24 correspond à 255.255.255.0 c’est-à-dire le masque de sous-réseau associé à l’adresse IP. Sur le site et sur la chaîne YouTube, il y a du contenu sur les adresses IP si tu veux 😉

            Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

 

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.