Retour d'expérience sur le chiffrement du répertoire 'home' sous Linux

à poil non de zeus !

Je vais vous partager mon expérience concernant le chiffrement de mon répertoire utilisateur sur Linux, réalisée sur un ordinateur portable de seconde main.

Les gammes Thinkpad, un excellent choix en occasion pour basculer sur Linux

Récemment, j'ai fait l'acquisition d'un Thinkpad Lenovo T470. Cet appareil me sert essentiellement à tester diverses distributions Linux spécifiquement conçues pour des environnements de développement.

Il convient de noter que le prix des modèles de Thinkpad plus anciens sur le marché de l'occasion tend à diminuer, un phénomène en partie dû à leur incompatibilité avec Windows 11.

Si vous envisagez de faire le saut vers Linux, les Thinkpad s'avèrent être d'excellentes affaires. Le matériel est généralement compatible avec ce dernier, et ces appareils demeurent facilement réparables.

Cependant, je ne suis pas ici pour faire la promotion des Thinkpad, alors retournons à l'objet principal de cet article.

Le chiffrement du répertoire 'home' sur Linux et l'impact sur les performances

Alors que je testais la version la plus récente de Mint (21.3), j'ai remarqué la possibilité de chiffrer uniquement le répertoire 'home', sans avoir à chiffrer la partition dans son intégralité.

L'atout majeur de cette option réside dans le fait de ne pas avoir à renseigner la clé de chiffrement lors du démarrage de l'ordinateur, mais j'ai négligé de prendre en compte son incidence sur les performances.

Effectivement, le chiffrement du répertoire 'home' a un impact non négligeable sur les performances, notamment dans les environnements de développement étant donné la fréquence élevée d'accès au disque dur (iops).

Phoronix a rédigé un article exhaustif sur le sujet en 2018, qui malgré sa date reste toujours pertinent. Vous pouvez le consulter via le lien suivant : https://www.phoronix.com/review/ubuntu-1804-encrypt.

À l'usage, on observe effectivement que le processeur est davantage sollicité lors des actions impliquant de nombreux accès disques. L'exemple le plus révélateur selon mon expérience personnelle est lorsque je développe une application Flutter sous Android Studio avec l'émulation d'un smartphone Android.

Cependant, bien que ce problème de performance ait été relevé à plusieurs reprises dans divers articles et retours utilisateurs, j'ai dû affronter un autre effet pervers nettement plus insidieux.

Le bug des noms de fichiers trop longs avec le chiffrement eCryptfs

Lors de la compilation de mon application Flutter pour Android, j'ai rencontré une anomalie relative à un fichier surpassant le seuil des 255 caractères.

C'était une première de me confronter à cette erreur. Initialement, j'ai naïvement attribué ce problème à Mint, mais la logique était erronée, puisque je n'avais jamais constaté cela avec mon autre portable sous Ubuntu 22.04.

J'ai regardé sur Internet l'erreur qui était générée, et je me suis retrouvé sur une page de StackOverflow. Cette dernière stipulait que ce bug était associé au processus de chiffrement eCryptfs.

Suite à de nombreuses recherches en ligne, il s'est avéré que bon nombre d'utilisateurs ont reporté des problèmes similaires dans divers contextes d'utilisation. Un bug a d'ailleurs été officiellement signalé sur ce lien : https://bugs.launchpad.net/ecryptfs/+bug/344878

On pourrait envisager de contourner ces deux difficultés (problème de performance et nom de fichier trop long) en s'affranchissant du répertoire 'home'. Mais en faisant cela, on perd l'intérêt de l'existence de ce répertoire.

Une conclusion nuancée pour une option binaire

A la lecture de cet article, on pourrait en déduire qu'il n'est pas nécessaire d'activer le chiffrement du répertoire 'home'. Toutefois, en pratique, cela dépendra de l'objectif d'utilisation de l'utilisateur.

Si celui-ci utilise son environnement Linux de façon modérée, en naviguant sur Internet et/ou en exploitant des logiciels de traitement de texte, l'activation de cette option peut être avantageuse.

En effet, il n'aura pas d'accès excessifs au disque et il est très probable qu'il ne compilera pas de programmes.

Dans une telle situation, l'expérience utilisateur est plus adaptée au chiffrement du répertoire 'home' car on n'a pas besoin de fournir la clé de chiffrement lors du démarrage de l'ordinateur.

Il est donc primordial de bien définir le besoin avant de décider s'il est bénéfique ou non d'activer cette fonctionnalité.