« LUKS : Chiffrer sa partition home » : différence entre les versions

De Adadov.net wiki
Aucun résumé des modifications
Aucun résumé des modifications
 
(7 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
{{EnCours|auteur=Adadov}}
{{Auteur|Adadov}}


Afin de sécuriser ses données il est possible de chiffrer les partitions de son système suivant ses propres choix.
Afin de sécuriser ses données il est possible de chiffrer les partitions de son système suivant ses propres choix.
Ligne 34 : Ligne 34 :


== Création du conteneur LUKS ==
== Création du conteneur LUKS ==
Afin de créer un conteneur, il va tout d'abord falloir générer de l'entropie. Pour ce faire, nous allons utiliser /dev/urandom qui est plus rapide que /dev/random.
{{RootLxTerm|text=dd if=/dev/urandom of=/dev/vg/lv_home}}
Il se peut que cette étape soit très longue suivant la taille de la partition, mais elle est nécessaire pour un chiffrement efficace.


Création du conteneur chiffré :
Création du conteneur chiffré :


{{LxTerm|user=root|text=cryptsetup --verbose --hash=sha256 luksFormat /dev/vg/lv_home
{{RootLxTerm|text=cryptsetup --verbose --hash=sha256 luksFormat /dev/vg/lv_home}}
}}
<file>
WARNING!
========
This will overwrite data on /dev/vg/lv_home irrevocably.
 
Are you sure? (Type uppercase yes): YES
Enter passphrase:
Verify passphrase:
Command successful.
</file>
 
On peut vérifier que le conteneur est bien créé :
 
{{RootLxTerm|cryptsetup isLuks /dev/vg/lv_home && echo Success}}


Ouverture du conteneur et création du système de fichiers :
Ouverture du conteneur et création du système de fichiers :


{{LxTerm|user=root|text=cryptsetup luksOpen /dev/vg/lv_home home
{{RootLxTerm|cryptsetup luksOpen /dev/vg/lv_home home
mkfs.ext4 /dev/mapper/home
mkfs.ext4 /dev/mapper/home}}
}}
 
== Mapping du conteneur ==
 
Afin de pouvoir accéder aux données, il faut mettre en place le mapping. Il servira aussi à monter automatiquement la partition en ouvrant le conteneur.
 
=== Ajout de l'entrée dans /etc/crypttab ===
 
Le format de ce fichier est le suivant :
<name> <device> none
 
{{Param|device}} peut contenir l'identifiant du périphérique de la même manière que pour {{fname|/etc/fstab}}, si on souhaite utiliser l'UUID, il peut être obtenu via la commande suivante :
{{RootLxTerm|cryptsetup luksUUID <device>}}
 
Dans notre cas nous allons ajouter la ligne suivante dans le fichier :
<file>
luks-home /dev/vg/lv_home none
</file>
 
Nous aurons donc un device {{fname|/dev/mapper/luks-home}}.


== Structure finale ==  
=== Ajout de l'entrée dans /etc/fstab ===
 
Maintenant que le mapping est fait pour luks nous pouvons mettre en place le montage automatique de la partition, le mot de passe de chiffrement sera demandé au démarrage de la machine.
 
La ligne à ajouter dans le fichier est la suivante :


<file>
<file>
NAME                                            MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
/dev/mapper/luks-home /home  ext4  defaults 1 2
sda                                              8:0    0 149,1G  0 disk 
├─sda1                                            8:1    0  500M  0 part  /boot
└─sda2                                            8:2    0 148,6G  0 part 
  ├─vg-lv_swap                                  253:0    0  5,8G  0 lvm  [SWAP]
  ├─vg-lv_root                                  253:1    0  87,8G  0 lvm  /
  └─vg-lv_home                                  253:2    0    55G  0 lvm 
    └─luks-9a831617-f0bc-4932-9dcd-f7e6c114bfc9 253:3    0    55G 0 crypt /home
sr0                                              11:0    1 1024M 0 rom 
</file>
</file>


== Structure finale ==
Une fois tout en place, la structure de nos partition ressemble à ceci :
<file>
# lsblk --output NAME,LABEL,SIZE,TYPE,MOUNTPOINT
NAME                                            LABEL  SIZE TYPE  MOUNTPOINT
sda                                                  149,1G disk 
├─sda1                                          BOOT    500M part  /boot
└─sda2                                                148,6G part 
  ├─vg-lv_swap                                          5,8G lvm  [SWAP]
  ├─vg-lv_root                                        87,8G lvm  /
  └─vg-lv_home                                          55G lvm 
    └─luks-home                                          55G crypt /home
sr0                                                    1024M rom 
</file>
Nous avons donc un volume logique LVM qui contient un conteneur LUKS.<br />
Ce conteneur est déchiffrable via un mot de passe qui a été choisi lors de sa création (il vaudrait mieux en avoir choisi un costaud).
Pour aller plus loin, se reporter à l'article [[LUKS : Gestion des conteneurs]]
[[Catégorie:LUKS]]
[[Catégorie:LVM]]
[[Catégorie:Workstations]]
[[Catégorie:Workstations]]
[[Catégorie:Linux]]
[[Catégorie:Linux]]

Dernière version du 3 juillet 2015 à 08:26

Ecrit Par : Adadov


Afin de sécuriser ses données il est possible de chiffrer les partitions de son système suivant ses propres choix.

Bien que lors de l'installation cette option soit directement accessible facilement, il se peut que vous changiez d'avis par la suite, alors voilà comment il faudrait s'y prendre.

Préparation[modifier | modifier le wikicode]

On commence par sauvegarder les données vu que toutes les données présentent sur la partition seront détruites lors du chiffrage.

Ensuite nous avons besoin que la structure des partitions qui va accueillir notre conteneur LUKS soit prête.
Voici le volume logique qui contiendra notre conteneur chiffré : <file>

# lvdisplay vg/lv_home
 --- Logical volume ---
 LV Path                /dev/vg/lv_home
 LV Name                lv_home
 VG Name                vg
 LV UUID                ---
 LV Write Access        read/write
 LV Creation host, time , 
 LV Status              available
 # open                 1
 LV Size                55,00 GiB
 Current LE             1760
 Segments               1
 Allocation             inherit
 Read ahead sectors     auto
 - currently set to     256
 Block device           253:2

</file>

Création du conteneur LUKS[modifier | modifier le wikicode]

Afin de créer un conteneur, il va tout d'abord falloir générer de l'entropie. Pour ce faire, nous allons utiliser /dev/urandom qui est plus rapide que /dev/random.

[root@linux] # dd if=/dev/urandom of=/dev/vg/lv_homedblclick to copy

Il se peut que cette étape soit très longue suivant la taille de la partition, mais elle est nécessaire pour un chiffrement efficace.

Création du conteneur chiffré :

[root@linux] # cryptsetup --verbose --hash=sha256 luksFormat /dev/vg/lv_homedblclick to copy

<file> WARNING!

==[modifier | modifier le wikicode]

This will overwrite data on /dev/vg/lv_home irrevocably.

Are you sure? (Type uppercase yes): YES Enter passphrase: Verify passphrase: Command successful. </file>

On peut vérifier que le conteneur est bien créé :

[root@linux] # cryptsetup isLuks /dev/vg/lv_home && echo Successdblclick to copy

Ouverture du conteneur et création du système de fichiers :

[root@linux] # cryptsetup luksOpen /dev/vg/lv_home homedblclick to copy
[root@linux] # mkfs.ext4 /dev/mapper/home

Mapping du conteneur[modifier | modifier le wikicode]

Afin de pouvoir accéder aux données, il faut mettre en place le mapping. Il servira aussi à monter automatiquement la partition en ouvrant le conteneur.

Ajout de l'entrée dans /etc/crypttab[modifier | modifier le wikicode]

Le format de ce fichier est le suivant :

<name> <device> none 

<device> peut contenir l'identifiant du périphérique de la même manière que pour /etc/fstab , si on souhaite utiliser l'UUID, il peut être obtenu via la commande suivante :

[root@linux] # cryptsetup luksUUID <device>dblclick to copy

Dans notre cas nous allons ajouter la ligne suivante dans le fichier : <file> luks-home /dev/vg/lv_home none </file>

Nous aurons donc un device /dev/mapper/luks-home .

Ajout de l'entrée dans /etc/fstab[modifier | modifier le wikicode]

Maintenant que le mapping est fait pour luks nous pouvons mettre en place le montage automatique de la partition, le mot de passe de chiffrement sera demandé au démarrage de la machine.

La ligne à ajouter dans le fichier est la suivante :

<file> /dev/mapper/luks-home /home ext4 defaults 1 2 </file>

Structure finale[modifier | modifier le wikicode]

Une fois tout en place, la structure de nos partition ressemble à ceci :

<file>

# lsblk --output NAME,LABEL,SIZE,TYPE,MOUNTPOINT

NAME LABEL SIZE TYPE MOUNTPOINT sda 149,1G disk ├─sda1 BOOT 500M part /boot └─sda2 148,6G part

 ├─vg-lv_swap                                          5,8G lvm   [SWAP]
 ├─vg-lv_root                                         87,8G lvm   /
 └─vg-lv_home                                           55G lvm   
   └─luks-home                                          55G crypt /home

sr0 1024M rom </file>

Nous avons donc un volume logique LVM qui contient un conteneur LUKS.
Ce conteneur est déchiffrable via un mot de passe qui a été choisi lors de sa création (il vaudrait mieux en avoir choisi un costaud).

Pour aller plus loin, se reporter à l'article LUKS : Gestion des conteneurs