Dans l'exemple suivant, une clé de chiffrement aes-256-ccm est générée à l'aide de la commande pktool et écrite dans un fichier, /cindykey.file.
# pktool genkey keystore=file outkey=/cindykey.file keytype=aes keylen=256
Le fichier /cindykey.file est ensuite spécifié lorsque le système de fichiers tank/home/cindy est créé.
# zfs create -o encryption=aes-256-ccm -o keysource=raw,file:///cindykey.file tank/home/cindyExemple 5-2 Chiffrement d'un système de fichiers ZFS à l'aide d'un autre algorithme de chiffrement
Vous pouvez créer un pool de stockage ZFS et faire en sorte que tous les systèmes de fichiers du pool de stockage héritent d'un algorithme de chiffrement. Dans l'exemple qui suit, le pool users est créé et le système de fichiers users/home est créé et chiffré à l'aide d'une phrase de passe. L'algorithme de chiffrement par défaut est aes-128-ccm.
Le système de fichiers users/home/mark est ensuite créé et chiffré à l'aide de l'algorithme de chiffrement aes-256-ccm.
# zpool create -O encryption=on users mirror c0t1d0 c1t1d0 mirror c2t1d0 c3t1d0 Enter passphrase for 'users': xxxxxxxx Enter again: xxxxxxxx # zfs create users/home # zfs get encryption users/home NAME PROPERTY VALUE SOURCE users/home encryption on inherited from users # zfs create -o encryption=aes-256-ccm users/home/mark # zfs get encryption users/home/mark NAME PROPERTY VALUE SOURCE users/home/mark encryption aes-256-ccm localExemple 5-3 Clonage d'un système de fichiers ZFS chiffré
Si le système de fichiers clone hérite de la propriété keysource du même système de fichiers que son instantané d'origine, une nouvelle propriété keysource n'est pas nécessaire, et vous n'êtes pas invité à saisir une nouvelle phrase de passe lorsque keysource=passphrase,prompt . La même propriété keysource est utilisée pour le clone. Par exemple :
Par défaut, vous n'êtes pas invité à saisir une clé lors du clonage d'un descendant d'un système de fichiers chiffré.
# zfs create -o encryption=on tank/ws Enter passphrase for 'tank/ws': xxxxxxxx Enter again: xxxxxxxx # zfs create tank/ws/fs1 # zfs snapshot tank/ws/fs1@snap1 # zfs clone tank/ws/fs1@snap1 tank/ws/fs1clone
Si vous souhaitez créer une nouvelle clé pour le système de fichiers clone, utilisez la commande zfs clone–K.
Si vous clonez un système de fichiers chiffré et non un système de fichiers chiffré descendant, vous êtes invité à fournir une nouvelle clé. Par exemple :
# zfs create -o encryption=on tank/ws Enter passphrase for 'tank/ws': xxxxxxxx Enter again: xxxxxxxx # zfs snapshot tank/ws@1 # zfs clone tank/ws@1 tank/ws1clone Enter passphrase for 'tank/ws1clone': xxxxxxxx Enter again: xxxxxxxxExemple 5-4 Envoi et réception d'un système de fichiers ZFS chiffré
Dans l'exemple suivant, l'instantané tank/home/darren@snap1 est créé à partir du système de fichiers chiffré /tank/home/darren. Ensuite, l'instantané est envoyé vers bpool/snaps avec la propriété de chiffrement activée, si bien que les données résultantes reçues sont chiffrées. Toutefois, le flux tank/home/darren@snap1 n'est pas chiffré pendant le processus d'envoi.
# zfs get encryption tank/home/darren NAME PROPERTY VALUE SOURCE tank/home/darren encryption on local # zfs snapshot tank/home/darren@snap1 # zfs get encryption bpool/snaps NAME PROPERTY VALUE SOURCE bpool/snaps encryption on inherited from bpool # zfs send tank/home/darren@snap1 | zfs receive bpool/snaps/darren1012 # zfs get encryption bpool/snaps/darren1012 NAME PROPERTY VALUE SOURCE bpool/snaps/darren1012 encryption on inherited from bpool
Dans ce cas, une nouvelle clé est automatiquement générée pour le système de fichiers chiffré reçu.