Serveur de stockage

Aussi appelé NAS, ces serveurs permettent de stocker et partager des fichiers dans un réseau domestique.

Pour mettre en place cette fonctionnalité, nous verrons deux solutions : l’une basée sur SSH et l’autre sur NFS.

Serveur de stockage basé sur SSH

Si vous avez déjà configuré SSH, vous pouvez utiliser l’outil sshfs qui permet de monter dans un dossier les fichiers contenus sur le serveur, un peu comme avec une clé USB. Cette solution fonctionnera quel que soit l’endroit qui vous sert de point d’accès à Internet et restera sûr.

Admettons que vous souhaitez monter le dossier /mnt/partage du serveur dans votre dossier /home/toto/serveur. Vous utiliserez alors la commande suivante

sshfs utilisateur_ssh@chezmoi.tld:/mnt/partage /home/toto/serveur

On demandera le mot de passe de l’utilisateur connecté via SSH, ensuite vous pourrez voir les documents du serveur dans /home/toto/serveur comme s’ils étaient sur votre ordinateur.

Serveur de stockage reposant sur NFS

NFS veut dire “Network File System”, autrement dit “Système de fichiers en réseau”. 😁

Cependant, nous n’allons pas ouvrir le partage NFS au monde entier comme on peut le faire pour d’autres services, car nous ne pouvons pas restreindre l’accès à certains utilisateurs. L’utilisation de NFS sera donc adaptée à un partage local, c’est à dire pour toutes les machines utilisant votre routeur pour se connecter.

Tout d’abord, nous devons activer sur le serveur les services nécessaires. On s’en occupe avec rcctl :

# rcctl enable portmap mountd nfsd

Afin que le partage NFS fonctionne comme prévu, nous allons configurer les options pour le lancer. Remplacez dans la commande ci-dessous le chiffre 4 par le nombre de connexions maximales vers le serveur que vous souhaitez :

# rcctl set nfsd flags -tun 4

Nous avons activé ici les protocoles TCP (-t), UDP (-u), ainsi que 4 connexions maximales vers le serveur NFS.

Maintenant, il faut préciser qui aura le droit d’accéder au NFS. Pour cela, il faut éditer le fichier /etc/exports pour préciser les adresses IP qui pourront s’y connecter. Éditez ce fichier pour y mettre par exemple :

/mnt/partage -alldirs -network=192.168.1 -mask=255.255.255.0 

Ici, nous souhaitons restreindre l’accès au réseau local, c’est à dire tous les appareils connectés au même routeur que votre serveur. La difficulté ici est de connaître l’ensemble des adresses IP que votre modem attribue aux appareils qui s’y connectent. Suivez les indications de ce paragraphe pour mieux comprendre comment trouver l’IP locale des machines connectées à votre “box”.

Si vous souhaitez accéder à ce partage de n’importe où, retirez les options -network et -mask. Cependant, notez bien que cela donnera accès au NFS à tout le monde /!.

On peut maintenant démarrer les services avec :

# rcctl start portmap mountd nfsd

Dans le cas où vous modifiez le fichier /etc/exports, pensez à recharger la configuration avec :

# rcctl reload mountd

Pensez à ouvrir les ports 111 et 2049 en TCP et UDP dans le parefeu afin qu’une machine du réseau local puisse accéder au partage NFS. Pour voir la liste des ports utilisés, lancez # rpcinfo -p 127.0.0.1. Ces ports peuvent changer lors d’un redémarrage. Pour un partage local, vous pouvez ouvrir votre NAS à tout le réseau local avec cette ligne dans /etc/pf.conf :

pass in on egress from 192.168.1.0/24

Vous pourrez maintenant monter le partage NFS sur votre système. La démarche dépend du système d’exploitation, mais dans la plupart des cas, ajouter une entrée dans le fichier /etc/fstab de l’ordinateur qui doit monter le NFS suffit. Cette entrée ressemblera à :

192.168.1.2:/mnt/partage /mnt nfs rw,nodev,nosuid 0 0

Remplacez l’IP par celle du serveur bien sûr 😉 (l’IP privée).


Page suivante →