Les nano-ordinateurs ont été largement démocratisés avec la venue du Raspberry Pi. Ãvidemment, ce ne sont pas les seuls et dâautres constructeurs ont à leur tour apporté leurs propres nano-ordinateurs avec des caractéristiques différentes. Dans cette série, nous découvrons le Rock Pi 4 modèle C pour lequel Radxa, propose une extension officielle pour le transformer en NAS.
Publié le 9 février 2021Â
Version PDF Version hors-ligne
Radxa propose une série de nano-ordinateurs sous lâappellation Rock Pi. On y retrouve le :
Cet article se concentre autour du ROCK Pi 4, modèle C, pour lequel Radxa propose aussi une extension sous la forme de chapeau (1) offrant quatre connecteurs SATA pour transformer le nano-ordinateur en NAS.
Le ROCk Pi 4 modèle C embarque :
Le tout est proposé sur une carte de 85 mm x 54 mm.
Les différences avec les modèles A, B et C sont les suivantes :
Radxa propose plusieurs chapeaux, dont certains sont compatibles avec les Raspberry Pi ou même le Jetson Nano :
Ce dossier va porter sur lâinstallation et lâutilisation du Rock Pi 4 avec le chapeau Penta SATA afin de mettre en place un NAS.
Comme son nom lâindique, le chapeau Penta SATA permet de connecter jusquâà cinq disques au Rock Pi 4. Plus précisément, ce seront quatre disques au format 2,5 pouces (autrement dit, les disques que lâon retrouve à lâintérieur des PC portables, ou les SSD) plus un disque externe, 3,5 pouces (format classique). Pour cela, le chapeau offre donc quatre connectiques SATA et une connectique eSATA (alimenté) afin de pouvoir connecter un disque mécanique 3,5 pouces.
Du côté des fonctionnalités, le chapeau supporte :
le support logiciel du RAID 0/1/5.
Le chapeau propose deux sources dâalimentation :
un connecteur ATX standard comme source dâalimentation ;
Ces sources alimentent aussi bien les disques que le Rock Pi 4.
Finalement, le chapeau possède quelques accessoires optionnels :
Seul, le Rock Pi 4 sâalimente par un port USB Type C, supportant de 9 à 20 V. Seul 5 V nâest pas suffisant pour ce nano-ordinateur.
Dans le cas dâun montage avec le chapeau Penta SATA il faut aussi prendre en compte la consommation des disques. Comme il est possible de lire dans la documentation du chapeau Penta SATA, la consommation typique des disques est la suivante :
La connectique GPIO peut faire passer du 5 V, jusquâà 4 A. Cela est suffisant pour alimenter quatre disques 2,5 pouces si lâalimentation est capable de fournir plus de 35 W.
Ãvidemment, lâalimentation de base ne pourra alimenter un disque mécanique 3,5 pouces. Dans ce cas, il faudra passer par lâalimentation 12 V ou lâalimentation à travers la connectique ATX (câest-à -dire, une alimentation de PC). Pour cette dernière, nâimporte quelle alimentation devrait suffire. Par contre, pour lâalimentation 12 V, il faudra au moins une alimentation 12 V/4 A (soit 48 W) pour alimenter jusquâà quatre disques mécaniques 2,5 pouces et un disque mécanique 3,5 pouces externe et une alimentation 12 V/6 A (soit 72 W) dans le cas de cinq disques mécaniques 3,5 pouces (câest-à -dire, pour alimenter les baies externes).
Dans cette section, nous allons voir comment monter le Rock Pi 4, son chapeau Penta SATA, la carte supérieure, le tout, dans le boîtier officiel.
Dâabord, énumérons les différents éléments que nous avons à notre disposition :
Comme on peut le voir, le panneau supérieur possède un ventilateur, un écran OLED de 0,91 pouce et un bouton pour faire défiler les informations du système sur lâécran. Du côté du boîtier, on remarque un regard pour les LED indiquant la présence des quatre disques, et des ouvertures pour toutes les connectiques du RockPi 4. Seule lâutilisation dâune carte SD nâest pas possible avec ce boîtier.
Le montage est plutôt simple et demande tout au plus une trentaine de minutes.
La première étape consiste à placer le module eMMC. En effet, pour un placement du NAS dans le boîtier, il est nécessaire dâutiliser un module eMMC, la carte mémoire microSD ne pouvant pas être placée. Le module se place en le clipsant sur la face arrière du RockPi 4. La carte imprimée du RockPi indique un rectangle blanc, dont un coin est mis en avant. Câest le détrompeur et doit correspondre au coin tronqué du module mémoire. Une fois les connecteurs alignés, il suffit dâappuyer jusquâà ce que le module soit immobilisé et droit sur la carte :
Ensuite, il faut connecter la nappe FPC Ã lâadaptateur M.2 vers FPCÂ :
Le sens de la nappe est important. Une fois correctement clipsé, il ne reste plus quâà verrouiller.
Après, il faut connecter lâadaptateur au RockPI :
Maintenant, les grandes vis. Les grandes vis permettent dâespacer et de maintenir le chapeau avec le RockPi 4 :
Lâadaptateur M.2 vers FPC est maintenu grâce à deux écrous venant se fixer sur les vis :
Lâastuce étant de ne pas visser complètement les vis et de faire en sorte que le pas de vis ressorte légèrement de lâécrou (assez pour que lâécrou tienne). Le verrouillage sera fait en vissant avec la face du dessous du boîtier.
Nous allons maintenant placer le RockPi 4 sur la face du dessous du boîtier, câest-à -dire le dissipateur. Il est possible de profiter de cette étape pour placer les tampons sous le dissipateur :
Ensuite, il suffit de placer le RockPi4 sur le dissipateur et de serrer les grandes vis installées plus tôt :
Vissez les deux autres grandes vis pour finaliser la fixation du RockPi 4 au dissipateur :
Il nây a pas besoin de pâte thermique sur le CPU, le dissipateur ne fait pas pression, ni contact (il y a un jeu de moins dâun dixième de mm).
Le RockPi 4 est prêt à recevoir son chapeau. Pour commencer, reliez le chapeau à la nappe :
Encore une fois, le connecteur doit bien être inséré et verrouillé (le verrouillage permet dâindiquer si la nappe est bien insérée).
Vous pouvez alors placer le chapeau au-dessus du RockPi 4 et connecter les connexions GPIO :
Le tout est fixé grâce à quatre petites vis grises :
Une astuce étant de replier la nappe entre le RockPi et le chapeau, afin de faciliter la mise en place du boîtier.
Maintenant que le chapeau est en place, il faut préparer les disques qui viendront se loger dans le NAS.
Pour ce guide, seul un disque sera mis en place. Le montage des autres est similaire : il suffit de placer les disques, entre les plaques et de les maintenir grâce aux petites vis (quatre par disque).
Ãvidemment, il faut placer tous les disques dans le même sens. Par contre, le sens choisi nâa pas vraiment dâimportance dans le reste du montage.
Placez les disques sur le RockPi afin de connaître dans quel sens fixer la carte avec le ventilateur. Celle-ci se visse avec quatre petites vis noires.
Déconnectez les disques du RockPi 4 pour visser la carte ventilateur sur lâarmature maintenant les disques.
Avant de placer les disques sur le RockPi 4, vous devez connecter le câble reliant la carte supérieure au chapeau. Le connecteur de ce câble possède un détrompeur.
Ensuite, placez les disques sur le chapeau du RockPi 4 et connectez le câble.
Vous pouvez tortiller le câble afin quâil ne dépasse pas trop du montage. Cela facilitera la mise en place du boîtier par la suite.
Le montage de lâélectronique est terminé. Il ne reste plus quâà placer la boîte métallique pour couvrir et protéger votre RockPi 4 et vos disques.
En faisant glisser le boîtier jusquâen bas, vous remarquerez un décalage avec la base (dissipateur). Pour enlever ce décalage, faites entrer le connecteur Jack dans le trou du boîtier. Tant que celui-ci nâest pas correctement placé, vous ne pourrez pas le visser.
Vissez les quatre grandes vis sous le dissipateur afin de maintenir le boîtier en place :
Pour finir le montage, il suffit de placer la face supérieure acrylique sur le dessus du boîtier et de la visser :
Vous avez terminé ! Vous pouvez brancher et commencer à jouer avec votre RockPi 4 :
Afin de vérifier que le montage sâest bien passé et que le matériel fonctionne correctement, vous pouvez utiliser les commandes suivantes :
i2cdetect -y 1, outil provenant du paquet i2c-tools. Le résultat doit être le suivant :
Contrairement à des solutions classiques (où à la solution avec un boîtier séparé proposée par Radxa), le changement de disque demande un démontage partiel du NAS. Pour pouvoir modifier la configuration, il faudra :
En observant bien le boîtier, on remarque quâil nây a pas de fente pour la carte SD. En effet, le lecteur de carte SD est rendu inaccessible par la nappe FPC. Cette dernière passe devant le lecteur de carte SD.
Aussi, on pourrait penser quâil suffit dâinstaller la carte SD avant le montage, mais celle-ci gênera la mise en place du boîtier.
Aussi, le port USB-C nâest pas exposé. Sachant que celui-ci permet lâalimentation du Raspberry Pi, cela est plutôt logique, car le chapeau possède sa propre entrée 12 V, pour lâalimentation.
On remarque que par défaut, le bouton est placé du côté des connectiques. Il mâaurait semblé plus logique de le placer du côté des LED des disques, même si finalement, câest équivalent et que lâutilisateur peut reconfigurer le sens dâaffichage de lâécran OLED.
Comme nous lâavons vu dans la partie précédente, il est nécessaire de préparer le système avant de placer le boîtier. En effet, une fois le NAS assemblé, vous nâaurez plus accès au lecteur de carte microSD intégré au RockPi.
Plusieurs choix sâoffrent à vous :
Comme on peut le voir sur cette page , lâéquipe autour du RockPi 4 propose leur propre image des systèmes suivants :
Il est à noter que les systèmes compatibles avec le modèle C, ne sont pas nécessairement compatibles avec les modèles A et B.
Aussi, certaines distributions supportent le RockPi 4 de manière indépendante. Ainsi, vous retrouverez :
Ãvidemment, le choix dépend de votre besoin et de vos préférences. Toutefois, dans le cadre dâutilisation dans un NAS, Android nâest pas un bon candidat. Aussi, il faut savoir que le script permettant de contrôler la carte supérieure (avec le ventilateur et lâOLED) est officiellement supporté sous Armbian, Debian et Ubuntu (distribué sous la forme dâun paquet .deb ). Comme son code est disponible sur GitHub et repose sur Python, il nâest pas difficile de lâinstaller sur dâautres systèmes Linux. Par contre, cela ne sera pas le cas avec Android.
Lâautre aspect à prendre en compte est lâutilisation en tant que NAS. Notamment, dans la suite de ce dossier, nous mettons en place la solution de NAS grâce à openmediavault. Cette solution repose sur Debian et nâest donc disponible que pour cette distribution. De plus, openmediavault est proposée en version 4 (datant de 2018) pour Debian Stretch et en version 5 pour Debian Buster. Le script dâinstallation ne supportant que ces deux variantes, on privilégiera donc lâutilisation dâune Debain Buster pour être à jour, soit la Armbian, disponible sur cette page (la version pour le modèle C est disponible ici ).
Une fois le système installé, il faut ajouter le support du chapeau en exécutant cette commande :
Pour information, cela installe, les paquets : libmraa, rockpi4-dtbo, unzip, gcc, python3-dev, python3-setuptools, python3-pip, python3-pil, puis le service penta-hat.service (disponible à cette adresse ) ainsi que lâoutil pour communiquer avec lâécran présent sur la carte supérieure ( SSD1306 ).
Une fois lâinstallation terminée, il suffit de redémarrer pour que lâécran OLED et le ventilateur sâallument.
Le code source du service gérant la carte supérieure est disponible sur Github .
Par défaut, le service affiche en alternance de dix secondes, trois pages dâinformations :
Le service repose sur le fichier de configuration : /etc/rockpi-penta.conf . à partir de celui-ci, il est possible de changer la vitesse du ventilateur suivant la température, la fonction du bouton (suivant un appui court, un appui long et un double appui), le temps permettant de différencier un appui long dâun court, si le service alterne parmi les informations à afficher, combien de temps il affiche chaque page dâinformation, le sens de lâaffichage (rotation de 180°) ainsi que lâunité à utiliser pour la température.
Avec le code source à disposition sur GitHub , il est simple de comprendre et de modifier le comportement du chapeau. Notamment, on remarque que les scripts sont en Python et sont installés dans le dossier /usr/bin/rockpi-penta/ . Plus précisément, on y trouve les fichiers :
à titre dâexemple, il est possible dâafficher lâheure sur une nouvelle page en modifiant la fonction gen_pages() du fichier oled.py . Voici le code à ajouter :
Il est nécessaire dâajouter lâimport à datetime pour que cela fonctionne.
Voici quelques remarques par rapport à la distribution Debian 9 fournie officiellement par Radxa.
La connexion par défaut sâeffectue avec le couple linaro/linaro. Le compte linaro a les droits sudo.
Les clés pour les dépôts officiels ne sont plus à jour. Comme indiqué sur cette page , vous pouvez les mettre à jour avec la commande suivante :
Lors dâun arrêt de la machine (commande poweroff), la machine reste allumée (LED bleues du chapeau toujours allumées). Il ne semble pas quâelle sâarrête complètement.
Armbian est une distribution reposant sur Debian dédiée à tous les nano-ordinateurs (au contraire de Raspbian qui est spécialisée dans le support du Raspberry Pi).
Par défaut, la connexion se fait avec le compte root et le mot de passe 1234. à la première connexion, vous serez forcé de changer le mot de passe root et de créer un compte utilisateur.
Lâéquipe de Armbian propose un outil nommé nand-sata-install (installé par défaut) pour installer le système sur un modèle eMMC (ou même installer les fichiers de démarrage sur le module et le reste du système sur disque en SATA). Une fois lancé, le programme propose une interface dans la console pour installer le système et utiliser le système de fichiers de votre choix.
Lâoutil effectue une copie de la carte SD vers la destination. Cela veut dire que si vous avez modifié le système présent sur la carte SD, vos modifications sont conservées.
Maintenant que le RockPi 4 est monté, quâun système dâexploitation fonctionne et que nos disques sont reconnus, nous pouvons le transformer en NAS. Pour ce faire, trois choix sont possibles :
Openmediavault est un projet open source, basé sur Debian permettant de déployer facilement une solution de type NAS. Le but est de permettre dâadministrer un NAS sans pour autant avoir besoin de connaissance étendue en la matière.
Par défaut, openmediavault est distribué sous la forme dâune image disque permettant lâinstallation du système (comme on le ferait avec Debian). Toutefois, dans le cas du RockPi 4, cela nâest pas possible, entre autres, car nous avons déjà un système en place, que lâISO nâest distribuée que pour les systèmes x86 64 bits et que rien nâest prévu pour supporter notre nano-ordinateur. En bref, nous devons installer les logiciels à la main.
La communauté propose un script permettant lâinstallation dâopenmediavault sur les nano-ordinateurs supportés par Armbian (Buster et Stretch). Ainsi, lâinstallation se fait en lançant cette commande :
Globalement, le script ajoute la clé du dépôt de paquet Debain dâopenmediavault, installe postfix, monit, openmediavault et les plugins (omv-extras), le plugin flashmemory et applique quelques éléments de configuration par défaut.
Une fois lâinstallation finalisée, vous pouvez redémarrer votre NAS.
Une fois openmediavault installé, vous ne pourrez plus vous connecter à SSH avec lâutilisateur de base. En effet, openmediavault nâaccepte un utilisateur par SSH que sâil est dans le groupe ssh, ce qui nâest pas le cas par défaut. Il faudra donc ajouter lâutilisateur au groupe ssh par le biais de lâinterface Web ou, en exécutant la commande suivante juste après lâinstallation :
Ce problème apparaît avec la distribution officielle Debian 9 de Radxa, mais pas avec Armbian Buster.
openmediavault est avant tout une interface Web de gestion de votre NAS. Vous pourrez donc vous connecter à cette interface, à lâaide de votre navigateur, simplement en utilisant lâadresse IP du RockPi 4.
Lâidentifiant et le mot de passe par défaut sont : admin/openmediavault
Une fois connecté, on arrive sur un tableau de bord, personnalisable, qui par défaut affiche les informations du système ainsi que les services configurés.
Sur la colonne de gauche, on retrouve le menu principal, en haut, une barre de navigation, avec un menu déroulant permettant de réinitialiser les paramètres par défaut, changer la langue, de se déconnecter ou dâarrêter/redémarrer la machine.
Les options de configurations sont disposées en cinq catégories :
Dans la catégorie « Système », lâadministrateur pourra configurer les paramètres généraux, câest-à -dire : le port utilisé par lâinterface Web, le temps avant la déconnexion automatique de lâutilisateur et les options pour mettre en place un accès utilisant le protocole HTTPS :
Le deuxième onglet « Sécurité Administrateur » permet simplement de changer le mot de passe de lâadministrateur.
Ensuite, la section « Date & Heure » permet simplement de configurer lâheure et le serveur NTP :
La section « Réseau » est décomposée en cinq onglets :
Avec openmediavault 4, les interfaces réseau, pourtant reconnues dâaprès le tableau de bord, nâapparaissent pas dans la liste de lâécran de configuration. Vous pouvez les ajouter manuellement, obligatoire pour configurer certains services, toutefois, lâajout a toujours résulté en un échec. Avec openmediavault 5, les interfaces sont correctement disponibles.
La section « Notification » permet de configurer, dâune part, les paramètres SMTP pour lâenvoi des notifications, dâune autre part, quelles notifications vous souhaitez recevoir.
Pour les catégories de notification, on ne peut qu'activer ou désactiver de les recevoir. On ne peut pas configurer les conditions déclenchant lâenvoiâ¦
La section « Gestion de lâénergie » permet de configurer si lâétat du système doit être surveillé et quelle action se passe lors de lâappui sur le bouton dâalimentation. Ãvidemment, sur le RockPi, cette option nâa pas dâintérêt. Un second onglet, « Tâches planifiées » permet de configurer des moments de veille ou de programmer des redémarrages ou arrêts du système.
La section « Surveillance » permet dâactiver la collecte périodique des statistiques de performance du système.
La section « Certificats » permet dâajouter des certificats SSH et SSL.
La section « Tâches planifiées » permet de configurer les tâches planifiées.
La section « Gestionnaire de mises à jour » permet de récupérer les mises à jour et les installer. Pour cela, openmediavault offre une interface donnant quelques détails sur les paquets prêts à être mise à jour.
La section « Plugins » permet dâaccéder aux modules de la communauté afin dâajouter des fonctionnalités à openmediavault.
La section « OMV-Extras » permet dâajouter, mettre à jour et activer des dépôts de plugins supplémentaires. Avec la version 5 dâopenmediavault, la section « OMV Extras » intègre deux nouveaux onglets : le premier permet dâinstaller ou de désinstaller docker ainsi que les logiciels permettant de gérer les containers : portainer et yacht. Le dernier onglet permet dâinstaller cockpit ( Site officiel ), une solution de publication de contenu sans interface.
La catégorie « Stockage » permet de gérer les disques du système, le RAID, les systèmes de fichiers et les indicateurs S.M.A.R.T. La première section « Disques » recense les périphériques de stockage connectés à lâappareil :
En double cliquant sur un disque, vous pouvez configurer les propriétés suivantes :
Ensuite, lâutilisateur peut trouver la section des indicateurs S.M.A.R.T. Celle-ci est décomposée en trois onglets :
Il nâest possible de lancer un test que si la surveillance est active pour le disque et qu'en créant un test programmé (que vous pouvez lancer manuellement).
Arrive la section de « Gestion du RAID ». Plus simple, elle permet de créer, agrandir, supprimer et récupérer vos RAID.
Suit la section « Systèmes de fichiers » permettant dâavoir un tableau récapitulatif des systèmes de fichiers disponibles sur votre NAS. à partir de cette interface, il est possible de créer, redimensionner, mettre un quota, monter, démonter et supprimer un système.
Si vous montez votre partition avec openmediavault, il sera disponible dans le répertoire /srv/ .
Finalement, une section dédiée à la mémoire Flash :
La troisième catégorie concerne la gestion des utilisateurs, des groupes et des dossiers partagés. Dâabord, la section « Utilisateur » permet dâavoir un tableau énumérant les utilisateurs du système :
En double cliquant sur un utilisateur (ou en utilisant le bouton « Modifier »), il est possible de le renommer, de changer son mot de passe et son shell et de changer ses groupes et de lui définir des clés publiques. Un bouton « Privilèges » permet de définir des droits en lecture et/ou écriture aux dossiers partagés.
La section propose un onglet « Paramètres » dans lequel il est possible dâactiver les répertoires personnels des utilisateurs et dâindiquer leur emplacement.
Pour quâun utilisateur puisse se connecter à SSH, il doit être dans le groupe ssh.
La section « Groupe » permet de gérer les groupes non système créés et dây ajouter les utilisateurs. Les privilèges dâaccès aux dossiers partagés peuvent aussi être configurés au niveau des groupes.
Finalement, la section « Dossiers partagés » permet de configurer les dossiers utilisables par les services tels que SMB, FTP ou NFS. La création est simple, il suffit de spécifier son nom et son emplacement sur lâespace de stockage. Ensuite, vous pourrez configurer les droits pour chaque utilisateur ainsi que les listes de contrôles dâaccès (ACL).
La catégorie « Services » permet de configurer les services FTP, NFS, Rsync, SMB/CIFS et SSH. Chacun de ces services possède sa propre page de configuration.
Pour le service FTP, lâutilisateur a accès aux quatre onglets suivants :
La configuration du service NFS est plus simple. En effet, openmediavault ne permet que dâactiver/désactiver le service et de configurer le nombre de threads à utiliser et dans un second onglet, de configurer les dossiers partagés.
La section « Rsync » offre une interface pour créer des tâches de synchronisation (descendant et montant, local et distant) et de configurer le serveur ainsi que les dossiers exposés par le NAS au travers de ce service.
La configuration du service SMB/CIFS sâétale sur deux onglets. Le premier permet de configurer les paramètres du service (activation du serveur, support de WINS, journalisationâ¦) alors que le second permet de configurer les partages.
Finalement, la configuration du service SSH sâeffectue sur une unique page, permettant de manipuler les options les plus courantes du logiciel :
La catégorie « Diagnostiques » offre lâaccès au tableau de bord, aux informations système, aux journaux et à lâétat des services. Plus précisément, les informations système offrent une vue dâensemble récapitulative de lâétat du système :
Lâonglet processus permet dâafficher le résultat de la commande top alors que lâonglet « Statistiques performance » permet dâavoir des graphiques à propos des différentes ressources du système sur la durée :
Le dernier onglet « Rapport » permet de générer un rapport, téléchargeable, contenant une multitude dâinformations sur le système : description du système, fichiers de configuration, règle du pare-feuâ¦
La section « Journaux système » permet évidemment de lire les journaux du système, mais aussi de configurer un syslog distant :
La section « Services » permet dâavoir une vue dâensemble de lâétat des services (FTP, NFS, SSHâ¦) mais aussi un détail des connexions en cours pour les services SSH, SMB et FTP.
La catégorie « Information » permet dâaccéder à la section « à propos » de openmediavault et dâaccéder à des liens de support (documentation, forumsâ¦) ainsi quâà un lien pour faire des dons.
La mise en place du RAID est simplifiée par lâinterface Web dâopenmediavault. Dans la section « Gestion du RAID », il suffit de créer le RAID, de lui donner un nom, la politique à appliquer et de sélectionner les disques intégrant ce RAID.
openmediavault utilise les appellations suivantes :
Dans ce tutoriel, jâutilise deux disques. Un de récupération dâun vieux PC portable et un disque 3,5 pouces, X300 de Toshiba testé dans cet article .
Il est possible que votre disque ne soit pas listé pour la création du RAID (alors quâil lâest dans la section « Disques ». Certainement vous aviez déjà utilisé ce disque auparavant et il est nécessaire de supprimer le premier méga-octet du disque pour que openmediavault veuille le prendre en compte.
Cela peut se faire avec la commande suivante :
Ne le faites, que si les données du disque ne vous sont plus utiles, car vous les perdrez.
Une fois le RAID en place, il faut formater lâespace disque nouvellement exposé. Dans la section « Systèmes de fichiers », cliquez sur le bouton « Créer » pour mettre en place une nouvelle partition :
Par défaut, le système propose : ext4, ext3, JFS, XFS, F2FS et BTRFS.
Finalement, montez votre nouvelle partition afin de la rendre accessible comme source pour les dossiers partagés.
Sans dossier partagé, vous ne pourrez pas accéder à lâespace disque disponible sur le NAS. Il faut donc créer au moins un dossier partagé, dans la section éponyme.
Pour pouvoir créer un dossier partagé, il faut que la partition où vous souhaitez le placer soit montée (montage réalisable dans la section « Systèmes de fichiers »).
Un dossier partagé peut avoir comme source nâimporte quelle partition reconnue par le système du NAS et pas nécessairement un RAID. Un module permet dâexposer la partition du système.
La création se résume à la spécification du nom, de la partition où placer le dossier partagé, du chemin (si vous ne souhaitez pas que le dossier soit à la racine) et des permissions :
Pour rendre lâespace de stockage disponible au travers du réseau, il ne reste plus quâà activer le service souhaité (SMB, NFS, FTPâ¦) et dâajouter le dossier partagé dans la liste des partages pour ce service :
rsync permet de synchroniser des données entre plusieurs postes. rsync possède deux modes : un mode client ou un mode serveur auquel les clients se connectent. Ces deux modes permettent aussi bien dâenvoyer que de recevoir des données.
Dans rsync, les dossiers partagés sont appelés « modules ».
La configuration en mode client consiste à définir des tâches pour récupérer ou envoyer des fichiers (locaux ou distants), qui sont intégrés à cron afin de les répéter régulièrement.
Lorsque vous spécifiez le serveur, vous pouvez aussi bien spécifier un serveur rsync, ou un serveur SSH.
La configuration du serveur est plus simple, dans le sens où il nây a que les dossiers (modules) pouvant être synchronisés à définir. Il est possible de protéger lâaccès à un module donné en utilisant un utilisateur du NAS et un mot de passe (qui lui, est propre à cette utilisation). Ensuite, câest aux clients de sây connecter pour synchroniser les fichiers.
openmediavault propose quelques modules permettant dâajouter des fonctionnalités directement dans lâinterface Web. Cette section détaille quelques-uns dâentre eux.
Un serveur DLNA permet de partager vos médias (images, musiques, vidéos) sur le réseau. Ainsi, votre télévision connectée ou votre téléphone (avec VLC, par exemple) pourra lire ces médias. Un module openmediavault fournit une interface pour le serveur minidlna . Comme pour les autres serveurs, vous avez accès à une page de configuration et une page de partage :
Le plugin Letâs Encrypt permet de générer des certificats afin de permettre une connexion en HTTPS à votre serveur.
La première étape est dâajouter le ou les domaines pour lesquels vous avez besoin dâun certificat :
Mais, si vous lancez la génération dâun certificat immédiatement, lâopération échouera. Il est obligatoire de remplir les champs « Mél » et « Nom du certificat » de lâonglet « Paramètres » :
Les certificats Letâs Encrypt ne sont valides que trois mois. Il est heureusement possible de les renouveler automatiquement.
Le module OpenVPN vous permet de configurer un serveur VPN sur votre NAS afin dâétablir une connexion sécurisée entre votre client et le serveur.
La configuration est répartie sur deux onglets : paramètres et certificats. Le premier permet lâactivation et la configuration dâOpenVPN. Notamment, il faudra préciser lâinterface réseau de passerelle, ou encore, lâadresse publique. Le second onglet permet de créer des certificats afin de permettre tel ou tel utilisateur de se connecter au VPN. Il faudra donc installer le certificat ainsi généré sur le poste du client.
Avec openmediavault 4, il est impossible de lancer le serveur VPN, car lâappel au programme iptables est incorrect.
Pour que la génération des certificats fonctionne, il faut dâabord configurer et démarrer le service OpenVPN et surtout prendre soin de sauvegarder les changements avant de tenter une génération. Autrement, vous obtiendrez lâerreur mentionnée dans ce ticket .
Avec le combo dnsmasq (serveur DHCP), PXE et TFTP, vous pouvez mettre en place une solution de démarrage par le réseau sur le NAS, comme expliqué dans cet article .
Chaque module propose ainsi une entrée correspondante dans la catégorie « Services » (dnsmasq ajoute une section nommée « Local DNS/DHCP »). Lâinterface de configuration de dnsmasq est classique et propose des onglets pour configurer les adresses IP ainsi attribuées, un onglet pour définir des IP attribuées statiquement et un dernier onglet pour lister les IP attribuées.
Pour le module PXE, lâutilisateur est entièrement guidé. Le premier onglet sert simplement à définir le dossier partagé à partir duquel le serveur travaille. Le deuxième onglet permet de définir les entrées du menu fourni par le serveur PXE. Le troisième onglet permet dâinstaller des images disques. Le dernier onglet offre des informations sur comment configurer les autres services (DHCP/DNS/TFTP) :
Pour finir, le service TFTP se configure en une page pour activer le serveur et configurer son dossier partagé :
Avec openmediavault 5, il nây a plus le module lié à PXE ni celui de dnsmasq. Par contre, cela laisse ainsi lâutilisateur choisir la solution quâil souhaite (iPXE ou SYSLINUX).
Un module âopenmediavault-backupâ permet de sauvegarder le système (sans les données). Ce module affiche une page de configuration dans la catégorie « Système » :
Il est aussi possible de créer des tâches planifiées pour cette sauvegarde.
Le module duplicati ajoute une page de configuration dans la section « Services ». Cette page ne permet que de lancer un serveur Web. En ouvrant une page pour vous connecter à ce nouveau serveur, vous obtiendrez :
Ãvidemment, la première chose est dâajouter une sauvegarde. En démarrant le processus pour ajouter une sauvegarde, lâutilisateur est guidé par une interface décomposée en étapes.
Les sauvegardes sont chiffrées et lâutilisateur doit donc garder son mot de passe précautionneusement. Une fois la sauvegarde en place, câest-à -dire, après avoir configuré la destination (celle-ci peut être un service de stockage dans le nuage), la source (les dossiers à sauvegarder), la fréquence de sauvegarde et les options de la sauvegarde (comme combien de temps garder les sauvegardes), il devient alors possible de lancer la sauvegarde ou encore, de restaurer une sauvegarde.
Fail2ban est un service scrutant les logs de connexion des serveurs installés sur la machine afin de détecter et bannir les adresses IP malveillantes. Grâce aux journaux, le service peut savoir quelles sont les adresses IP ayant tenté de se connecter au serveur et ayant échoué (généralement, pour cause de mauvais identifiant).
Le module Fail2ban permet de configurer le service éponyme au travers de deux onglets : paramètres et prisons. Sans surprise, le premier onglet permet dâactiver le service et de configurer les principaux paramètres :
Alors que lâonglet des prisons permet de configurer les règles permettant la détection des connexions échouées :
Le service « Downloader » repose sur curl, aria2 et youtube-dl. Grâce à cette interface, vous pourrez télécharger des fichiers et vidéos grâce à votre NAS.
Même si le module peut être intéressant, il existe quelques défauts :
Le module offre aussi un onglet pour téléverser des fichiers sur le NAS.
Lors de mes tests, je nâai pas réussi à faire fonctionner le téléchargement grâce à youtube-dl.
Avec openmediavault 5, il est possible de configurer des ponts réseau.
Après avoir ajouté un dossier partagé exposé au travers de SAMBA pour lâutilisateur créé lors de la mise en place de Armbian, jâai été obligé de redéfinir son mot de passe dans la gestion des utilisateurs de openmediavault, sans quoi lâauthentification échouait.
Dans openmediavault 5, il nây a plus de module pour la configuration dâun PXE ni de dnsmasq. Par contre, il y a un nouveau module permettant de créer des cibles iSCSI.
Lâaffichage des erreurs dâopenmediavault reprend le design du classique Guru Meditation de lâAmiga :
Webmin est une interface Web permettant dâadministrer une machine Unix. Webmin facilite la modification des fichiers de configuration de Linux et des services en présentant des formulaires à remplir. De plus, cette solution couvre un large ensemble de services grâce au support de modules. Même si Webmin nâest pas conçu spécifique pour un NAS, elle offre tout de même le nécessaire pour configurer un tel serveur.
Même si Webmin facilite lâédition des fichiers de configuration des services du système, il est tout de même nécessaire de connaître ces derniers. Autrement dit, Webmin est surtout un outil à destination des administrateurs système.
Webmin nâest pas présent dans les dépôts dâArmbian. Il faudra lâinstaller en récupérant le paquet pour Debian à partir de la page des téléchargements . Vous pouvez lâinstaller avec les commandes suivantes :
Selon les évolutions des versions de Webmin, le lien ci-dessus sera certainement invalide.
Une fois lâinstallation effectuée, lâutilisateur est invité de se connecter à lâadresse https://rockpi-4b:10000/ avec nâimporte quel compte ayant accès à sudo ou directement avec le compte root.
La page principale présente les informations générales sur le système, lâutilisation des ressources de la machine sur 15 minutes, les connexions récentes, lâutilisation des disques et les interfaces réseau :
Sur la gauche est disposé le menu principal avec les différentes sections. En fin du menu, des boutons permettent de : replier le menu, passer en mode sombre, ouvrir un terminal, mettre en favori une page, accéder aux options dâaffichage et de thème de lâinterface, éditer les options de lâutilisateur et de se déconnecter.
Finalement, sur la droite lâutilisateur peut retrouver une cloche permettant dâaccéder rapidement (et sur toutes les pages) aux informations (simplifiées) du système :
La première catégorie disponible dans le menu concerne Webmin. La première section permet de sauvegarder et de restaurer la configuration de Webmin et de ses modules :
Le deuxième onglet permet de lister les sauvegardes automatiques de la configuration et dâen créer de nouvelles. Le troisième onglet permet de restaurer la configuration.
La deuxième section permet de changer la langue, la locale et le thème utilisé. Ces options sont spécifiques à lâutilisateur en cours.
La troisième section permet dâeffectuer des recherches dans les journaux de Webmin.
La quatrième section permet de configurer en détail le fonctionnement de Webmin, notamment, de le mettre à jour, dâen restreindre lâaccès suivant les adresses IP, de modifier lâapparence ou encore, de mettre en place une nouvelle autorité de certification.
La cinquième section permet de rechercher dâautres serveurs utilisant Webmin.
La dernière section permet de gérer les utilisateurs spécifiques à Webmin.
La catégorie « Système » permet de :
lister et monter des partitions et systèmes de fichiers distants ;
mettre en place des sauvegardes de fichiers ;
gérer la rotation des journaux ;
gérer les associations MIME des fichiers ;
gérer les authentifications grâce au service PAM ;
gérer les processus en cours dâexécution. Il est possible de les trier par utilisateur, utilisation mémoire, CPU, de rechercher un processus précis et dâexécuter un programme ;
gérer les tâches planifiées ;
gérer les mises à jour et dâen planifier ;
gérer les paquets ;
effectuer une recherche dans les documentations ;
voir les journaux du système et configurer un serveur syslog ;
Par défaut, la rubrique « Serveurs » ne contient que deux éléments :
une section pour configurer le serveur SSH. La configuration est découpée en sous-parties :
La rubrique « Outils » permet :
La rubrique réseau permet :
La rubrique « Matériel » permet :
La rubrique « Cluster » permet de gérer un parc de machines en un seul endroit. Pour cela, il faut que Webmin soit installé sur chacune des machines. Ainsi, on retrouvera des fonctionnalités déjà vues précédemment, mais dont la portée est étendue à plusieurs machines.
La rubrique « Modules non utilisés » recense les modules qui nâont pas pu être lancés. Chaque page indique la raison entraînant lâimpossibilité de le lancer, généralement lâabsence dâun fichier spécifique ou dâun exécutable. Certains modules proposent dâinstaller le paquet manquant pour régler le souci.
Ce tour dâhorizon a présenté les fonctionnalités de base de Webmin, ou autrement dit, les fonctionnalités disponibles sur une distribution fraîchement installée. Tel quel, Webmin nâoffre pas les outils nécessaires pour utiliser et configurer le NAS. Pour obtenir de telle fonctionnalité, il nous faut activer les modules suivants :
Pour ce faire, il suffit dâinstaller les paquets nécessaires à chacun de ces paquets, opération réalisable avec la commande suivante :
Une fois installé, vous pouvez utiliser la section « Actualiser les modules » pour passer les modules fraîchement activés dans leur section respective.
Lâinstallation est aussi possible au travers de lâinterface offerte par Webmin.
Dorénavant, vous pouvez trouver lâentrée « RAID Linux » dans la rubrique « Matériel ». Sans surprise, cela permet de créer et gérer vos RAID :
La création vous emmène sur un formulaire dédié dans lequel lâutilisateur peut sélectionner les partitions à inclure dans la politique.
Lâinterface ne permet que de créer un RAID à partir de partitions. Par conséquent, il faut préparer les disques en créant une partition sur ceux-ci. La partition à créer doit être de type « Linux RAID ».
Une fois le RAID créé, il sera listé sur la page principale du module. Il faut maintenant créer une partition sur ce RAID pour pouvoir lâutiliser, en cliquant sur le bouton « Créer un système de fichiers de type : » :
Finalement, il ne reste plus quâà monter le RAID grâce au bouton « Montez le RAID sur : ». Celui-ci redirige vers la page de configuration dâun nouveau point de montage, avec le formulaire permettant de configurer toutes les options disponibles :
Toujours dans la rubrique « Matériel », vous trouverez la section « Ãtat du lecteur SMART ». Il est nécessaire de sélectionner un périphérique pour afficher ses données :
La vue complète du rapport affiche le résultat de la commande smartctl. Finalement, le module offre trois boutons pour lancer les trois tests dâautodiagnostiques.
Le module « Samba Windows File Sharing » est placé dans la rubrique « Serveurs ». Sur la page principale, le module liste les partages en place et permet dâen configurer des nouveaux, de gérer les utilisateurs Samba et toutes les options du serveur.
En plus des options globales au serveur, il est possible dâaccéder à des options spécifiques aux dossiers partagés en cliquant sur un élément de la liste :
Le module « NFS Exports » est quant à lui, disponible dans la rubrique « Networking ». Plus simples en termes dâoptions que le module Samba, seules la liste de partage et la possibilité dâen ajouter et dâen supprimer sont disponibles :
Le module « ProFTPD Server » est placé dans la rubrique « Serveurs ». Par défaut, lâutilisateur peut se connecter avec son compte, parcourir lâensemble des dossiers du système et envoyer des fichiers.
Les options du serveur sont exposées au travers des différentes catégories. Notamment, dans « Files and Directories », il est possible de restreindre lâaccès les utilisateurs à un dossier spécifique.
Le module « Fail2Ban Intrusion Detector » est placé dans la rubrique « Networking ». Quatre catégories dâoptions sont disponibles :
Si lâutilisation dâopenmediavault ou de Webmin ne vous convient pas, il est bien entendu possible de mettre en place les fonctionnalités du NAS par vous-même.
Lâoutil de référence pour manipuler un RAID logiciel sous Linux est : mdadm. Les disques durs mécaniques connectés au RockPi apparaissent sous Linux avec les noms /dev/sdX où X peut aller de âaâ à âeâ. Vous pouvez utiliser les commandes fdisk -l ou lsblk pour retrouver les espaces de stockage connus du système.
La création sâeffectue avec la commande suivante :
Commande dans laquelle il faut remplacer :
Ce qui donne, pour construire un JBOD de deux disques, la commande suivante :
Une fois le RAID créé, il devient donc accessible dans /dev/md1 . Vous pouvez en vérifier lâétat en lisant le fichier /proc/mdstat  :
Ou encore, en utilisant la commande :
Au lieu dâutiliser des disques, il est possible dâindiquer des partitions et de construire le RAID avec.
Maintenant, vous pouvez formater lâespace ainsi mis à disposition :
Et il ne reste plus quâà mettre à disposition la partition ainsi créée :
Ajoutez une ligne dans le fichier /etc/fstab pour automatiser le montage du RAID, lors du démarrage de la machine :
Vous pouvez ajouter un disque à un RAID existant avec la commande suivante :
Toutefois, suivant votre politique de RAID, le disque nouvellement ajouté pourrait se retrouver en spare. Si ce nâest pas votre objectif, agrandissez le RAID :
mdadm propose une option pour lire le superblock dâun disque afin de savoir si ce dernier faisait partie dâun RAIDÂ :
Si un disque commence à présenter des problèmes, ou que vous souhaitez le remplacer, ajouter dâabord un disque de remplacement avec la commande :
Puis indiquez au système quel disque exclure du RAID :
Il nâest pas toujours possible dâeffectuer un tel remplacement et cela dépend de la criticité de la panne, mais aussi de la politique de RAID que vous avez mise en place.
La suppression ne peut se faire que si le RAID nâest plus en cours dâutilisation. Cela veut dire, quâil nâest pas monté (umount) et quâil est stoppé :
Nâoubliez pas dâenlever la mention de votre RAID dans /etc/fstab .
Vos disques nâont pas été modifiés par cette opération. Sachant que les superblocks ne sont pas supprimés, vos disques peuvent être réintégrés dans un RAID à la configuration identique à celle où ils ont été pris. Si jamais vous voulez repartir de zéro, vous pouvez réinitialiser le superblock dâun disque avec la commande suivante :
Ou de manière encore plus violente, avec dd :
Ces deux dernières commandes font que vous ne pourrez plus récupérer les données du disque aisément. Sauvegardez les données avant une telle manipulation.
Les indicateurs S.M.A.R.T. permettent de vérifier si vos disques ont rencontré des erreurs lors de leur fonctionnement. Pour un NAS, il est donc dâautant plus important de les vérifier régulièrement afin de prévenir dâune panne.
Pour vérifier et surveiller les indicateurs de vos disques, lâadministrateur a à disposition deux outils : smartctl et smartd. Le premier est un outil en ligne de commande permettant dâobtenir la valeur des indicateurs et de lancer des tests dâautodiagnostiques des disques alors que le second est un outil permettant de notifier du changement des valeurs des indicateurs S.M.A.R.T.
Leur installation sâeffectue avec la commande suivante :
Avec smartctl, vous pouvez obtenir des informations sur vos disques avec la commande suivante :
Cette commande affiche aussi bien les informations générales (aussi obtenables avec lâoption -i) que la valeur des indicateurs et le résultat des précédents tests (aussi obtenables avec lâoption -l).
Afin dâactualiser les valeurs des indicateurs ou encore, de vérifier que le disque est en bonne santé, smartctl vous permet de lancer un test. Trois types de tests existent :
La commande suivante permet de lancer un test court pour le disque /dev/sda  :
Chaque test prend un certain temps. Vous pouvez obtenir une estimation (en minutes) de la longueur de chaque test avec la commande :
smartd est un démon surveillant les indicateurs S.M.A.R.T. et envoyant un courriel en cas de problème. Ce démon se configure au travers du fichier /etc/smartd.conf . Chaque modification du fichier provoque son rechargement. Le fichier est commenté et permet donc de comprendre son fonctionnement. Globalement, le fonctionnement du démon est géré par la ligne débutant par DEVICESCAN. Ce qui suit est dâailleurs ignoré par smartd. à la droite de DEVICESCAN, vous pouvez spécifier des options permettant de contrôler le comportement du démon. Par exemple, la ligne suivante permet :
Ãvidemment, il faut avoir installé un agent mail pour que smartd puisse envoyer les alertes. Pour tester le bon fonctionnement de lâalerte, vous pouvez écrire la ligne suivante dans le fichier /etc/smartd.conf  :
smartd est très complet et hautement configurable. Notamment, vous pouvez :
Le fichier de configuration commenté est un premier point pour découvrir comment configurer lâoutil. Mais vous pouvez aussi consulter :
De multiples raisons font que vous devez créer des groupes pour chaque utilisation et des comptes utilisateur pour chaque entité se connectant à votre NAS. Une telle organisation vous permet de mieux sécuriser votre machine, de restreindre les accès et les risques en cas de piratage. Autrement dit, il est préférable dâavoir un groupe par service. Ainsi, si vous devez donner accès à ce service à un utilisateur donné, il suffira dâajouter cet utilisateur à ce groupe. De même, il est préférable dâavoir un utilisateur par entité se connectant au NAS. Le partage de compte rend difficile la surveillance pour prévenir des piratages et permet de restreindre les accès aux fichiers à telle ou telle entité.
Les commandes à retenir sont :
ajout dâun groupe :
ajout dâun utilisateur ;
Finalement, le fichier /etc/group indique lâintégralité des groupes du système ainsi que les utilisateurs en faisant partie.
Il est possible de créer des utilisateurs sans quâils nâaient de possibilité dâutiliser le système. Ceux-ci ne pourront ainsi utiliser que les partages ou services offerts par le NAS. Pour créer un de ces utilisateurs, il faut spécifier une invite de commande (shell) invalide et il nây a pas besoin de créer un dossier personnel :
Samba est un serveur permettant de partager des fichiers et dossiers sur le réseau par lâintermédiaire du protocole CIFS/SMB. Ce dernier étant le protocole le plus communément implémenté pour une telle utilisation.
Son installation sâeffectue avec la commande suivante :
La configuration de Samba repose sur le fichier /etc/samba/smb.conf , dont vous pouvez consulter la page de manuel ou encore le Wiki dâUbuntu . Lâajout dâun dossier partagé se fait en ajoutant une section de la sorte, dans le fichier de configuration :
En ajoutant ces lignes dans le fichier de configuration, un partage nommé « tmp » pointant sur le répertoire /tmp/ du serveur sera disponible aux clients. Ces derniers ne pourront y accéder quâen lecture seule et nâauront pas besoin de compte pour y accéder.
La gestion des utilisateurs de Samba fonctionne en parallèle de celle du système (il est possible de les synchroniser).
Pour gérer la base de données des utilisateurs Samba, il faut utiliser la commande pdbedit :
Pour être connus de Samba, les utilisateurs doivent exister au sein du système.
Il est possible de limiter lâaccès des dossiers partagés à un ensemble restreint dâutilisateurs avec lâoption valid users. Voici un deuxième exemple à placer dans le fichier /etc/samba/smb.conf pour configurer un dossier partagé où les utilisateurs peuvent modifier les fichiers :
Par défaut, tout utilisateur connu de Samba peut accéder à son dossier personnel, en lecture seule grâce au chemin \\NAS\NOM_UTILISATEUR .
NFS est un standard ouvert pour partager des données, tout comme Samba.
Ensuite, la configuration sâeffectue au travers du fichier /etc/exports , dans lequel il faut définir les dossiers partagés sur les réseaux. Chaque partage se définit avec une ligne du type :
Lâaccès de chaque partage est réservé à lâHÃTE défini par le serveur. Il est possible dâindiquer plusieurs HÃTE(OPTIONS) pour un même partage, en les séparant par un espace.
Les clients (hôtes) pouvant accéder au dossier partagé peuvent être spécifiés grâce à une adresse IP ou à un ensemble dâadresse IP, un nom dâhôte, un nom de domaine, ou un nom de groupe réseau. Parmi les options, vous pouvez spécifier rw ou ro ou encore sync permettant de mettre le partage en écriture ou en lecture seule ou encore, dâattendre la fin de chaque opération avant de traiter la prochaine requête, respectivement.
La documentation de ce fichier peut être consultée dans les pages de manuel .
Il existe la commande showmount avec lâoption -e permettant de vérifier les dossiers exportés par NFS.
Un serveur FTP permet de transférer des fichiers et contrairement aux protocoles vus précédemment, il ne fait que ça. Par exemple, pour éditer un fichier, il est nécessaire de le récupérer entièrement, puis de le renvoyer entièrement.
Plusieurs serveurs sont disponibles sous Linux. Ici, nous utiliserons vsftpd, qui sâinstalle avec la commande :
La configuration sâeffectue dans le fichier : /etc/vsftpd.conf . Ce dernier est commenté. En voici quelques options :
Permet à des utilisateurs anonymes de se connecter au serveur FTP.
Permet aux utilisateurs du NAS, de se connecter au serveur.
Pour définir un message affiché à la connexion.
Pour restreindre les utilisateurs à leur dossier personnel. En activant cette option, vous rencontrerez lâerreur : 500 OOPS: vsftpd: refusing to run with writable root inside chroot() . Pour corriger, il faut utiliser lâoption allow_writeable_chroot=YES.
Par défaut, après installation, les utilisateurs locaux peuvent se connecter au serveur FTP et accéder à leur répertoire personnel. Par contre, ils ne peuvent pas y envoyer des fichiers et ne sont pas restreints à leur propre dossier (ils peuvent donc lire tous les fichiers du système).
Par défaut, le protocole FTP fonctionne en clair : une personne malveillante peut lire les données échangées en FTP. Il est possible de sécuriser le flux et de rendre ses données illisibles.
La première étape est de générer un certificat :
Pour utiliser le certificat, le fichier de configuration de vsftpd doit contenir :
Finalement, les deux options suivantes peuvent augmenter la difficulté de compromission du serveur :
La prise en main de ce serveur FTP peut être déroutante, notamment car lâaspect sécurité est important. Vous pouvez vous aider de ce tutoriel sur Developpez.com , du Wiki Ubuntu , ou de ce tutoriel en anglais.
Le serveur SSH permet à un utilisateur de se connecter à distance au NAS et ainsi dâaccéder à un shell. Le serveur SSH est déjà installé sur la majorité des distributions, notamment sur Armbian. Autrement, lâinstallation sâeffectue avec la commande :
La configuration sâeffectue au travers du fichier /etc/ssh/sshd_config . Notamment, ce fichier possède les lignes suivantes :
yes, no, prohibit-password, forced-commands-only
Permet de restreindre la façon dont root peut se connecter par SSH. Notamment, la connexion au compte root peut être complètement interdite au travers de SSH, ou nâêtre possible quâavec une clé.
PasswordAuthentification
Permet dâaccepter ou non les connexions reposant sur le mot de passe.
Permet de nâautoriser que certains utilisateurs à se connecter.
Permet de nâautoriser que certains groupes à se connecter.
Cette liste nâest pas exhaustive, toutes les options pourront être retrouvées dans la documentation officielle .
Il est possible dâutiliser SSH pour transférer des fichiers, notamment avec la commande scp :
En plus de simplement copier des fichiers, il est possible dâutiliser SSH pour accéder à un espace de stockage distant, grâce à lâoutil sshfs :
Le montage peut être automatisé avec le fichier /etc/fstab ou AutoFS .
Il est possible de mettre en place une authentification par clé, permettant ainsi de ne plus taper de mot de passe pour se connecter au serveur. Pour cela, la machine cliente doit avoir généré un couple de clés (une clé publique et une clé privée), avec la commande :
Ensuite, la clé publique doit être copiée sur le serveur afin que celui-ci puisse reconnaître la machine cliente. Si lâauthentification par mot de passe est active, il est possible dâutiliser :
Sinon, il faudra transférer la clé publique dâune manière ou dâune autre et lâenregistrer dans le fichier ~/.ssh/authorized_keys .
La mise en place dâun VPN est la meilleure solution pour communiquer avec un ou plusieurs équipements domestiques depuis lâextérieur du foyer.
Pour sa mise en place, vous pouvez suivre cet article dédié .
Lors de lâutilisation du script dâinstallation de PiVPN, une erreur a été rencontrée, semble-t-il, lors de lâinstallation des dépendances. Pour corriger, il faut installer le paquet iptables-persistent et relancer le script PiVPN.
fail2ban est un service permettant de bannir les tentatives de connexion provenant de machines ayant échoué à la connexion plusieurs fois.
Ce service sâinstalle avec la commande suivante :
Les fichiers de configuration de ce service se trouvent dans le dossier /etc/fail2ban .
Il est déconseillé dâéditer directement les fichiers jail.conf et fail2ban.conf .
Pour configurer fail2ban, vous devez créer un, ou plusieurs fichiers de configuration dans lesquels vous allez définir ou redéfinir les options pour chaque service à surveiller. Par exemple, pour activer la lecture des logs du service SSH, avec les options par défaut (comme mentionnées dans le jail.conf), vous devez créer le fichier suivant :
Si vous devez redéfinir des options (par exemple, car vous utilisez un port différent de celui par défaut), il suffit dâajouter lâoption en question au fichier :
La configuration globale (ou configuration par défaut) se configure ainsi :
Chaque option peut être redéfinie au niveau dâun service spécifique.
Aussi, le service fail2ban est accompagné dâun client : fail2ban-client, qui permet de recharger les règles après modification grâce à la commande fail2ban-client reload ou encore, de vérifier le fonctionnement du service : fail2ban-client status.
Un serveur DLNA permet de rendre disponibles vos médias sur lâensemble des clients compatibles (PC, téléphone, TVâ¦). Plusieurs logiciels permettent dâoffrir ce service, mais pour être raccord avec openmediavault, nous parlons ici de minidlna. Lâinstallation est classique :
La configuration se fait au travers du fichier /etc/minidlna.conf . Ce dernier étant commenté, il est simple à prendre en main. Principalement, il suffit de configurer les dossiers depuis lesquels le service lit les médias :
Vous pouvez aussi trouver de lâaide dans la documentation des pages de manuel .
Afin dâétablir une connexion HTTP sécurisée avec votre serveur, vous devez utiliser un certificat reconnu par une entité légitime. Le service en ligne Letâs Encrypt fournit de tels certificats et vous pouvez générer vos certificats grâce à lâoutil certbot.
Lâinstallation se fait avec la commande suivante :
Son utilisation est plutôt simple. Suivant votre besoin, vous pouvez utiliser les options --apache ou --nginx afin de générer un certificat pour ces deux serveurs Web ou utiliser la commande :
Pour générer un certificat à utiliser dans lâapplication de votre choix.
Le renouvellement de certificat se fait simplement avec la commande :
Rsync permet de synchroniser des fichiers. Vous pouvez lâinstaller avec :
Rsync peut être utilisé dans deux modes. Le premier repose sur SSH et est prêt à lâemploi, pour peu que le client possède rsync. Le second est un mode démon, où, pour être démarré, nécessite le fichier /etc/rsyncd.conf . Ce fichier permet de spécifier des options globales ainsi que des modules, câest-à -dire, des dossiers synchronisés. Voici un exemple de ce fichier :
La documentation de ce fichier est disponible dans les pages de manuel .
Ensuite, sur les clients, vous pouvez synchroniser les dossiers ainsi exposés, en les spécifiant comme source :
Pour utiliser Duplicati, il est nécessaire de récupérer le fichier .deb sur le site officiel et de lâinstaller avec la commande :
Sachant que duplicati repose sur Mono, des dépendances peuvent être manquantes. Cela peut se réparer avec la commande :
Une fois installé, vous devez modifier le fichier /etc/default/duplicati pour quâil contienne la ligne suivante, option pour lancer correctement le service, comme indiqué dans la documentation officielle  :
Une fois le service lancé (systemctl start duplicati), il suffit dâutiliser le logiciel en se connectant avec un navigateur Web à lâadresse du NAS, port 8200.
Que ce soit avec openmediavault ou en configurant manuellement votre NAS, vous pouvez installer tous les services que vous voulez. En effet, jusquâà présent, nous nâavons pas vu comment installer un serveur Git, un serveur Wordpress ou autre et cette section permet de présenter les services complémentaires pouvant intéresser le lecteur.
Notamment, on retrouvera :
targetcli : pour créer une cible iSCSI. Le paquet se nomme targetcli-fb et offre lâutilitaire interactif en ligne de commandes permettant de créer la cible iSCSI ainsi que les disques. En voici un exemple dâutilisation, pour créer une cible exposant un disque de 128 Mo :
Le « iqn.2016-04.com.open-iscsi:bfeb2fd9b7b » provient du fichier /etc/iscsi/initiatorname.iscsi du client. Vous pouvez trouver des explications sur chacune des étapes, dans cette aide .
Python ou Node.js : pour ouvrir un serveur Web minimaliste permettant aux autres de télécharger des fichiers. En Python, vous pouvez lancer ce serveur, qui partagera les fichiers présents dans le dossier courant, avec la commande :
La même chose avec Node.js :
Ãvidemment, il faudra ouvrir le port adéquat (80 pour la méthode avec Python) pour permettre aux gens externes dâaccéder aux fichiers partagés. Il existe des solutions plus avancées, telles que Woof ou Updog .
ownCloud/Nextcloud  : pour mettre en place une solution complète dâhébergement de fichiers et plus ;
Pi-hole pour bloquer les publicités ;
Plex ou Emby pour diffuser des médias ;
une instance PeerTube pour publier des vidéos ;
Les tests de performances sont effectués avec Armbian basé sur Debian 10 embarquant le noyau Linux 5.9.14. Le NAS intègre un disque branché sur le quatrième connecteur et est complètement monté.
Dans ce test, le NAS est stressé au niveau du CPU, avec la commande stress en version 1.0.4 : stress --cpu 6. Le test est exécuté une fois, ventilateur désactivé et une fois, ventilateur activé :
La présence du ventilateur permet de réduire drastiquement la montée de température. Sans ventilateur, au bout de dix minutes, le CPU va réduire sa fréquence lorsquâil atteint les 85 °C. Avec le ventilateur, la température atteint 80 °C après une heure et permet donc de ne pas ralentir la machine.
Voici une vue plus précise autour du test sans ventilateur :
En bref, le ventilateur permet dâéviter du throttling et réduit considérablement la température du CPU.
Le RockPi 4 modèle C est capable de supporter le débit de 1 Gbit/s offert par le port Ethernet embarqué sans problème, et ce, avec le protocole NFS, FTP ou SMB. Seul le protocole SSH offrira des performances moindres, car lourd pour le CPU en raison du chiffrement :
Il est possible dâutiliser un port USB afin dây brancher un adaptateur USB vers RJ45 2.5 Gbps, tel que celui testé ici , afin dâaugmenter le débit du NAS. Premièrement, un test avec lâoutil iperf3 est une bonne pratique pour vérifier le débit :
La charge CPU est différente suivant lâémission ou la réception des données. Dans ce dernier cas, un cÅur est occupé à 60 % de sa capacité afin de traiter lâenvoi des données, alors que dans le cas où le problème apparaît, un cÅur est utilisé à 100 %. Lorsque le bogue se produit, le transfert sâarrête net et interrompt toute communication sur le réseau utilisant cette interface. Pour la « rétablir » rapidement, il suffit de débrancher et rebrancher le câble. Si on ne déconnecte pas le câble, le noyau va remarquer le problème grâce au watchdog et réinitialiser lâadaptateur. La connexion reprendra alors, comme sâil nây avait pas eu de problème. Toutefois, dans un tel cas, les transferts sont inévitablement ralentis et lâutilisation de lâadaptateur est inutile.
Ces problèmes ont été rencontrés avec Armbian basé sur Debian Buster sur le noyau 5.9.16 ainsi que sur Armbian basé sur Ubuntu Groovy Gorilla avec le noyau 5.10.6.
Vous pourrez trouver un exemple des messages du noyau lors du crash ici .
Je ne connais pas avec exactitude lâorigine du problème et ne peux donc pas pointer le coupable. Cela peut aussi bien venir de lâadaptateur, de lâinterface USB, du RockPi 4 modèle C, du pilote ou du noyau.
Dans cet article, nous avons vu lâutilisation du nano-ordinateur RockPi 4 modèle C en tant que NAS dans lequel vous pouvez utiliser des disques durs 2,5 pouces en SATA grâce au chapeau Penta-SATA. Ainsi, nous obtenons une solution peu encombrante et facile à mettre en place grâce à openmediavault ou Webmin. Aussi, une installation manuelle est expliquée, pour ceux qui veulent gérer lâintégralité de leur système. Dans la dernière section, nous avons aussi validé lâutilité du ventilateur, associé à un petit écran sympathique et personnalisable. En bref, câest une solution intéressante pour un NAS domestique. Toutefois, je tiens à rappeler que les disques 2,5 pouces sont généralement plus chers que les disques 3,5 pouces pour une même capacité et des performances inférieures. Par conséquent, même si ce NAS 5 « baies » aura un coût moindre (environ 200 â¬Â : 59 $ pour le RockPi 4 modèle C , 129 $ pour le kit Penta SATA et 12 $ pour le module eMMC ) pour lâacquérir, le prix des disques sera supérieur par rapport à des NAS plus classiques. De plus, les disques durs conçus pour NAS, sont réellement très rares au format 2,5 pouces. En bref, cette solution est adéquate si vous voulez un NAS petit et discret embarquant quatre disques, entièrement configurable et pouvant aussi être utilisé pour dâautres usages (émulation, ordinateur personnel).
Developpez.com tient à remercier Radxa de nous avoir fourni le RockPi 4 modèle C testé dans cet article. Vous pouvez retrouver la page officielle du produit ici .
Merci aussi aux relecteurs chrtophe et Franck Talbart, ainsi quâà Claude Leloup pour la correction orthographique.
Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants :