CMTAB(5) | Manuel de l'utilisateur Linux | CMTAB(5) |
cmtab - informations statiques sur les systèmes de fichiers dirigés par cryptmount
Les informations sur les systèmes de fichiers chiffrés dirigés par cryptmount sont contenues dans le fichier /etc/cryptmount/cmtab. Chaque système de fichiers est appellé par un nom de cible qu'on peut utiliser comme paramètre de cryptmount et ce nom apparaît dans /etc/cryptmount/cmtab devant une liste des paramètres qui décrit où le système de fichiers est contenu, et comment il est chiffré.
Le format du cmtab est souple, et la description de chaque cible est délimitée par des accolades, les paramètres sont spécifiés par les paires CLEF=VALEUR, et on peut mettre autant de caractère blanc d'espacement que l'on veut. Les annotations commencent avec un caractère '#', qui peut être utilisé à n'importe quel endroit dans une ligne, et continuent jusqu'à la fin de cette ligne. Le caractère '\' indique que si le caractère suitvant a une signification spéciale, celle-ci sera ignorée, comme par exemple si on veut incorporer un espace dans le nom d'un fichier.
/etc/cryptmount/cmtab contient des inscriptions de la forme suivante:
NOM_CIBLE { dev=PERIPHERIQUE flags=DRAPEAU,DRAPEAU,... startsector=SECTEURDEBUT numsectors=NUMSECTEURS loop=PERIPH_LOOP dir=REP_MONT fstype=TYPE mountoptions=MOPT,MOPT,... fsckoptions=FOPT;FOPT;... supath=SUPATH cipher=CHIFFRE ivoffset=IVOFFSET keyformat=FORMAT_CLEF keyfile=FICHIER_CLEF keyhash=HASH_CLEF keycipher=CHIFFRE_CLEF keymaxlen=MAX_CLEF passwdretries=NUMESSAYES }
Ici, les paramètres 'flags', 'startsector', 'numsectors', 'loop', 'ivoffset', 'keyformat', 'keymaxlen' et 'passwdretries' sont optionnels.
Les paramètres ont les sens suivants:
cryptmount offrit un sélection de façons pour proteger la clef associée avec chaque système de fichiers chiffré. Pour le plupart des utilisateurs, la choix défaute "builtin" donne un bon niveau de securité et versatilité. Quelques autre moteurs de chiffrage sont disponible, et donnent plus de choix des algorithms pour brouiller le mot de passe, ou compatabilité avec quelques autre paquets. Le menu des moteurs sont le suivant.
builtin
Ce moteur est inclus dans cryptmount-2.0 et suivant, est utilise un fichier independent pour cacher la clef.
libgcrypt
Ce moteur est inclus dans cryptmount-1.1 et suivant, est utilise un fichier independent pour cacher la clef.
luks
Ce moteur est inclus dans cryptmount-3.1 et suivant, est peut diriger les système de fichiers du format LUKS ("Linux Unified Key Setup"). Ce format cache la clef dans une region spéciale du système de fichiers lui-même. Il est recommandé de ne pas utiliser les paramètres "startsector" ou "numsectors" parce que le format LUKS suppose qu'une partition entière est disponible pour le système de fichiers.
openssl/openssl-compat
Ce moteur etait disponible depuis les premiers versions de cryptmount, et utilise un fichier independent pour cacher la clef. Le format de ce fichier est compatible aver le paquet "openssl".
password
Ce moteur est inclus dans cryptmount-4.0 et suivant, est n'a pas besoin d'un fichier pour cacher la clef. Plutôt, la clef est constui directment du mot de passe, et donc il n'est pas possible de changer le mot de passe sans rechiffrer le système de fichiers en entiers.
raw
Ce moteur est inclus dans cryptmount-1.1 et suivant, est utilise un fichier independent pour contenir la clef, sans aucun chiffrage. Ce moteur est utile principalement pour les partitions de pagination.
Etant donné que cryptmount est installé avec des permissions setuid, il est très imporant que son fichier de configuration soit solide. Idéalement, /etc/cryptmount/cmtab devrait être dirigé seulement par le super-utilisateur, et toutes les clefs devraient être seulement lisibles par leurs utilisateurs propres.
cryptmount vérifie la sécurité du
/etc/cryptmount/cmtab chaque fois qu'il est executé, et se terminera
à moins que:
* cmtab ne soit possédé par le super-utilisateur
* cmtab ne soit un fichier régulier
* les permissions de cmtab ne contiennent pas d'écriture universelle
* le répertoire, qui contient cmtab, ne soit possédé par
le super-utilisateur
* les permissions du répertoire, qui contient cmtab, ne contiennent
pas d'écriture universelle.
De plus, pour toutes les cibles dans /etc/cryptmount/cmtab, tous les fichiers
doivent avoir des nom absolus (c'est-à-dire commencent avec '/').
En cas qu'on a choisi "raw" (brut) pour le FORMAT_CLEF c'est préférable si FICHIER_CLEF est rangé avec des permissions d'accès non moins restrictives que 0600, ou bien est contenu sur un disque USB-flash, par exemple.
Lorsque l'option `mkswap' est sélectionné pour une cible particulière dans /etc/cryptmount/cmtab, cryptmount tentera automatiquement de formater une partition swap chiffrée chaque fois que vous exécutez "cryptmount --swapon <cible>". C'est souvent utile quand il n'est pas nécessaire de conserver les données de pagination entre les redémarrages, comme lorsque vous n'utilisez pas les caractéristiques d'hibernation du noyau.
Parce que le reformatage supprime toutes les données existantes sur la partition de pagination choisi, cryptmount se faire des vérifications de base sur le premier mégaoctet de la partition, basée sur le degré d'aléa (entropie) dans le contenu actuel. Si la partition semble contenir bruit pur, ou a été remis à zéro, la partition sera formatée automatiquement. Si cryptmount détermine que la partition peut contenir des données non-aléatoire, puis il vous demandera d'exécuter "mkswap" manuellement.
Comme il n'existe aucun moyen infaillible de déterminer si une partition (surtout chiffrée) contient des données importantes, vous devriez être très prudent sur périphérique brut choisi pour n'importe quelle cible sur lequel vous sélectionnez l'option "mkswap".
Le /etc/cryptmount/cmtab exemple suivant contient cinq cibles, qui utilisent un mélange d'algorithmes de chiffrage et qui rangent leurs systèmes de fichiers de manières differentes. Il y en a aussi un cible qui represent une partition de pagination.
# /etc/cryptmount/cmtab # fichier exemplaire - modifiez avant d'utiliser SVP _DEFAULTS_ { passwdretries=3 # permet 3 essayes de mot de passe par défaut } luks { # partition creé avec cryptsetup-luks dev=/dev/sdb63 dir=/mnt/partition-luks keyformat=luks keyfile=/dev/sdb63 fstype=ext3 } basic { dev=/home/secretiveuser/crypt.fs dir=/home/secretiveuser/crypt # où on va monter loop=auto # trouver un périph loop libre fstype=ext3 mountoptions=default cipher=aes-cbc-plain # chiffrage du système de fichiers keyfile=/home/secretiveuser/crypt.key # utiliser le gestionnaire des clefs intégré keyformat=builtin } partition { dev=/dev/sdb62 # utiliser une partition entière dir=/mnt/crypt62 fstype=ext3 mountoptions=nosuid,noexec cipher=serpent-cbc-plain # info sur le fichier qui contient la clef de déchiffrage: keyfile=/etc/cryptmount/crypt_sdb62.key keyformat=openssl # utiliser OpenSSL pour chiffrage de la clef keyhash=md5 keycipher=bf-cbc # chiffrage du fichier de la clef } subset { dev=/dev/sdb63 startsector=512 numsectors=16384 # utiliser une partie d'une partition dir=/mnt/encrypted\ subset\ of\ sdb fstype=reiserfs mountoptions=defaults cipher=twofish-cbc-plain # chiffrage du système de fichiers # info sur le fichier qui contient la clef de déchiffrage: keyfile=/etc/cryptmount/crypt_sdb63.key keyformat=libgcrypt keyhash=md5 keycipher=blowfish-cbc # chiffrage de la clef d'accès } encswap { # pagination chiffrée dev=/dev/sdb63 startsector=16896 numsectors=1024 # utiliser une partie d'une partition fstype=swap flags=mkswap cipher=twofish-cbc-plain # lire une clef nouvelle de 16-octets de /dev/random chaque fois: keyfile=/dev/random keymaxlen=16 keyformat=raw } # fin de cmtab
La cible 'basic' utilise le fichier ordinaire "/home/secretiveuser/crypt.fs" pour ranger le système de fichiers chiffré. Un périphérique loop sera configuré automatiquement par cryptmount (à cause du "loop=auto").
La cible 'partition' utilise une partition entière du disque dur pour ranger le système de fichiers chiffré. La clef de déchiffrage est contenue dans le répertoire principal de cryptmount.
La cible 'subset' est semblable à la cible 'partition' sauf qu'elle n'utilise pas une partition entière. De cette manière, on peut utiliser des autres groupes de blocs de la partition pour des autres systèmes de fichiers dirigés par cryptmount ou dmsetup.
La cible 'encswap' utilise une partie d'une partition du disque dur pour proviser la pagination chiffrée. Une nouvelle clef de déchiffrage sera lu du /dev/random chaque fois la cible est utilisée.
/etc/cryptmount/cmtab - fichier principal du configuration
cryptmount(8), cryptmount-setup(8), dmsetup(8), openssl(1)
cryptmount est Copyright 2005-2022 RW Penney
et il n'y a point de garantie. Les termes de sa licence sont décrits
dans le fichier "COPYING" dans le paquet source de cryptmount.
RW Penney, 2006-2022, avec beaucoup d'assistance de FP.
2018-01-18 | 6.2.0 |