Dans le didacticiel d'aujourd'hui, nous allons installer Arch Linux avec un chiffrement complet du disque.
Avant de continuer, je veux que vous sauvegardiez vos données existantes.
Dans le didacticiel précédent, nous avons appris ce que sont dm-crypt et LUKS et comment chiffrer une partition de disque unique. Dans l'article d'aujourd'hui, nous adopterons une approche légèrement différente pour chiffrer l'intégralité du disque avec dm-crypt LUKS et y installer Archlinux.
Commençons par l'effacement du disque. Exécutez lsblk pour trouver votre disque principal et remplacer /dev/sda
si nécessaire :
shred --verbose --random-source=/dev/urandom --iterations=3 /dev/sda
J'ai exécuté la commande ci-dessus avec '--iterations=15' sur mon SSD de 120 Go pendant la nuit et elle s'est terminée au bout de 7 heures.
Une fois cela fait, partitionnez le disque. À moins que votre carte mère n'utilise le micrologiciel UEFI, assurez-vous de sélectionner l'étiquette "dos" (msdos), sinon utilisez le "gpt" lorsque vous tapez :
cfdisk /dev/sda
Après cela, créez la partition du chargeur de démarrage :
New-> Partition Size: 100M -> primary -> Bootable
La dernière sera la partition racine. La taille de la partition doit être automatiquement définie sur votre espace libre restant.
New-> Partition Size: xxxGB -> primary
Écrivez les modifications et quittez cfdisk.
Afin de démarrer votre partition racine chiffrée, la partition du chargeur de démarrage /dev/sda1
qui sera monté dans /boot ne sera pas crypté. Je placerai quelques liens à la fin de cet article qui vous expliqueront comment chiffrer et même déplacer la partition de démarrage sur un CD/DVD/USB.
Créer un périphérique de mappage de périphérique cryptographique en mode de cryptage LUKS :
cryptsetup --verbose --cipher aes-xts-plain64 --key-size 512 --hash sha512 --iter-time 5000 --use-random luksFormat /dev/sda2
Déverrouillez la partition, notez que cryptroot sera le nom du mappeur de périphérique sur lequel nous allons opérer.
cryptsetup open --type luks /dev/sda2 cryptroot
Créez les systèmes de fichiers de démarrage et racine :
mkfs.ext4 /dev/sda1
mkfs.ext4 /dev/mapper/cryptroot
Montez-les :
mount -t ext4 /dev/mapper/cryptroot /mnt
mkdir -p /mnt/boot
mount -t ext4 /dev/sda1 /mnt/boot
Installez les systèmes de base et de développement de base :
pacstrap -i /mnt base base-devel
Générez le fstab :
genfstab -U -p /mnt >> /mnt/etc/fstab
Chroot pour configurer le système de base :
arch-chroot /mnt
Décommentez le en_US paramètres régionaux :
sed -i 's/#en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/g' /etc/locale.gen
Générez les paramètres régionaux :
locale-gen
Créez un fichier de configuration qui indiquera au système quelle langue il doit utiliser :
echo LANG=en_US.UTF-8 > /etc/locale.conf
Exporter les paramètres régionaux
export LANG=en_US.UTF-8
Créez un lien symbolique avec le fuseau horaire souhaité :
ln -s /usr/share/zoneinfo/Europe/Berlin /etc/localtime
Réglez l'horloge matérielle sur UTC :
hwclock --systohc --utc
Définissez le nom d'hôte souhaité :
echo CookieMonster > /etc/hostname
Définissez le mot de passe root :
passwd
Ajouter un utilisateur système :
useradd -m -g users -G wheel,games,power,optical,storage,scanner,lp,audio,video -s /bin/bash username
Définissez le mot de passe de l'utilisateur système :
passwd username
Installez sudo (base-devel) et le chargeur de démarrage grub et os-prober :
pacman -S sudo grub-bios os-prober
Autoriser l'utilisateur système à utiliser sudo et à exécuter des commandes (temporaire) en tant que root :
EDITOR=nano visudo
Appuyez sur CTRL + W et tapez roue, puis décommentez la ligne suivante :
Ajoutez le paramètre de noyau suivant pour pouvoir déverrouiller votre partition racine chiffrée LUKS lors du démarrage du système :
Ajouter chiffrer crochet :
Depuis que nous avons ajouté un nouveau hook dans le fichier de configuration mkinitcpio, nous devrions re-générer notre image initrams (ramdisk) :
mkinitcpio -p linux
Installez grub et enregistrez son fichier de configuration :
grub-install --recheck /dev/sda
grub-mkconfig --output /boot/grub/grub.cfg
Quittez le chroot, démontez les partitions, fermez l'appareil et redémarrez (retirez le support d'installation) :
exit
umount -R /mnt/boot
umount -R /mnt
cryptsetup close cryptroot
systemctl reboot
Une fois que vous avez saisi votre mot de passe et que vous vous êtes connecté en tant qu'utilisateur système, démarrez dhcpcd.
sudo systemctl start dhcpcd
ping -c2 youtube.com
Installez Xorg et copiez .xinitrc sur votre répertoire $HOME :
sudo pacman -S xorg-server xorg-server-utils xorg-xinit mesa xterm xorg-twm xorg-xclock
cp /etc/X11/xinit/xinitrc ~/.xinitrc
Il y a une page wiki spéciale qui contient des informations utiles pour les pilotes GPU, consultez-la https://wiki.archlinux.org/index.php/xorg#Driver_installation et s'il arrive que votre marque GPU soit amd/ati, intel ou nvidia installe les pilotes appropriés qui y sont répertoriés.
Tapez startx
et vous devriez voir deux terminaux côte à côte, tapez maintenant exit
Commentez les lignes suivantes dans .xinitrc et ajoutez-en pour spécifier que nous voulons le xfce environnement de bureau à démarrer après une connexion réussie :
Installez xfce, gestionnaire d'affichage externe et gestionnaire de réseau :
sudo pacman -S slim archlinux-themes-slim xfce4 networkmanager network-manager-applet
Échangez le thème slim par défaut :
Arrêtez dhcpcd, activez slim, activez NetworkManager, startx :
sudo systemctl stop dhcpcd
sudo systemctl enable NetworkManager
sudo systemctl enable slim
startx
C'était tout, j'espère que vous avez apprécié cet article.
Si jamais vous parvenez à foutre en l'air votre système et que vous devez chrooter à partir d'un support amovible, l'ordre est le suivant :
cryptsetup open --type luks /dev/sda2 cryptroot
mount -t ext4 /dev/mapper/cryptroot /mnt
mount -t ext4 /dev/sda1 /mnt/boot
arch-chroot /mnt
Pour les démonter :
umount -R /mnt/boot
umount -R /mnt
cryptsetup close cryptroot
Liens
Les liens promis, lisez bien les 8ème et 9ème liens si vous avez un SSD :
- lien 1
- lien 2
- lien 3
- lien 4
- lien 5
- lien 6
- lien 7
- lien 8
- lien 9
- lien 10