17/11/2024

Services

Linux : chiffrer des données avec VeraCrypt en ligne de commande

I. Présentation

Dans ce tutoriel, nous allons apprendre à utiliser VeraCrypt en ligne de commande pour chiffrer des données à partir d'une machine sous Linux.

VeraCrypt est une solution chiffrement open source qui permet de créer des volumes chiffrés sécurisés. Nous verrons comment installer VeraCrypt, créer un volume chiffré, le monter et le démonter, le tout en utilisant uniquement la ligne de commande sur un OS Linux, l'utilisation en graphique (GUI) étant également possible et assez triviale.

Version originale de l'article : 5 juin 2015.

II. Installation de Veracrypt sous Linux

Avant de commencer, assurez-vous d'avoir les privilèges administratifs sur votre système Linux (un accès "root" ou via "sudo"). Nous allons ensuite devoir télécharger la dernière version de VeraCrypt depuis son dépôt officiel GitHub :

Si vous souhaitez utiliser VeraCrypt uniquement en mode console, vous pouvez télécharger le package "veracrypt-console-*". Sinon la version standard vous conviendra, elle permet une utilisation en console et via l'interface graphique.

Comme vous pouvez le voir, les éditeurs proposent de nombreuses versions en fonction de votre système d'exploitation. Commencez par identifier votre système d'exploitation et sa version :

Identifier l'OS dans les packages VeraCrypt sur Github.
Identifier l'OS dans les packages VeraCrypt sur Github.

Puis l'architecture correspondante à votre système, dans la grande majorité des cas, la version qui correspondra à votre besoin est celle qui finie par "x86_64" (pour les Red Hat/CentOS) ou "amd64" (pour les Debian/Ubuntu). Enfin, téléchargez le fichier qui fini par ".deb", à partir du navigateur ou via ou la commande "wget" en précisant le lien complet vers le package :

Identifier l'architecture dans les packages VeraCrypt sur Github.
Identifier l'architecture dans les packages VeraCrypt sur Github.

Une fois sur votre système, nous allons commencer par voir si toutes les dépendances nécessaires sont présentes :

# Récupérer les informations du package DPKG
$ sudo dpkg -I veracrypt-console-1.26.7-Debian-12-amd64.deb  
                                                                                                                                                                  
 new Debian package, version 2.0.
 size 8881480 bytes: control archive=12738 bytes.
     372 bytes,    12 lines      control
   41201 bytes,   449 lines      md5sums
     162 bytes,     9 lines      prerm                #!/bin/sh
 Architecture: amd64
 Conflicts: veracrypt
 Depends: libfuse2, dmsetup, sudo, libpcsclite1, pcscd
 Description: Disk encryption with strong security based on TrueCrypt.
  Disk encryption with strong security based on TrueCrypt.
 Maintainer: VeraCrypt Team <[email protected]>
 Package: veracrypt-console
 Priority: optional
 Section: libs
 Version: 1.26.7-1
 Installed-Size: 24714

Ici, analysez la section "Depends", il s'agit des libraires et autres packages qui pourraient manquer lors de l'installation, causant une erreur telle que celle-ci :

veracrypt-console depends on libfuse2; however:
Package libfuse2 is not installed.

Dès lors, il est nécessaire d'installer ces dépendances, puis de retenter l'installation de VeraCrypt (en tant que "root" ou via "sudo") :

# Installation d'un dépendance manquante 
apt install libfuse2

# Installation de VeraCrypt via dpkg (Debian et dérivés)
dpkg -i <package-veracrypt>.deb

# Exemple
dpkg -i veracrypt-console-1.26.7-Debian-12-amd64.deb

Dans le cas où l'installation s'est bien passée, vous devriez être en mesure d'obtenir la version de VeraCrypt via la commande suivante "veracrypt --version" :

Installation de VeraCrypt et récupéraiton de s aversion

III. Utilisation de Veracrypt en ligne de commande sous Linux

A. Créer un volume chiffré VeraCrypt en ligne de commande

Nous allons à présent créer un volume VeraCrypt en ligne de commande.

Un volume VeraCrypt est un espace de stockage chiffré qui peut contenir des fichiers et des dossiers. Ce volume peut être monté comme un disque virtuel, permettant un accès transparent aux données lorsqu'il est déchiffré avec le bon secret. Une fois démonté, les données à l'intérieur restent inaccessibles et protégées par un chiffrement fort, le volume VeraCrypt peut alors être manipulé comme un simple fichier.

Pour créer un volume chiffré VeraCrypt en ligne de commande, nous utilisons la commande suivante :

# Création d'un volume veracrypt de 500 mo utilisant l'algorithm AES
$ veracrypt --create /chemin/vers/votre_volume --volume-type=normal --size=500M --encryption=AES --hash=SHA-512 --filesystem=ext4
Enter password: 
Re-enter password: 

Enter PIM: 
Enter keyfile path [none]: 

Please type at least 320 randomly chosen characters and then press Enter:
Done: 100.000%  Speed: 150 MiB/s  Left: 0 s          
The VeraCrypt volume has been successfully created.

À l'exécution de cette commande, vous serez invité à entrer et confirmer un mot de passe pour le volume (choisissez une passphrase robuste !). Lors de la demande de saisie d'un "PIM" ou d'un "keyfile path", appuyez simplement sur "Entrée".

Vous aurez ensuite à saisir plus de 320 caractères aléatoires (vous avez le droit de taper absolument n'importe quoi sur votre clavier, pour une fois, profitez-en ! 🙂 ).

Cette chaine caractères aléatoire que nous allons créer ici permet d'améliorer la qualité de l'entropie utilisée dans le processus de génération de clés cryptographiques. Cette étape vise à garantir que les clés cryptographiques sont générées de manière sécurisée (totalement aléatoire), ce qui protège mieux les données stockées dans le volume VeraCrypt.

Voici le détail des options que nous venons d'utiliser :

  • --create /chemin/vers/votre_volume : chemin et nom du fichier de volume à créer.
  • --volume-type=normal : type de volume (normal ou caché).
  • --size=500M : taille du volume chiffré (ici 500 Mo).
  • --encryption=AES : algorithme de chiffrement utilisé.
  • --hash=SHA-512 : algorithme de hachage.
  • --filesystem=ext4 : système de fichiers utilisé dans le volume chiffré.

VeraCrypt offre de nombreuses options, notamment concernant les algorithmes de chiffrement que nous pouvons utiliser.

Vous trouverez ensuite votre volume dans le répertoire indiqué :

# Vérification de l'existance et du type de fichier du volume VeraCrypt
$ file /tmp/monVeraCryp1.vc 

/tmp/monVeraCryp1.vc: data

B. Montage et utilisation du Volume chiffré

Pour utiliser notre volume chiffrer et y stocker ou lire des données, nous devons commencer par le monter. Un peu comme il est nécessaire de monter un partage distant ou une clé USB avant de pouvoir accéder à son contenu :

# Montage d'un volume veracrypt dans le dossier ~/veracrypt
veracrypt /chemin/vers/votre_volume /point/de/montage

# Exemple
$ veracrypt /tmp/monVeraCrypt1.vc ~/veracrypt

Enter password for /tmp/monVeraCrypt1.vc:
Enter PIM for /tmp/monVeraCrypt1.vc:
Enter keyfile [none]:
Protect hidden volume (if any)? (y=Yes/n=No) [No]:
Enter your user password or administrator password:

# Accès au volume veracrypt monté
$ ls ~/veracrypt

lost+found

Vous serez invité à entrer le mot de passe du volume pour le monter, ainsi que le mot de passe de l'utilisateur privilégié du système ("root"). Cela, car l'opération de montage d'un volume nécessite des droits privilégiés sous Linux. Pour les autres demandes, appuyer sur "Entrée" suffira si vous n'êtes pas concerné.

Une fois monté, vous pouvez accéder au contenu de votre volume chiffré via le répertoire de montage spécifié ("~/veracrypt" dans mon exemple). Vous pouvez y lire et écrire des fichiers comme dans n'importe quel autre répertoire.(dans la limite de la taille du volume).

C. Démontage du volume chiffré

Une fois vos opérations terminées, il est nécessaire de démonter proprement le volume (comme le fameux "Ejecter" pour les clés USB). Nous nous assurons ainsi que le volume reste propre, sans risque de corruption. Pour démonter le volume chiffré, nous utiliserons la commande suivante :

# Démonter un volume VeraCrypt
veracrypt -d /point/de/montage

# Exemple
veracrypt -d ~/veracrypt

Le volume est alors démonté proprement et peut redevenir un simple fichier ".vc" qu'il est possible de manipuler (copier, coller, changer de répertoire, etc.).

IV. Conclusion

VeraCrypt est un outil puissant pour sécuriser vos données sur Linux. En utilisant la ligne de commande, vous pouvez facilement intégrer VeraCrypt dans vos scripts et automatiser le processus de gestion des volumes chiffrés. Assurez-vous de toujours garder votre mot de passe de volume en sécurité, car il est essentiel pour accéder à vos données chiffrées.

Pour plus d'informations sur VeraCrypt, consultez la documentation officielle.

author avatar
Mickael Dorigny Co-founder
Co-fondateur d'IT-Connect.fr. Auditeur/Pentester chez Orange Cyberdéfense.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

7 commentaires sur “Linux : chiffrer des données avec VeraCrypt en ligne de commande

  • Eh oui sourceforge n’a plus la côte , les devs se sont ré-attribué des appli comme: VLC, Notepad++ et GIMP il me semble.

    Merci pour le lien git adm

    Répondre
  • Bonjour,

    lorsque le processeur est un CORTEX ARMV7 d’un Raspberry PI 2 (RPI2) :
    que faut-il choisir 32 bits ou 64 bits (ou x86 ou x64) pour installer VERACRYPT?

    Le code :
    $ uname -r

    me donne le résultat sur mon RPI2:
    4.1.17-v7+

    Dans l’attente de vous lire, cordialement.

    Répondre
    • Bonjour, je sais je viens après la bataille!! LOL, un raspberry pi possède un processeur à architecture ARM et non x86 donc soit tu prend la source pour architecture ARM soit tu prends le package (sur le site officiel) spécialement conçu pour le raspberry

      Répondre
  • peut-on utiliser VERACRYPT sous LINUX en fenêtre graphique comme sous WINDOWS? et non pas en commandes

    Répondre
  • Bonjour,
    Il y a une coquille après la commande de chiffrement du voulme:
    « appuyez simplement pour « Entrée ». » *sur.

    Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.