Table of Contents
Synology: Mount de share distant dans les dossiers partagés de l'hôte
Table of Contents
:
Le NAS QNAP offre un partage SMB et un partage NFS, cet article présente la configuration d’un (ou plusieurs) dossier partagé:
Choix des Protocoles
Les NAS QNAP et Synology proposent de nombreux services (protocoles):
- SMB (Server Message Block) Le protocole SMB (aussi connu sous le nom de Common Internet File System (CIFS)) a été d’abord conçu par IBM (en 1983), mais a été repris et largement modifié par Microsoft. Le protocole est propriétaire, mais la spécification de la version a été publiée afin de permettre aux développeurs de créer des clients compatibles avec le partage de fichiers utilisé dans Windows.
- AFP (Apple Filing Protocol) Comme son nom le laisse entendre, ce protocole a été créé par Apple. En version 3.4, il supporte les noms de fichiers en Unicode, POSIX, les listes de contrôle d’accès, les « resource forks », les attributs et le verrouillage avancé des fichiers.
- NFS (Network File System) Conçu par Sun Microsystems en 1984, le protocole NFS est un standard ouvert dont la documentation est accessible dans les RFC (RFC-3010 pour la première version 4).
- FTP (File Transfer Protocol) est un protocole dédié aux transferts de fichiers, créé en 1971 et documenté au travers de RFC (RFC 114 pour la première spécification). Toutefois, ce protocole est bien plus limité en termes de gestion des fichiers que les protocoles précédents. En effet, alors que les autres protocoles proposent un mécanisme de système de fichiers, FTP ne se limite qu’à l’envoi et la réception des fichiers. Par contre, il permet des échanges rapides. FTP reste un protocole peu sécurisé (les mots de passe sont envoyés en clair), il est préférable d’utiliser FTPS pour chiffrer les communications.
- SFTP Le protocole SSH File Transfer Protocol repose sur une connexion SSH pour proposer un accès aux fichiers. Un de ses avantages est que tout comme SSH, il établit un lien sécurisé entre le client et le serveur. Néanmoins, cette sécurisation a un impact sur les performances de transfert et sur l’utilisation CPU des machines l’utilisant. Malgré leurs noms très proches, ce protocole n’a pas de lien avec FTP.
- WebDAV (disponible à travers le paquet WebDAV Server) est une extension du protocole HTTP pour l’édition de contenu Web permettant notamment d’accéder à un système de fichiers. Cette extension est décrite par les RFC 2518 et RFC 4918. Le serveur WebDAV peut aussi être accédé à partir du protocole sécurisé HTTPS. Néanmoins, il faut un certificat valide pour que la connexion s’établisse.
L’objectif de ces protocoles est identique : fournir un accès à des fichiers (et même des imprimantes) qui se trouvent sur une machine en réseau.
Même si le NAS propose une implémentation de plusieurs protocoles, pour des raisons de sécurité, il faut éviter d’offrir autant de portes d’entrée potentielles aux attaques. Il faut donc choisir le protocole le mieux supporté par les systèmes d’exploitation des clients:
- NFS n’est supporté que sur certaines versions de Windows (Ultimate et Enterprise pour Windows 7, Enterprise et Pro pour Windows 10) ou par le biais d’un logiciel tiers
- AFP n'est pas supporté par Windows 10
- SFTP n'est pas supporté nativement ni par macOS\\- SMB est supporté par macOS et Linux;
- FTP et WebDAV ne proposent pas autant de fonctionnalités en termes de gestion de fichiers que les autres protocoles.
L'indexation multimedia sous DSM a une limitation, les fichiers multimédias dans les dossiers montés avec les protocole NFS, SMB ou SCP ne seront pas analysés. Le protocole WebDAV permet de monter un dossier qui sera vu comme un dossier local et qui pourra être indexé par VideoStation
Il faut configurer qui et à quels services (protocoles) de partage de fichiers, aura et n’aura pas accès pour chaques dossier partagé.
Montage des partages
SMB
Comme énoncé précédemment, le protocole SMB est aussi appelé CIFS. C’est ce second nom qui est utilisé dans la commande mount :
sudo mount -t cifs -o username=USER,_netdev,vers=2.0 //NAS/PARTAGE /mnt/nas
Si la commande mount retourne l’erreur 95 (opération non permise), c’est qu'il faut ajouter l’option « vers=2.0 ».
Pour un montage automatique au démarrage, ajouter la ligne suivante dans le fichier fstab :
//NAS/PARTAGE /mnt/nas cifs _netdev,vers=2.0,username=USER,password=PASS 0 0
Avec cette commande, le mot de passe de l’utilisateur en question sera demandé. On peut aussi le passer dans les options du fichier fstab
//192.168.1.24/Multimedia /volume1/video/videoSD cifs vers=2.0,username={user-name},password={user-passwd},user,noauto,noperm,gid=100,uid=1024 0 0
cifs ne prend pas en charge l'option umask=000
, l'option noperm
permet à tous les utilisateurs de lire et d'écrire sur le montage CIFS (ce qu'aurait fait umask = 000 s'il était supporté par mount.cifs).
AFP
Le protocole AFP n’est pas disponible à travers la commande « mount ». Il faut utiliser la commande afp_client ou mount_afp :
afp_client mount -u USER -p PASS NAS:PARTAGE /mnt/nas/ mount_afp afp://USER:PASS@NAS/PARTAGE /mnt/nas/
Malgré l’absence du protocole AFP du côté de mount, on peut tout de même faire un montage automatique dans le fichier fstab grâce à FUSE :
afpfs#afp://USER:PASS@NAS/PARTAGE /tmp/lol2 fuse user=USER,group=GROUP 0 0
Le montage s’effectue pour un utilisateur (utilisateur courant lors de l’appel à afp_client/mount_afp ou pour l’utilisateur spécifié par l’option user.
Pour une utilisation plus globale, il faudra utiliser un groupe commun à tous les utilisateurs qui pourront accéder à ce partage.
NFS
On peut monter un système de fichiers à travers le protocole NFS grâce à mount :
mount -t nfs -o vers=3 NAS:/volume1/PARTAGE /mnt/nas
Par défaut, la version du protocole utilisée par le client est la version 4. Si on essaye de se connecter alors qu'on n’a pas activé le support de la version 4 sur le NAS, on obtiendra l’erreur « Protocol not supported ».
Dans ce cas, on a deux choix :
* ajouter l’option vers=3 ;
* activer le support de la version 4 en cochant l’option « Activer la prise en charge de NFSv4.1 » dans le panneau de configuration “Services de fichiers de DSM”.
Pour qu’un client puisse se connecter au serveur NFS du NAS, il faut l’autoriser : cela se configure dans les propriétés du dossier partagé, onglet « Autorisation NFS ». Sans quoi, la commande mount retourne :
mount.nfs: access denied by server while mounting NAS:/volume1/PARTAGE
On notera que dans le cas de NFS, le nom du partage contient le nom du volume.
Le nom du chemin d’accès est spécifié dans la fenêtre des autorisations NFS de DSM.
Finalement, pour se connecter automatiquement au démarrage de votre ordinateur, ajouter cette ligne dans le fichier fstab :
NAS:/volume1/PARTAGE /mnt/nas nfs _netdev 0 0
DSM n'autorise pas le chnagement des dossiers montés, mais il et possible d'indiquer les GID et UID d'un user spécifique du système, par exemple définir l'utilisateur admin (uid=1024) du group des users (GIGD=100) onn peut aussi passer dans les options du fichier fstab
192.168.1.24:/Multimedia /volume1/video/videoSD nfs umask=022,gid=100,uid=1024,user,auto,noatime,intr 0 0
FTP
On peut monter un dossier partagé grâce à la commande curlftpfs :
curlftpfs -o user=USER:PAS ftp://NAS/ /mnt/nas
Il est aussi possible d’automatiser le montage de ce partage par le biais du fichier /etc/fstab :
curlftpfs#USER:PASS@NAS /mnt/nas fuse allow_other,_netdev 0 0
SFTP
Comme pour FTP et AFP, on peut monter un dossier partagé avec la commande dédiée sshfs :
sshfs USER@NAS:/PARTAGE /mnt/nas
Ou ajouter une ligne dans le fichier /etc/fstab pour un montage automatique :
USER@NAS:/PARTAGE /mnt/nas fuse.sshfs allow_other,_netdev 0 0
Avec sshfs, le mot de passe de l’utilisateur ne peut être donné qu’au travers de l’entrée standard du terminal. Pour automatiser la connexion, il suffit de configurer des clefs SSH.
WebDAV
Pour monter un dossier partagé à travers WebDAV, vous devez installer davfs2. Une fois installé, le montage s’effectue ainsi :
mount -t davfs http://NAS:5005 /mnt/nas/
L’identifiant et le mot de passe seront alors demandés. L’identifiant peut être spécifié dans la ligne de commande avant l’option -ousername=USER
.
Il est possible d’automatiser le processus de montage en ajoutant la ligne suivante dans le fichier /etc/fstab :
http://NAS:5005 /mnt/nas davfs _netdev,uid=USER,gid=USER 0 0
Il est nécessaire de préciser le mot de passe dans le fichier /etc/davfs/secrets
comme suit :
/mnt/nas USER PASS
Sécurité
Comme vu dans les exemples ci-dessus, le mot de passe est parfois stocké directement dans le fichier /etc/fstab. Cela est problématique, car tout utilisateur peut lire le fichier et donc, lire les mots de passe. La solution est de stocker le mot de passe dans un fichier intermédiaire (comme cela est fait avec le fichier secrets de davfs2). Ce fichier contenant les identifiants devra appartenir à root et avoir la permission 600 (lecture et écriture uniquement pour root). Voici un récapitulatif des parades :
Protocole | Option dans fstab | Exemple de fichier |
---|---|---|
SMB | credentials=/root/pass | username=USER password=PASS |
WebDAV | /etc/davfs/secrets | /mnt/nas USER PASS |
Interface graphique
Évidemment, on peut aussi se connecter aux dossiers partagés sur le NAS au travers de l’interface graphique.