Bits and Splits - stock.adobe.co
Stockage : détruisez les données avec shred et dd sous Linux
Lorsque vous devez vous débarrasser d’anciens systèmes ou déplacer un système d’un emplacement à un autre, il est recommandé d’utiliser les utilitaires Linux pour supprimer en toute sécurité les données existantes.
Il ne suffit pas de supprimer les fichiers ou de reformater le disque avec fdisk pour que les données confidentielles soient irrécupérables. Utilisez plutôt les commandes shred et dd.
En effet, la suppression d’un fichier n’efface ni ne remplace les données. Elle marque simplement l’emplacement comme disponible pour que le système puisse l’utiliser lors de l’écriture d’autres fichiers. Cette approche ne pose généralement pas de problème au quotidien, mais elle devient problématique lors de la mise au rebut de disques ou de la réutilisation de supports de stockage.
Que vous fassiez don de systèmes à des associations caritatives, vendiez un ordinateur d’occasion ou jetiez un disque dur ancien et obsolète, il est important d’effacer soigneusement les données qu’il contient. Cela vaut également si vous réutilisez un ancien ordinateur de bureau du service commercial pour le kiosque de la réception, par exemple.
Linux s’appuie sur deux outils principaux pour écraser les données en toute sécurité : shred et dd. Ils offrent des fonctionnalités similaires, mais présentent quelques options de configuration différentes. Cet article explique comment utiliser les commandes shred et dd pour effacer les anciens équipements de stockage qui pourraient contenir des informations que vous souhaitez masquer.
Avant de donner ou de réutiliser un support de stockage, utilisez plusieurs fois l’un de ces outils, ou les deux, afin d’empêcher les outils d’analyse profonde de récupérer vos fichiers. Vous pouvez également avoir besoin de shred si vous souhaitez supprimer de manière sécurisée des fichiers individuels sans détruire le système de fichiers ni toucher aux autres ressources que vous souhaitez conserver.
Comment utiliser la commande shred
La commande Linux shred détruit les données en les écrasant avec des informations aléatoires ou des zéros. Il vous suffit de cibler un fichier ou une zone de stockage et de définir des fonctionnalités supplémentaires. Shred s’occupe du reste.
Sachez que shred peut prendre beaucoup de temps à s’exécuter sur les périphériques de stockage actuels qui offrent beaucoup de capacité.
Commencez par vérifier que shred est installé sur votre distribution. Toutes les distributions Linux ne l’incluent pas. Tapez shred sans options ni arguments pour voir s’il est installé.
S’il n’est pas installé, utilisez le gestionnaire de paquets DNF sur votre distribution dérivée de Red Hat pour l’ajouter :
sudo dnf install -y shred
Si vous utilisez une distribution dérivée de Debian, telle qu’Ubuntu, tapez la commande suivante :
sudo apt install -y shred
Shred fait également partie du paquet GNU Coreutils, que la plupart des distributions possèdent. Vous pouvez ajouter le paquet Coreutils à l’aide de votre gestionnaire de paquets.
sudo dnf install -y coreutils
sudo apt install -y coreutils
Soyez prudent avec shred. N’oubliez pas qu’il est conçu pour rendre les données irrécupérables. Assurez-vous de bien connaître le périphérique ou le fichier cible avant d’exécuter cette commande.
Voici quelques-unes des options les plus courantes de shred :
-n définit le nombre de passages (écrasements) pour la cible. Plus il y en a, mieux c’est, mais le processus prend plus de temps.
-v affiche des informations sur la progression.
-f force shred à écraser les fichiers avec des permissions en lecture seule.
-z ajoute une dernière opération de réécriture composée de zéros.
-u écrase les données puis supprime le fichier pour une sécurité supplémentaire.
Utilisez shred --help pour afficher toutes les options.
Exemple 1 : détruire un fichier
La commande shred est simple. Vous n’avez même pas besoin d’options. Pour détruire un seul fichier en utilisant les paramètres par défaut, tapez ce qui suit.
shred filename.txt
Définissez un nombre personnalisé d’écrasements à l’aide de l’option -n. Dans le cas suivant, il y a dix écrasements.
shred -n 10 filename.txt
Il est conseillé d’effectuer un écrasement final avec des zéros. Utilisez l’option -z pour cette fonctionnalité, comme indiqué ci-dessous.
shred -z filename.txt
Comme pour les autres commandes Linux, vous pouvez combiner plusieurs options pour augmenter les fonctionnalités.
Exemple 2 : détruire une partition
Vous pouvez diriger shred vers un volume en utilisant le chemin d’accès au périphérique, au lieu d’un nom de fichier. Par exemple, pour appliquer shred à la partition sdb1 avec cinq écrasements, un dernier passage avec des zéros, puis la suppression du fichier, tapez la commande suivante.
shred -n 5 -uvz /dev/sdb1
N’oubliez pas que l’écrasement peut prendre beaucoup de temps sur les équipements de stockage de grande capacité.
Comment utiliser la commande dd
La commande dd de Linux est très polyvalente. L’une de ses fonctionnalités consiste à écraser de manière sécurisée les données sur un volume. Elle permet également de copier et de convertir des arborescences de systèmes de fichiers.
Soyez prudent lorsque vous utilisez dd sur des systèmes de production. Cette commande écrase les données existantes, ce qui rend difficile la récupération en cas d’erreur.
La syntaxe de dd est différente de celle de la plupart des commandes Linux que vous connaissez. Elle comprend des spécifications pour les fichiers d’entrée et de sortie. Considérez ces fichiers comme la source et la cible du contenu que vous écrivez.
- if={input-file}
- of={output-file}
Le fichier d’entrée peut être un fichier, un système de fichiers ou un périphérique source spécial, tel que /dev/zero ou /dev/random.
Vous pouvez également définir la taille des blocs à l’aide de l’option bs. Des blocs plus volumineux accélèrent le traitement.
Tout comme shred, dd fait partie du paquet GNU Coreutils, vous y avez donc probablement déjà accès. Vous pouvez utiliser les deux commandes si vous avez installé le paquet Coreutils, comme indiqué dans la section shred ci-dessus.
Tout comme shred, dd écrase irrévocablement les informations, soyez donc prudent lorsque vous l’utilisez en production. Vérifiez attentivement vos commandes.
Pour nettoyer un disque à l’aide de dd, écrasez les données existantes avec du contenu aléatoire provenant du périphérique spécial /dev/random. Commencez par démonter l’espace de stockage, puis exécutez la commande dd.
umount /dev/sdb
dd if=/dev/urandom of=/dev/sdb bs=1M status=progress
Une fois le processus terminé, ajoutez un nouveau système de fichiers à l’aide de la commande mkfs. Vous pouvez ensuite monter le système de fichiers et commencer à utiliser l’espace écrasé pour de nouvelles données.
Comparaison des commandes shred et dd
Ces deux outils sont essentiels, il est donc utile de savoir quand utiliser chacun d’eux. Le tableau suivant compare les caractéristiques de chaque outil et indique quand les utiliser :
Caractéristiques :
- Shred est généralement plus adapté aux fichiers individuels.
- Shred écrase les données plusieurs fois, ce qui garantit une plus grande efficacité.
- Shred peut écraser les données avec des nombres aléatoires, puis effectuer un dernier passage avec des zéros pour masquer le processus de destruction.
- Dd est généralement plus rapide que shred pour les partitions et les disques.
- Dd peut utiliser des blocs de plus grande taille pour une plus grande efficacité.
- Dd effectue un seul passage, vous devrez donc peut-être l’exécuter plusieurs fois.
Utilisez shred dans les situations suivantes :
- Vous devez supprimer des fichiers ou des répertoires de manière sécurisée.
- Vous souhaitez effectuer plusieurs passages pendant le processus de réécriture.
- Vous souhaitez conserver le système de fichiers mais supprimer les fichiers de manière sécurisée.
Utilisez dd dans les situations suivantes :
- Vous devez effacer une partition ou un disque.
- La vitesse est plus importante que les passages multiples.
En général, il n’y a pas à hésiter entre shred et dd ; vous utilisez chaque outil dans des circonstances spécifiques.
Attention à la destruction de données sur SSD
Il est important de noter que vous devez gérer les SSD différemment des disques durs traditionnels. Les SSD répartissent les fichiers dans l’espace de stockage différemment des disques traditionnels, ce qui signifie qu’un effacement apparent des fichiers avec shred ou dd peut ne pas être aussi efficace que vous le pensez.
Les SSD ont également un nombre limité d’écritures, que les utilitaires d’effacement de disque peuvent consommer. La plupart des fabricants de SSD fournissent un outil d’effacement de disque, il est donc préférable de l’utiliser.
Le chiffrement des disques et la destruction physique sont d’autres moyens d’empêcher la récupération des données à partir de disques de stockage indésirables.
