[Kde Neon] Tuto installation avec chiffrage total
par
, 09/06/2020 à 17h13 (1291 Affichages)
*
J’ai cree ce tuto pour mon usage personnel comme aide memoire au cas ou j’aurais a reinstaller linux… la disponibilitee dans un blog est un plus (ca m'a ete souvent utile. par copier coller c'est tres rapide de reinstaller le systeme). si ca peut etre utile a d’autres, c’est tres bien… les utilisateurs avances pourront surement l’adapter a leurs besoins…
note : il n'y a pas d'accents dans ce tuto parce que j'utilise un clavier qwerty...
j'ai installe kde neon avec chiffrage total sur de nombreux ordinateurs sans probleme majeur mais ce tuto ne s'adresse pas a des debutants. il est necessaire d'avoir quelques connaissances de bases. si vous suivez les instructions a la lettre, ca fonctionnera. cela dit, rien n'empeche d'installer le systeme en mode normal, l'installateur de kde neon est tres accessible...
j’ai installe kde neon sur cet ordinateur :
Portable Dell avec i7 4 coeurs (8 threads) carte graphique amd integre 4 go, ssd de 256 go, disque dur 2to, 32 go de memoire…
j’en ai profite pour appliquer le chiffrage total du systeme SSD, meme le /boot est chiffre, une vrai boite noir, impossible d’y acceder sans le mot de passe. a noter que ce sera un probleme insurmentable en cas d'oubli de celui ci, mieux vaut en tenir compte des le depart. c’est totallement securise et etonnamment rapide et reactif malgre le chiffrage…
Note : Le portable utilise est recent et truffe de fonctions de securite avec possibilite de passwords, secure boot et UEFI. pour eviter les problemes, j'ai pratiquement desactive dans le BIOS toutes ces securites. si vous ne le faites pas, il est probable que l'installation echouera. de toute facon, le chiffrage global protegera mieux les donnees que toutes ces fonctions reunis...
Informations : Creation d’un conteneur chiffre LUKS… la creation d’un fichier cle permet a GRUB de l’utiliser automatiquement pour le dechiffrage (affichage du message suivant lors du lancement d’ubuntu : cryptsetup: xxxx-crypt set up successufully. si vous tombez sur initramfs, c'est que ca a foire a ce niveau)…
Le tuto ci-dessous est uniquement adapte a un ordinateur vierge de tous systemes d’exploitations, vous ne devez en aucun cas essayer de l’appliquer sur un autre systeme avec windows ou linux sous peine de perdre toutes vos donnees, certaines commandes utilisees sont extremement dangereuses comme parted par exemple… vous voila prevenu…
Note : je me suis refere a de nombreux tutos sur le net pour rediger ce tuto…
Conseil : S’exercer sur une vm avec vmplayer ou virtualbox…
Important : des tutos existent sur le net pour craquer les conteneurs LUKS par bruteforce, autrement dit en utilisant des dictionnaires de mots et differentes combinaisons... pour compliquer la tache de ces outils et la rendre non rentable (niveau temps) il est conseille d'utiliser un mot de passe long (min 30 caracteres sinon plus) avec lettres et chiffres.
Recommandation : j’utilise les ordinateurs portables en mode fixe derriere un ecran parce que leurs consomations de courant est faible (la machine est pratiquement toujours allume)… dans le cas ou l’ordinateur est utilise en mode nomade, il est recommande d’ajouter une protection dans le bios en activant une demande de mot de passe suplementaire au demarrage pour eviter qu’une personne mal intentionne ne demarre sur un live cd et ne fasse une copie des disques durs (possible meme chiffre), ce qui lui donnera tous le temps necessaire pour essayer de cracker le conteneur LUKS d'ou l'importance d'un mot de passe fort. cela suppose cependant que l’ordinateur est laisse sans surveillance pendant tres longtemps…
Voici le tuto :
— DEBUT —
Tout d’abord, lancer le live kde neon :
Lancez le Terminal…
Note : utilisez fdisk -l pour identifier le device de votre ssd ou disque dur. le mien se situe dans sdb. a modifier si ce n'est pas le cas de votre ordinateur...
Initialisation Disque sdb (SSD de 256 go) :
sudo parted -s /dev/sdb mklabel msdos
sudo parted -s /dev/sdb mkpart primary 2048s 100%
Chiffrement :
sudo cryptsetup -c aes-xts-plain64 -y --hash sha512 --use-random luksFormat /dev/sdb1
Confirmer par YES (majuscule). avant de tapez le mot de passe, je conseille de basculer le clavier en mode Qwerty (en cliquant sur l’icone langue dans la barre de tache) sinon votre mot de passe ne sera pas reconnu au reboot, c’est ce que j’ai fait systematiquement… cela dit, cryptsetup peut accepter plusieurs mot de passe en utilisant la commande cryptsetup luksAddKey (exemple : sudo cryptsetup luksAddKey /dev/sdb1)…
Ouverture du container luks :
sudo cryptsetup luksOpen /dev/sdb1 sdb1-crypt
Creation volume :
sudo pvcreate /dev/mapper/sdb1-crypt
sudo vgcreate vg /dev/mapper/sdb1-crypt
sudo lvcreate -l +100%FREE vg --name root
sudo mkfs.ext4 /dev/vg/root
Verifier :
sudo vgdisplay /dev/vg
On lance l’installateur de kde neon, on selectionne l’option ‘manuel’, on definit vg-root avec le point de montage /… creer un utilisateur avec un autre mot de passe pour la gestion du systeme (attention, doit etre different de celui qui est definit pour le chiffrage), on termine et a la fin il y’aura un message d’erreur en rapport avec grub avec arret... ne pas s’en preoccuper. surtout, ne pas redemarrer. Reactiver le Terminal…
Montage des partitions et CHROOT :
sudo mount /dev/mapper/vg-root /mnt
sudo mount --bind /dev /mnt/dev
sudo mount -t proc /proc /mnt/proc
sudo mount --bind /run /mnt/run
sudo mount -t sysfs /sys /mnt/sys
sudo chroot /mnt /bin/bash
ensuite :
sudo apt update
sudo apt install grub2
Il faut normallement taper le mot de passe de dechiffrement deux fois, avec grub et une fois le systeme lance… on peut eviter cela en creant un fichier cle…
Creation du fichier cle :
dd bs=512 count=4 if=/dev/urandom of=/crypto_keyfile.bin
Ajout du fichier cle a cryptsetup (basculer en Qwerty pour le mot de passe) :
cryptsetup luksAddKey /dev/sdb1 /crypto_keyfile.bin
On securise la cle :
chmod 000 /crypto_keyfile.bin
On securise /boot :
chmod -R g-rwx,o-rwx /boot
On modifie :
nano /etc/initramfs-tools/hooks/crypto_keyfile
Ajouter la ligne :
cp /crypto_keyfile.bin "${DESTDIR}"
enregistrer et fermer.
On securise :
chmod +x /etc/initramfs-tools/hooks/crypto_keyfile
Determiner l’identifiant (UUID) de la partition sur laquelle est installe Ubuntu :
blkid
On fait un copier de ce qu’il y’a entre /dev/sdb1 et TYPE="crypto_LUKS"
Exemple UUID=“xxx-xxx-xxx-xxx”
On lance :
nano /etc/crypttab
taper sdb1-crypt
coller L’UUID sans les guillemets (par exemple UUID=xxx-xxx-xxx-xxx)
ensuite taper /crypto_keyfile.bin luks,keyscript=/bin/cat
cela devrait donner :
sdb1-crypt UUID=xxx-xxx-xxx-xxx /crypto_keyfile.bin luks,keyscript=/bin/cat
enregistrer et fermer.
Lancer :
update-initramfs -u
Modifier GRUB :
nano /etc/default/grub
Par defaut :
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=lsb_release -i -s 2> /dev/null || echo Debian
GRUB_CMDLINE_LINUX_DEFAULT=“quiet splash"
GRUB_CMDLINE_LINUX=”"
Commenter la ligne GRUB_HIDDEN_TIMEOUT=0 (mettre un # en tête de ligne)
Ajouter la commande : GRUB_ENABLE_CRYPTODISK=y
Ajouter la commande : GRUB_CMDLINE_LINUX=“cryptdevice=/dev/sdb1:sdb1-crypt”
Modifie :
GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=lsb_release -i -s 2> /dev/null || echo Debian
GRUB_ENABLE_CRYPTODISK=y
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=“cryptdevice=/dev/sdb1:sdb1-crypt”
enregistrer et fermer.
Installer grub :
grub-mkconfig -o /boot/grub/grub.cfg
grub-install /dev/sdb
A ce niveau j'ai eu un message d'erreur :
Installing for x86_64-efi platform
grub-install: error: cannot find EFI directory
Il semblerait que par defaut, grub-install se refere a target x86_64-efi (a noter que ca fonctionnait sur des ordinateurs moins recents…).
donc en cas d’erreur, il faut plutot taper cette commande :
grub-install --target=i386-pc --recheck /dev/sdb
uniquement valable pour Legacy BIOS. j’ai perso desactive tout ce qui se refere a UEFI dans le bios…
Ensuite :
update-grub
On sort du CHROOT :
exit
Ensuite :
sudo umount -R /mnt
Rebooter le systeme :
sudo reboot
— FIN —
Apres install et reboot, differentes recommandations :
- Activer le firewall. Tapez sudo ufw enable. pour les details, Tapez sudo ufw status verbose.
- Configurer swappiness pour eviter l'utilisation a outrance du swap disque (ce qui risquerait de flinguer le ssd a terme). Tapez sudo nano /etc/sysctl.conf et ajoutez la ligne vm.swappiness = 1 (maj : plutot 1 que 5, ca oblige le systeme a ne recourir au swap qu'en dernier...) et redemarrer. Sinon tapez sudo sysctl vm.swappiness=1 pour l'activer immediatement.
- Accelerer notablement le systeme en utilisant tmpfs. Tapez sudo nano /etc/fstab et ajoutez la ligne tmpfs /tmp tmpfs rw,nosuid,nodev
Ayant 32 go de memoire, je n'ai pas specifie la taille. par defaut la moitie de la memoire sera utilise, soit env 16 go. tout ce qui normallement transite dans tmp sera desormais en memoire (excellent pour augmenter la duree de vie du ssd), ce qui rendra le systeme extremement rapide. en cas de memoire insuffisante, le swap disque sera utilise d'ou son utilite. a noter que ubuntu utilise desormais un swap disque dans un fichier. j'ai augmente sa taille a 16 go sur le ssd. ca devrait etre suffisant.
Conclusion : Le systeme est tres rapide, le lancement de libreoffice par exemple est presque instantane. le chiffrage n'impacte pas beaucoup les performances globales. kde plasma est tres agreable a utiliser. configurable a volonte.
Pour les nouvelles installations de kde neon, quelques programmes indispensables :
sudo apt install mc mpv p7zip-full cherrytree ffmpegthumbs ffmpegthumbnailer smartmontools zstd libguestfs-tools fslint geany
installer lxd : sudo snap install lxd
installer partition manager de kde : sudo pkcon install partitionmanager
installer kcalc : sudo pkcon install kcalc
installer kate : sudo pkcon install kate
Pour plus d'infos sur ces ajouts, google est un excellent moteur de recherche...