Aller au contenu
Vie du geek le forum entre geek
dokkun

TUTO FREENAS 9.3 : CERTIFICATS ET WEBDAV

Messages recommandés

Continuons notre configuration du NAS : nous avons précédemment créé un partage CIFS pour accéder au stockage depuis un PC situé sur le réseau local. Une fonctionnalité intéressante peut être d’accéder à des données depuis l’extérieur, depuis n’importe quel poste connecté à Internet, voyons ça dans un premier temps avec WebDAV…

 

De la sécurité des données

On vient de parler d’accéder à des données personnelles depuis n’importe quel poste Internet… c’est alléchant pour notre usage perso mais ça veut aussi dire que n’importe qui parmi les 1,5 milliards d’appareils connectés à ce jour peut potentiellement y accéder aussi. La première des priorités est donc d’assurer la sécurité d’accès à nos données et la confidentialité lors de leur transfert.

Concernant l’accès, tout dépend de l’endroit où vous allez mettre le curseur de la sécurité : ça peut être ouvert à tous vents, protégé par un mot de passe, uniquement accessible depuis votre réseau via VPN, derrière un VPN avec authentification par clé ou carrément interdit : pour ce dernier cas, fin du tuto icon_smile.gif

De la même façon on peut imaginer un partage en lecture seule, permettant de montrer des photos à mamie ou visionner une vidéo stockée sur le NAS depuis n’importe où, ou bien un partage en lecture-écriture permettant l’upload, mais aussi la suppression ou modification…

A titre d’exemple tout à fait personnel, j’utilise de l’extérieur un accès SSH avec authentification par clé et un accès VPN par mot de passe via le serveur de la Freebox pour la navigation web depuis les hotspots wifi publiques (hôtels, etc…) et depuis le VPN j’accède occasionnellement à mes partages CIFS ou à l’interface de FreeNAS si besoin.

Ici nous allons nous voir un autre moyen : le partage WebDAV, très pratique car il permet d’accéder à ses fichiers depuis n’importe quel navigateur web moderne, c’est donc assez universel. La connexion sera bien sûr sécurisée et cryptée (HTTPS/TLS). Le point faible de cette méthode réside dans l’authentification par mot de passe, aussi pour diminuer les risques ce sera en partage en lecture seule. Je le répète : CHACUN EST LIBRE DE SES CHOIX ET SURTOUT DOIT LES ASSUMER, faites votre config en propre conscience.

 

Création d’un certificat

Pour pouvoir utiliser TLS (SSL) depuis FreeNAS, que ce soit pour l’interface, WebDAV, FTP ou autres, il faut commencer par créer un certificat électronique, et même avant cela une autorité de certification car nous sommes en usage privé familial.

Ce processus est nouveau dans FreeNAS : auparavant un certificat par défaut était créé à l’installation, le nouveau process permet à ceux bénéficiant de certificats signés par une autorité reconnue de l’utiliser (utile pour une société) et il nous permettra d’exporter le certificat créé et de l’importer dans une future installation par exemple, cela permettant d’éviter certains soucis de connexion sécurisée.

Tout commence donc dans System -> CAs pour l’autorité de certification, et l’on clique sur Create Internal CA

36-Cr%C3%A9ation-dune-Autorit%C3%A9-de-C

Création d’une Autorité de Certification

Les points important sont de mettre au moins 2048 en longueur de clé et SHA256 est pas mal comme algorithme par défaut, le reste c’est comme vous le sentez. On valide par OK et voilà notre autorité est créée.

Prochaine étape dans System -> Certificates on va créer le certificat qui nous intéresse en cliquant sur Create Internal Certificate :

37-Cr%C3%A9ation-dun-certificat.png

Création d’un certificat

La fenêtre est très ressemblante à la précédente, sauf que l’on sélectionne l’autorité qui signe le certificat et on remplit le reste comme précédemment. Un clic sur OK et le certificat est généré. Il est maintenant disponible pour chiffrer les connections.

 

Les limites et pièges de WebDAV

Dans FreeNAS il y a quelques limites avec le partage WebDAV : en effet, pour s’authentifier sur un partage webDAV on n’utilise pas un nom d’utilisateur créé auparavant mais l’utilisateur “webdav” préexistant dans le système.

Ceci implique donc que différents utilisateurs ne pourrons pas avoir des accès privés et uniques à leurs données puisque tout le monde utilisera “webdav” pour la connexion. Et donc comme l’accès à ce partage se fait via l’utilisateur webdav, il faut que celui-ci ai les permissions d’accès aux fichiers et dossiers à partager.

C’est là le piège : soit webdav est propriétaire du fichier ou dataset, soit il fait parti d’un groupe qui a l’accès, soit dans les permissions “Autre” est réglé au moins en lecture-exécution.

Exemple concret avec ce qu’on a défini précédemment, on se met dans l’idée d’un partage WebDAV en lecture seule :

  • Pour partager le dataset Public qui est en 775, il n’y a pas de problème car Autre est en lecture-execution
  • Pour partager le dataset Medias qui est en 770, il va falloir soit ajouter l’utilisateur “webdav” au groupe GrpMedias, soit passer en 775.
  • Pour partager le dataset Paul qui est en 700, il faut soit passer en 705 (pas terrible car ce n’est pas le but), soit ajouter “webdav” au groupe Paul et passer le dataset en 750. C’est là qu’on comprend que n’importe quel autre utilisateur accédant au partage WebDAV peut alors voir les données du dataset Paul, ce qui n’est pas le but à l’origine.

 

Création d’un partage WebDAV

On va donc ici créer un partage WebDAV du dossier Medias afin que Pierre et Paul aient accès aux fichiers de ce dataset en lecture seule.

NB : il est recommandé de ne pas créer plus d’un type de partage par dataset, or Medias est déjà partagé en CIFS, ce qui va à l’encontre de la recommandation. Certes, mais on ajoute ici un partage en lecture seule, ce qui ne devrait pas créer de corruption de fichiers.

On commence donc par ajouter l’utilisateur webdav au groupe GrpMedias qui détient le dataset Medias : dans Account ->Groups -> View Groups on clique sur GrpMedias et sur le bouton Members :

38-Modification-des-membres-dun-groupe.p

Modification des membres d’un groupe

Dans la liste Available, on sélectionne webdav (tout en bas) et on clique sur >> pour le passer en Selected. Évidemment on valide.

Puis dans Sharing -> WebDAV Shares -> Add WebDAV Share on remplit les champs :

39-Cr%C3%A9ation-dun-partage-WebDAV.png

Création d’un partage WebDAV

Le nom du partage, un commentaire optionnel puis le chemin vers le dataset à partager. Ici j’ai coché Read Only ce qui force le partage en lecture seule, quelles que soit les permissions sur le dataset.

Point important : Dans notre cas on DECOCHE Change User & Group Ownership. Cette case si elle est cochée va changer les propriétaires du dataset Medias et de TOUS ses fichiers et sous-dossiers en webdav:webdav. Ceci afin d’en permettre l’accès. Nous on a pris la méthode douce en mettant webdav dans le groupe qui a accès à Medias donc on décoche.

En validant on nous demande si on veut activer le service WebDAV, on met non car on va commencer par le configurer.

Dans Services -> WebDAV on va régler les paramètres impactant l’ensemble des partages WebDAV :

40-Configuration-du-service-WebDAV.png

Configuration du service WebDAV

On veut un accès sûr, donc HTTPS seul en protocole, concernant le port on peut mettre celui qu’on veut mais il ne doit absolument pas être occupé par un autre service, je vous conseille de changer celui par défaut pour plus de sécurité également.

Pour le certificat, c’est simple, on sélectionne celui que l’on a créé au début. Digest Authentication permet de ne pas faire circuler le mot de passe en clair, surtout utile en HTTP mais on peut laisser, et enfin on défini le mot de passe qui va être utilisé pour toutes les connexions aux partages WebDAV. Plus il est fort et mieux c’est pour la sécurité des données. N’oubliez pas que c’est la seule barrière ici.

Enfin, on valide et on active le service en le passant sur ON dans Services -> Control Services.

 

Accéder au partage

Testons immédiatement tout ça, un petit coup de Firefox et on se rend à l’adresse suivante :

Par exemple dans mon cas en interne :

ALARME ! Alerte rouge ! Au feu ! Au loup ! “Connexion non certifiée, accès non recommandé”. Qu’est ce que c’est que ça ?!?!

Ben oui, se créer soi-même son propre certificat est quand même assez moyen au niveau authentification, donc le navigateur nous l’indique : on choisi de poursuivre quand même en acceptant notre certificat et ajoutant une exception.

Ensuite : nom d’utilisateur : webdav et mot de passe : celui que vous avez choisi. Et voilà !

41-Acc%C3%A8s-au-partage-WebDAV.png

Accès au partage WebDAV

Bon, là il n’y a aucun fichier dedans mais l’esprit y est !

Pour un accès depuis l’internet, ce n’est pas plus compliqué : dans le routeur / box, il suffit de faire une redirection du port choisi vers le NAS et de se connecter avec votre adresse IP publique :

Et voilà pour WebDAV dont on a fait le tour, là on a utilisé un navigateur, on peut faire pareil avec un client WebDAV sur smartphone par exemple…

Prochain tuto à venir : on va revoir le FTP car la config a un peu évoluée.

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

×