PROJET AUTOBLOG


Le blog de Seboss666

Site original : Le blog de Seboss666

⇐ retour index

APT vs Windows Update, oui mais…

vendredi 17 novembre 2017 à 18:30

Je viens de voir que j’ai pas mal de retard sur le blog, il est vrai que ces derniers temps beaucoup de boulot de fond ou hors monde numérique donc le blog passe après. En attendant la finalisation de quelques articles un peu plus étoffés, j’aimerai apporter mon éclairage à cet article du blog de Tesla comparant les mises à jour apt Debian contre Windows. Parce qu’on ne peut pas commenter, et qu’il y a deux trois trucs à rappeler.

NB : pour les plus casses-couilles qui me penseraient vendus à Debian, la remarque vaut aussi bien pour APT que pour YUM/RPM, Pacman, et même Gentoo/emerge. Pratiquement tous les systèmes de packaging sous Linux en fait.

Il y a une différence fondamentale dans la construction des systèmes Debian et Windows : le premier est entièrement construit à partir des paquets qui sont fournis sur les dépôts, alors que Microsoft construit son image direct à partir des sources pour ensuite ne proposer que des patches.

Le mot patch est important : en fait, à chaque mise à jour d’un composant, sous Debian vous récupérez l’intégralité de ce composant comme si vous l’installiez pour la première fois. Seule votre configuration est conservée. Et ce quand bien même la mise à jour ne concerne, sous le capot, qu’une partie des fichiers du paquet en question. Microsoft, au contraire, ne va proposer au travers d’une mise à jour que le strict nécessaire à la mise à jour d’un de ses morceaux. La conséquence c’est que parfois ils font du patch de patch, donc vous devez effectivement enchaîner les mises à jour et parfois les redémarrages pour pouvoir arriver à un système à jour, ce qui est, je suis d’accord, infiniment frustrant et pénible.

La cause profonde sera difficile à corriger : sous Windows, et même si ce n’est pas toujours parfait, il y a un fort contrôle d’intégrité des fichiers de base du système, qui interdit toute modification à chaud. Ce qui impose un redémarrage pour appliquer les modifications et les tables de contrôle avant le chargement des composants à jour. Un mécanisme qui n’est pas présent par défaut sous Debian et dérivés.

Il y a un cependant un gros inconvénient aux paquets complets : la consommation de bande passante. Pour être sous Manjaro, petite fille d’ArchLinux, les mises à jour qui se produisent toutes les semaines voire tous les 15 jours pèsent en moyenne 300 à 400 Mo. En dehors des mauvais mois Microsoft vous impose une centaine de Mo le deuxième mardi de chaque mois, un peu plus certes si vous mangez cher avec Office. Si vous êtes contraint de survivre sur connexion 3g/4g, avec un forfait data particulièrement contraint vu les usages récents, c’est pas la joie (me souviens avoir mangé 4Go en une heure sur les 5 mensuels que contenait mon forfait d’alors–c’était il y a un peu plus d’un an). Et tout le monde n’a pas encore de fibre optique au niveau résidentiel, en particulier les structures disposant d’une dizaine de machines au minimum comme les écoles (bisou Cyrille, courage pour les salles infos).

D’ailleurs, ce comportement du « package complet » se retrouve sous Windows pour d’autres couches que l’OS. Les « g@merz » savent combien pèsent les nouveaux drivers de cartes graphiques de nos jours qui sont obligatoires ou presque à chaque sortie de nouveau jeu : celui pour ma carte graphique sous Windows 7 me coûtera quasiment 400Mo. Les utilisateurs de Libre office qui suivent les mises à jour se mangent 200Mo à chaque release. Et je pourrais certainement trouver masse d’autres exemples.

Mais je confirme que c’est plaisant, quand on réinstalle, de gagner un temps fou sous Linux en ayant qu’une seule passe à faire, surtout qu’elle peut être lancée en même temps, et donc on a pas l’impression d’être interrompu avant de pouvoir réellement utiliser son ordinateur. Mais à moins de passer ses journées à faire et refaire des installations, c’est un avantage qui ne se voit pas souvent.

Reste le fait qu’on installe tous ses logiciels sous Linux via le même gestionnaire de paquets, là où Windows Update est réservé aux mises à jour (il porte finalement très bien son nom). Pour le reste il faut se taper le Windows Store et donc se faire espionner par Microsoft et ses partenaires publicitaires (car ça demande un compte Microsoft, comme si nous étions sur mobile). Ou continuer à gérer ses logiciels à la main comme un grand, même si des solutions comme WAPT ou Chocolatey commencent à émerger. Elle est pas belle l’informatique « de bureau Windows » de 2017 ?

Gogs : mettre en place un miroir vers GitHub

jeudi 9 novembre 2017 à 18:30

Pour ceux qui ne connaissent pas, Gogs est un service Git auto-hébergé pour gérer vos dépôts de codes. J’avais tenté l’installation du très puissant Gitlab mais ce dernier consomme beaucoup trop de ressources pour qu’il reste un candidat sur mon micro-serveur. Après avoir un peu souffert à l’installation (je détaille pas mais je l’ai cherché), j’ai commencé réellement à bosser avec récemment. Et pour certains des dépôts, je souhaite qu’il soient recopiés sur GitHub, si possible automatiquement. Et c’est assez facile à mettre en place en fait.

Rapide contexte

Gogs est écrit en langage go. Son installation et sa configuration se veulent simplifiées, mais j’ai complexifié le truc « exprès » pour m’exercer un peu sur Postgresql. Il est même possible de l’installer via Docker, et il n’est pas impossible que je déporte mon installation actuelle ou que je la refasse pour basculer sur le cluster Swarm que j’essaie désespérément de monter.

La spécificité c’est donc qu’il est auto-hébergé, nécessairement privé. Mais j’ai également un compte GitHub, et si on pouvait faire en sorte de pousser automatiquement sur GitHub quand on pousse sur Gogs, c’est cool. Sans avoir besoin de la puissance de l’option intégration continue d’un Gitlab beaucoup trop lourd pour mes besoins persos, on a quand même les hooks, qui sont une fonctionnalité de Git.

Quelques étapes simples

En premier lieu, configurer l’accès SSH entre l’instance Gogs et Github. Pour ça, on se connecte sur gogs, et on bascule sur l’utilisateur git qui est celui utilisé par le logiciel. Il faut ensuite se créer une clé SSH, pour ma part je n’ai pas configuré de passphrase :

git@gogs:~/.ssh$ man ssh-keygen 
git@gogs:~/.ssh$ ssh-keygen -t ed25519
Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/git/.ssh/id_ed25519): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/git/.ssh/id_ed25519.
Your public key has been saved in /home/git/.ssh/id_ed25519.pub.
The key fingerprint is:
4d:d5:cb:a4:9f:0a:93:1b:13:9c:d3:8d:23:3e:a6:11 git@gogs
The key's randomart image is:
+--[ED25519 256]--+
|            ..   |
|           .  o  |
|         ..o * . |
|        Eo* = +  |
|        So.= o . |
|        . X   o  |
|         + B .   |
|        . . .    |
|                 |
+-----------------+
git@gogs:~/.ssh$ cat id_ed25519.pub 
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBeo5HVJCBAggpcSh9RPgUMgg0710etf21sNChjllJyf git@gogs

On ajoute ensuite cette clé sur son compte GitHub via l’interface web :

Tant qu’on est sur GitHub, profitons-en pour créer un dépôt vide, avec le nom qu’un veut. Par feignantise, j’ai utilisé le même que celui du dépôt privé. Attention, il faut absolument qu’il soit vide de tout, il ne faut donc pas sélectionner de licence ou de README.md dans le formulaire de création, sinon techniquement il y aura déjà un commit et ça sera l’enfer pour l’exploiter.

On teste maintenant la connexion depuis Gogs :

git@gogs:~/.ssh$ ssh git@github.com
The authenticity of host 'github.com (192.30.253.112)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com,192.30.253.112' (RSA) to the list of known hosts.
PTY allocation request failed on channel 0
Hi seboss666! You've successfully authenticated, but GitHub does not provide shell access.
Connection to github.com closed.

Parfait. Rendons-nous maintenant sur l’interface web de Gogs pour y configurer un hook. Pour cela, il faut sélectionner l’un de vos dépôts, se rendre dans les paramètres de ce dépôt, il y a un menu Git hooks :

Il faut modifier le post-receive, qui est vide pour l’instant, et ajouter les lignes suivantes :

#!/bin/bash
git push --mirror git@github.com:seboss666/misc-scripts.git

On enregistre, et… c’est tout. Lors de votre prochain push sur le dépôt, il va ensuite automatiquement renvoyer les modifications sur GitHub :

[seboss666@seboss666-ltp ~/dev/misc-scripts (master) ]$ git push origin master
Décompte des objets: 3, fait.
Delta compression using up to 4 threads.
Compression des objets: 100% (3/3), fait.
Écriture des objets: 100% (3/3), 403 bytes | 403.00 KiB/s, fait.
Total 3 (delta 1), reused 0 (delta 0)
remote: Warning: Permanently added the RSA host key for IP address '192.30.253.113' to the list of known hosts.
remote: To git@github.com:seboss666/misc-scripts.git
remote:  * [new branch]      master -> master
To ssh://gogs.seboss666.ovh/Seboss666/misc-scripts
   f2d9016..47ef107  master -> master

Voilà, maintenant, je vais pouvoir reprendre petit à petit les différentes broutilles que j’ai pu vous balancer au fil des années sur le blog et les ajouter là-dedans. En passant, l’utilisation via mon rebond SSH fonctionne très bien pour taper sur mon instance Gogs 🙂

PS : J’indique qu’il ne faut pas ajouter la licence sur le dépôt créé sur GitHub, je l’avais fait sur Gogs, et GitHub a détecté le fichier et affiche correctement la licence sur la page du dépôt 😉

Quelques liens en vrac et en français, 24° édition

mardi 7 novembre 2017 à 18:30

Encore plein d’articles intéressants sur différents domaines, du technique, de l’un peu moins technique, et même un peu de politique, sale évidemment, c’est la norme semble-t-il cette année…

BOINC, systemd et priorité des processus sous Linux

L’arrivée de systemd et de l’exploitation des cgroups pour l’ordonnancement des processus au sein du noyau linux a eu un effet de bord relativement inattendu sur la gestion et l’utilisation du « nice ». Paul nous présente donc comment s’en sortir avec l’exemple du service BOINC (calcul scientifique partagé).

Le piratage d’Equifax

Equifax est une société qui fait de la notation de crédit : ils collectent des données sur des personnes poru évaluer leur capacité à rembourser un emprunt. Et donc la collecte est importante, très intrusive, pour pouvoir dresser le profil le plus précis possible. Hors, comme il est de plus en plus courant, Equifax a fait l’object d’une attaque qui a conduit à une énorme fuite de données personnelles, de celles qui permettent d’usurper quantité d’identités, avec les conséquences désastreuses que l’on sait pour les personnes touchées. Et leur comportement face à cette crise est plus que douteux à bien des niveaux.

De l’état du marché du développement

C’est une réalité, les logiciels et les algorithmes sont amenés à prendre de plus en plus de place dans notre vie quotidienne, encore plus qu’actuellement, et nos dirigés pensent qu’il est nécessaire de « produire » plus de codeurs. Mais le problème est-il vraiment dans les cursus ? Pas nécessairement si l’on en croit Jean-Baptiste Dusseaut d’Arpinum, qui dresse un portrait peu glorieux du marché, et des entreprises notamment française dans le domaine du développement logiciel.

Wget derrière un SSO

On a beau vous rabâcher que les cookies c’est le mal, j’ai déjà eu l’occasion de m’exprimer sur leur réelle utilité technique. Mais quand vous avez besoin de faire des tests via wget (ou curl) avec un session connectée, c’est compliqué, à moins de pouvoir récupérer un cookie déjà enregistré et valide pour votre application. Et c’est Genma qui vous présente la manipulation, même si l’extension proposée ne sera plus exploitable avec Firefox 57 (j’ai collé ma petite contribution en commentaire 😉 ).

Le paradoxe de Monty Hall (…disponible également en version « pigeon »)

Monty Hall était un présentateur de télévision dans les années 60 (et j’ai découvert que ça a duré bien plus longtemps que ça) qui présentait un jeu dont la phase finale, relativement simple, plaçait le candidat face à trois portes, avec un cadeau derrière l’une d’entre elles, le but consistant à sélectionner la bonne porte. Le plus étrange avec ce jeu, c’est que les pigeons semblent plus enclins à découvrir la meilleure façon de gagner que nous. Je sais que pour la première fois de l’histoire le QI moyen a légèrement baissé, mais tout de même, c’est cocasse 🙂

Vos clés (physiques) ne sont pas en sécurité sur Internet

Vous pensez que votre domicile, votre valise, votre carte bleue, sont en sécurité dans le monde « physique » ? Que nenni, grâce à la magie des réseaux sociaux et à un étalage immodéré de notre vie privée sur ceux-ci, il est possible de récupérer quantité d’informations permettant ainsi d’accéder à ce que vous pensiez en sécurité. Petit florilège à partager aux personnes ayant donc une très mauvaise hygiène.

L’UE a dissimulé un rapport montrant que le piratage n’a pas d’effet négatif sur la vente de contenu protégé

Si on voulait encore une preuve de la collusion des élus même au niveau européen avec les lobbies d’industries culturelles, la voilà : un rapport de 360000€ sur l’étude de l’impact du piratage de contenus sur leurs ventes qui n’aboutit pas aux conclusions qui plaisent aux ayant-tous-les-droits, enterré par les commanditaires. Fort heureusement, il reste quelques irréductibles comme l’incontournable Julia Reda du Parti Pirate pour bien remettre le nez dans leur merde à ces corrompus (parce que là c’est pas possible que ça soit une erreur).

Infiltration : Ne pas mettre à jour son blog… et c’est le drame

On ne le dira jamais assez : si vous basez votre site sur un gestionnaire de contenus (Content Management System dans la langue de Taylor Swift), il faut le tenir à jour, aussi bien la base que les différents plugins et thèmes, et ça vaut aussi si d’aventure vous développez du code custom dessus.

Quelles conséquences si jamais vous négligez cette situation ? Eh bien, j’aurai pu moi-même faire un article, mais finalement, c’est déjà très bien fait par des gens dont c’est le métier en plus. Une chose à retenir : si votre site est détourné à des fins malveillantes, c’est d’abord vers vous qu’on va se retourner et emmerder comme pas possible. Demandez à ceux dont le serveur a été saisi en début d’année suite à l’attaque Wannacry sous prétexte que celui-ci communiquait via Tor.

Tour d’horizon sur HTTPS et les en-têtes de sécurité

Le mouvement de chiffrement des communications web est définitivement engagé, et il est plus qu’improbable qu’on reviendra en arrière étant donné qu’il faut maintenant se protéger de nos propres gouvernements y compris pour les communications les plus simples. Mais si la partie cryptographique est une base solide, il est facile d’oublier qu’on peut faire plein de choses sympa pour améliorer l’expérience et le niveau de sécurité via de simples entêtes HTTP. Pourquoi s’en priver dès lors ?

10 mythes sur la vie privée sur Internet

Vous pensez que votre vie privée est à l’abri sur Internet, ainsi que votre anonymat ? Pas de bol, il va falloir réviser votre jugement, et c’est une bonne base de passer par cet article très simple mais pas simpliste, en donnant des pistes simples pour démonter chaque mythe.

Guide d’autodéfense numérique : deuxième parution papier

Le guide d’autodéfense numérique est avant tout publié en ligne. C’est l’étape suivante après avoir mis en pratique des mesures d’hygiène numérique, et que l’on veut aller encore plus loin dans la préservation de nos activités en ligne. La version papier a son intérêt : on risque moins d’être surveillé en la lisant qu’en lisant la version en ligne. Comme d’habitude, vous n’avez pas nécessairement besoin de mettre la totalité des propositions en pratique. Tous les détails sur le site de linuxfr.

Super Logout

Ce site n’est pas français, mais bon, c’est pas grave, il est intéressant. Il permet d’appeler d’une seule traite la plupart des pages de déconnexion de dizaines de sites en ligne, principalement des services en ligne américains.

CTF Quaoar : la démonstration de l’utilité des bonnes pratiques de sécurité

dimanche 5 novembre 2017 à 10:30

Quand on dit qu’il faut éviter les mots de passe par défaut, de suivre les mises à jour de sécurité d’un système (en l’occurrence ici le moteur de blog), ce ne sont pas des paroles en l’air. Et pour vous prouver ça, j’ai décidé de me pencher sur un exemple de challenge disponible sur le site vulnhub.com, qui propose une machine virtuelle prête à l’emploi à attaquer. Et j’annonce tout de suite, pour les moins techniciens, ne fuyez pas trop vite, je vais essayer d’expliquer au plus simple chaque étape.

En fait, c’est par le biais du Journal du Hacker que j’ai découvert ce challenge, simple au demeurant comme on va le voir. J’ai commencé à regarder la vidéo, et dès que j’ai vu qu’il y avait un WordPress, ça a fait tilt dans ma tête creuse, j’ai arrêté la vidéo et je me suis dit que j’allais m’y attaquer moi aussi. Après tout, WordPress est probablement le moteur de sites web le plus utilisé à l’heure actuelle, il est donc nécessaire de vous rappeler à quoi vous vous exposez en l’exploitant de travers, et moi de m’exercer un peu pour l’année prochaine et la prochaine Nuit du Hack (encore que le niveau est assez bas ici apparemment). Et donc, un petit CTF, c’est à dire un Catch The Flag, à savoir que des « drapeaux » sont cachés sur le système à attaquer qu’il faut découvrir pour marquer des points.

Rappel d’usage : il est strictement interdit par la loi de procéder à ce type de manipulation sur un système qui ne vous appartient pas.

Bon, reprenons depuis le début : on télécharge la VM, on l’importe dans Virtualbox, et on la démarre. Pour ceux qui sont déjà un peu perdus, la machine virtuelle simule un équipement distant sur la même machine physique. Car pour rappel, techniquement un serveur sur lequel se trouve un site web n’est finalement à la base que la même chose que votre PC, juste adapté (pas besoin d’écran, par exemple). Virtualbox vous permet donc de démarrer plusieurs systèmes, et dans le cas présent je vais en avoir deux : la cible, et une instance Kali, une distribution Linux spécialisée justement pour les tests de sécurité.

Tout ce qu’on sait en démarrant la machine cible, c’est son adresse IP : ici, c’est 192.168.1.4. On va donc commencer par faire un scan de ports, pour savoir sous quel angle on peut attaquer la machine. Un port, dans le domaine des communications informatiques, peut être vu comme une porte sur une maison, un point d’entrée pour communiquer avec un service : quand votre navigateur vous affiche un site, il demande la page au serveur via le protocole (langage) HTTP sur le port 80; plusieurs ports sont normalisés de la sorte, je ne vais pas faire un listing complet et en plus, en théorie, pour n’importe quel service on peut techniquement changer le port par défaut.

Ici, plusieurs informations différentes, on voit donc du SSH, pour interagir en ligne de commande à distance avec la machine, du HTTP, pour servir des pages web, du DNS, pour jouer aux pages jaunes, et du mail (IMAP, POP et SMTP). Chacun de ces éléments peut être attaqué pour diverses raisons, ici on cherche à prendre le contrôle de la machine, et donc obtenir un accès avec le plus de privilèges possibles. Le serveur web est probablement le plus simple à exploiter, commençons donc par vérifier ce qu’il nous dit.

On a donc une image, qui nous dit de cliquer sur le lien pour savoir quoi faire, et ça aboutit à une deuxième image tout aussi inspirée. Dans le cadres de challenges comme celui-ci, il se peut qu’un des drapeaux à retrouver se cache au sein de l’image, une technique qu’on appelle la stéganographie, mais je vais laisser ça de côté dans l’immédiat, on y reviendra si besoin d’indice qui seraient cachés. Il n’y a donc que peu d’informations pour le moment. Tentons certaines choses, du style /phpmyadmin, et la page d’erreur « 404 » nous donne un peu plus d’informations :

Apache/2.2.22 (Ubuntu) Server at 192.168.1.4 Port 80

Le système semble être une Ubuntu avec un serveur web Apache 2.2.22, ce qui nous indique une Ubuntu 12.04. Comme d’habitude, je ne sais pas encore si ça va nous servir mais le fait est que plus on obtient d’informations, plus on saura comment s’attaquer au système. En effet, les mises à jour de sécurité ont cessé sur cette version et en cas de besoin, on pourra consulter les vulnérabilités non corrigées. Si PHP est installé via les paquets d’origine, il sera en 5.3, ce qui est particulièrement vieux et donc faillible également. Donc vous le voyez, on a déjà, sans même être allé très loin, obtenu suffisamment d’information pour trouver quantité de vecteurs d’attaques potentiels. Et tout à ça la main.

Un fichier qu’on va souvent trouver sur un serveur web est le fichier robots.txt. Il est utilisé dans le cadre du référencement d’un site lors du passage des robots d’indexation de Google&co, pour indiquer les endroits autorisés et interdits pour le référencement. Et tiens, quelle surprise, apparemment il y a un /wordpress/ :

On remarquera la petite blague sur les hackers 🙂

Bingo ! En tout cas, ça ressemble à un WordPress, le thème par défaut date de 2014, ce qui peut laisser présager une version non maintenue à jour. Je pourrais chercher pas mal de choses à la main, mais je vais me concentrer sur un outil particulièrement pratique qui s’appelle WPscan (que j’avais présenté dans un de mes rares usages de Docker sur Manjaro, que j’ai même arrêté de pratiquer après la dernière réinstallation à la perte du SSD). Cet outil va nous permettre de récupérer quelques informations intéressantes :

Et pour certaines de ces entrées, un recensement des vulnérabilités connues. Et là, c’est champagne : le wordpress est dépassé, les rares plugins présents sont vulnérables, et on voit un utilisateur « admin » qui est l’un des identifiants les plus présents sur ce type de solution, au point qu’on devrait pendre les utilisateurs qui le laissent trainer. Pourquoi ? parce que le mot de passe probablement le plus utilisé pour aller avec, c’est admin. La preuve ?

Voilà, j’ai donc déjà le contrôle quasi complet du WordPress. Pas encore suffisant pour moi, mais déjà, ça permet de lancer à peu près ce qu’on veut avec l’utilisateur qui est associé au PHP qui tourne derrière (www-data si PHP est en module, c’est pratiquement assuré), et modifier à peu près ce qu’on veut sur le site, pour intégrer plein de choses dégueulasses qui permettront soit d’exfiltrer les données du site, et donc potentiellement des visiteurs/utilisateurs, leur faire miner de la monnaie électronique de manière cachée (coucou Pirate Bay), transformer le site en boutique de produits contrefaits… Les possibilités sont tellement nombreuses que je ne préfère pas trop m’étendre sur le sujet, en plus j’oublierais des trucs.

Ici on va commencer par s’ajouter un webshell, c’est à dire s’ajouter un mécanisme de ligne de commandes au travers du site, ce qui nous permettra d’effectuer plus d’opérations que par la base de WordPress. Plusieurs possibilités, aussi bien sur les méthodes d’injection, que sur le shell à utiliser. J’ai opté pour ws0shell, que je colle sur le site en passant par l’éditeur de thème :

Voilà, je peux donc maintenant parcourir tous les fichiers du WordPress, et je vais naturellement me tourner vers le fichier de configuration, qui contient les identifiants à la base de données. Et là, deuxième mauvaise pratique : le compte utilisé pour accéder à la base de données, qui contient donc tous les secrets du WordPress, c’est le compte root, autrement dit l’administrateur de la base de données, qui a donc accès à bien plus que la base du wordpress, à savoir tous les autres sites installés sur la même machine. Eh ben vous savez quoi ? J’ai tenté ce couple login/mot de passe pour me connecter via SSH :

Boum. Me voilà administrateur de la machine, et j’en ai donc le contrôle total, à pouvoir installer de quoi y rester même si le propriétaire s’en rend compte et colmate ses brèches, et pouvoir faire mes affaires à son insu. Et tout ça, sans être un expert en sécurité ou en « piratage ». Une fois que j’avais terminé moi-même, j’ai lu quelques articles sur ce challenge : parmi les plugins installés, il y en a un qui permet d’inclure n’importe quel fichier du système et donc de l’afficher (ce qui ne devrait pas être permis), et on peut tenter de passer par le shell injecté pour lancer un exploit d’élévation de privilèges, à cause du manque de mises à jour de la machine. Comme quoi, il y avait la voie facile et au moins une autre possibilité pour détourner cette machine de son usage premier.

Donc, récapitulons un peu, pour comprendre quels sont les erreurs qu’il ne faut pas reproduire :

Bien, maintenant pourquoi je rabâche encore sur le sujet de la sécurité ? Pour les personnes les moins aguerries et qui ont eu du mal à suivre jusqu’ici, il est facile de se retrouver face à un service à l’apparence propre qui est plus que discutable si on regarde l’envers du décor. Il est donc impératif de ne pas être trop confiant et le meilleur moyen si on veut tout de même utiliser ce service, c’est de disposer d’un mot de passe unique qui évitera que plusieurs de vos services se fassent trouer et donc vos données avec.

Pour parler un peu plus de technique, le monde merveilleux voudrait qu’on soit tous bons et que toutes les mises à jour soit appliquées en permanence dès que c’est disponible, la réalité est que souvent, et c’est une grosse erreur, un site web même basé sur WordPress est livré en mode « one-shot », sans suivi de sécurité, à la façon d’une affiche de publicité statique. Pire, quand de lourds développements ont été effectués, ils le sont généralement par rapport à une version de PHP bien précise, une version de WordPress bien précise, et occasionnellement, la mise à jour d’un de ces deux acteurs casse des choses, et réparer coûte de l’argent, de l’argent que certains ne sont pas prêts à payer, jusqu’à ce que ce prix soit payé par les clients, via les comptes utilisateurs volés ainsi que les données qui sont associées.

Et si la démonstration que j’ai faite là a pris à peine 20 minutes à la main, les sites web sur la planète entière sont en permanence scannés par des robots et d’autres sites infectés pour tenter d’intégrer les machines à des réseaux de zombies qui seront ensuite exploitées à la demande par des réseaux criminels, pour pas mal de choses comme du déni de service, du bruteforce, et autres joyeusetés. Alors prenez le temps de mettre en place quelques bonnes pratiques (du style celles de cet article, à propos de WordPress), ça vous coûtera beaucoup moins cher plus tard.

Mon NAS, qu’il est bien pour stocker mes données

dimanche 29 octobre 2017 à 10:30

J’ai d’abord présenté l’organisation que je comptais appliquer à mes sauvegardes, du moins la partie locale, et j’avais dit que j’évoquerai le NAS dans un billet dédié. Voici donc ledit billet, pour lequel la faute de grammaire est volontaire et je vous laisse chercher la référence 😛

Non, je n’ai pas remonté un NAS maison

L’itération originale de mon stockage réseau, à l’époque ou j’habitais encore avec ma très chère mère, était fabriqué maison avec en grande partie des éléments « recyclés » (boitier, CPU, RAM, Alim, Carte mère, disque système). Il a servi vaillamment pendant plusieurs années, avant qu’un gros souci avec le RAID5 mette un point d’arrêt à son fonctionnement (deux disques non reconnus sur trois, c’est un peu disqualifiant). Peu après mon arrivée chez LinkByNet, j’ai remis en place un petit Synology DS216j avec deux disques de 2To en RAID1 pour les besoins de ma maman. De mon côté j’ai survécu comme j’ai pu, avec disques durs externes, disques durs internes…

Mais pas de sauvegardes en tant que tel, et un SSD tout neuf qui m’a lâché en début d’année qui m’a vacciné. J’ai encore joué avec le feu pendant quelques mois pour me décider, et les premières briques sont maintenant en place après avoir tâtonné sur quelques points.

Le châssis : c’est pas un Synology !

Je ne suis pas parti sur un microserveur HP ou un nouveau bousin fait maison comme mon Pimousse. Et ce n’est pas non plus un Synology, non pas que je sois mécontent des prestations de celui de ma maman, mais les tarifs des modèles pouvant accueillir quatre disques sont un peu dissuasifs. Je me suis tourné vers Asus pour le coup, à la fois pour le prix et aussi pour le design. Oui, le fabricant historique de cartes mères pour PC s’est largement diversifié au fil des années pour couvrir toute une gammes d’appareils, dont les NAS via la gamme Asustor. Et c’est le modèle AS-1004T qui a retenu mon attention.

Pour commencer il est joli, du moins selon mes critères, et croyez-moi, quand vous allez devoir l’exhiber dans votre salon en permanence, c’est important. Les diodes sont discrètes (encore plus que prévu j’y reviendrais), et sur le papier la prestation offerte est tout à fait correcte pour le prix, parce qu’il y a une différence de près de 100€ avec les équivalents quatre baies chez beaucoup de concurrents.

Le montage des disques est assez trivial, les vis sont serrables à la main (sauf quand on a des trop gros doigts, ce qui est mon cas), avec une entretoise discrète en caoutchouc qui sera, je l’espère, efficace pour amortir les quelques vibrations qui pourraient se faire sentir. Bref, pas chiant, les amateurs de tiroirs amovibles pour un changement à chaud devraient se rappeler qu’il ne va pas être si sollicité que ça, et que si besoin d’intervention, ce qui n’arrivera pas souvent, l’éteindre pour l’ouvrir ne sera pas une catastrophe.

Pour l’instant le ventilateur est quasiment inaudible, ceci dit à date il ne souffle que sur un seul disque, donc à voir quand les 4 seront de la partie.

L’interface : c’est pas du Synology (et ça se sent)

Les interfaces modernes des NAS ont acquis des capacités nombreuses, visuellement agréable la plupart du temps, mais la mise à jour en temps réel de certaines informations rend le tout assez lourd, et si Synology ne s’en sort pas trop mal globalement, c’est moins le cas pour certains menus d’ADM (c’est son petit nom chez Asus) qui souffrent de lenteurs presque inacceptables, comme l’explorateur de fichiers que j’ai finalement très vite arrêté d’utiliser pour me tourner vers le NFS; elle reste malheureusement presque indispensable pour faire des transferts depuis un support USB connecté en face avant vers un des volumes du NAS.

Les menus sont aussi moins évident à identifier, la gestion des utilisateurs et des partages étant les premiers qu’on cherche à utiliser, j’imagine qu’on finit par trouver ses petits avec le temps, mais le premier contact est pas super intuitif. Dommage, une fois les sections identifiées chaque page est pour le coup assez complète, claire, bien organisée, je n’ai pas vraiment eu d’autres reproches à faire pour l’instant.

Petit bonus, j’ai découvert que l’on pouvait contrôler pas mal d’aspects matériels du bousin : niveau de vitesse du ventilateur (j’ai collé sur bas, ce qui peut expliquer le niveau sonore que j’obtiens), et une chose très appréciable quand vous dormez dans la même pièce : le contrôle des leds, aussi bien de la carte réseau que de la façade avant : le niveau de luminosité est paramétrable, et il y a même un mode nuit que vous pouvez activer manuellement ou planifier selon vos horaires ! Fini les sapins de Noël dans le noir 🙂

Un gros point noir par contre, c’est la possibilité de notification par mail lors de la création d’un nouvel utilisateur : le mot de passe est reçu en clair ! Allo ? On est en 2017 les gens de chez Asustor, faut se réveiller, même sur un appareil à ce prix, la sécurité ne devrait pas être aussi affreuse. Je ne parlerai pas de l’offre logicielle installable en sus, je n’ai pas encore pris le temps de me pencher dessus longuement, sachant que c’est vraiment le stockage qui m’intéresse avant tout…

Dernier point à mentionner, comme d’habitude les assistants d’installation (ne serait-ce que pour identifier le NAS à sa première connexion, avant de fixer l’adresse IP) ne sont pas disponibles sous Linux. Je suis passé par l’interface web du Freebox Server pour récupérer l’IP du bail DHCP avant de faire mes affaires directement via l’interface web, une manipulation qui n’est pas à la portée de tout le monde, surtout avec des box moins accessibles (Orange entre autres). Ceci dit, pour la première installation l’assistant qui tourne dans un navigateur est un guide plutôt correct, il procède même directement aux mises à jour; soyez patient par contre si vous n’avez pas un débit confortable.

Le choix du disque : Red is dead

En effet, contrairement à la plupart des personnes qui choisissent, certainement à juste titre, des modèles Western Digital « Red » qui sont optimisés et pensés pour fonctionner 24/7 dans des NAS, leur tarif, surtout passé les 3To, est assez rédhibitoire. Et je cherchais à m’équiper en modèles de 4To. En demandant de l’aide aux copains sur Telegram, j’ai été orienté vers Seagate, qui propose logiquement lui aussi des disques spécialisés pour les NAS : les « Ironwolf ». Un peu ronflant comme nom, mais c’est pas l’essentiel.

Pour le prix d’un 3To chez WD, j’ai donc un modèle 4To dont les plateaux opèrent à 5900 tours par minute chez Seagate (contre 5400 chez WD), avec les mêmes garanties sur la fiabilité du fonctionnement. Et il faut dire que pour l’instant, bien que je n’en ai pris qu’un seul, je n’ai pas vraiment à me plaindre du dégagement de chaleur, du bruit, ou des performances qui sont de toute façon limitées par l’interface utilisée pour le transfert, que ça soit USB3 ou Gigabit Ethernet.

Des performances plus que correctes pour l’instant

Mon premier test a consisté à transférer les données d’un disque dur externe d’1To en USB3 autoalimenté via la prise en façade. Résultat : ~75Mo en écriture en moyenne, sur un disque simple donc, le transfert étant lancé via l’interface web. Via Ethernet, j’ai testé avec mon gros PC de jeu, et le résultat est à peu près équivalent en SMB.

Pour le prix, on est donc vraiment bien servi, à voir quand le RAID sera de la partie, parce qu’il va nécessiter un surplus de calcul pour la parité, parité qui permettra de perdre un disque sans perdre de données, ce qui laisse le temps de le remplacer. Le SoC dans l’absolu n’est pas un foudre de guerre, il est refroidi passivement (d’ailleurs on peut voir apparaître le radiateur quand on ouvre pour installer les disques), donc ça pourrait jouer un rôle.

Une installation à conseiller ?

J’attends de voir avec un peu plus de temps et la multiplication des pains des disques, mais au moins pour les disques durs, pour l’instant il me semble que l’Ironwolf est une bonne alternative au Red qui semble être LA référence que tout le monde ressort à tout bout de champ. Pour le NAS lui-même, je suis un peu plus dubitatif, l’interface est brouillonne, à la limite pour un technicien prêt à fouiller les menus pourquoi pas, mais pour une personne moins à l’aise, il y a des chances que je continue de conseiller plutôt un Synology dont l’interface est peut-être un peu plus lourde, mais on cherche moins après des fonctions de base qui ne seraient pas nécessairement regroupées logiquement.

Un des avantages qu’il a est qu’il supporte facilement la migration d’un RAID1 vers un RAID5, je vais donc pouvoir facilement étaler l’achat de mes disques, pour éviter une mauvaise surprise 🙂

Je m’en accommoderai de toute façon, mais je ne pense pas qu’à moi (comme pour les outils de sauvegarde). Et comme peu de personnes font l’effort de chercher, moins on leur en fait faire, plus ils seront prêt à accepter d’utiliser ce type de solutions.