Post

đŸ’» Dell Latitude E6230 - CachyOS EXT4 chiffrĂ© LUKS

đŸ’» Dell Latitude E6230 - CachyOS EXT4 chiffrĂ© LUKS

CachyOS, une distribution Linux relativement nouvelle, vise à offrir des performances élevées et une expérience utilisateur fluide.

CachyOS

CachyOS

Exigences du systĂšme

Avant de commencer avec les prĂ©paratifs d’installation, assurez-vous que l’ordinateur utilisĂ© rĂ©pond aux exigences du systĂšme nĂ©cessaire pour exĂ©cuter CachyOS. L’installateur utilise un processus d’installation en ligne de sorte qu’une connexion Internet stable et relativement rapide est obligatoire.

Caractéristiques minimales recommandées

  • 8 Go RAM
  • 50 Go d’espace de stockage (SSD/NVMe)
  • CPU capable de x86-64-v3
  • 50 Mbps ou une meilleure vitesse Internet
  • NVIDIA GPU (900+ - par exemple: GTX 950), AMD +GCN 1.0 (par exemple: AMD R7 240) ou Intel (sĂ©rie intĂ©grĂ©e HD Graphics ou plus). SĂ©rie Arc)

x86_64 Microarchitecture Level Support

  • x86_64-v3 Compatible CPUs * Intel * Haswell and later generations (e.g., Broadwell, Skylake, Coffee Lake, etc) * AMD * Ryzen Series
  • x86_64-v4 Compatible CPUs * Intel * Knights Landing (Xeon Phi x200), Knights Mill (Xeon Phi x205), Skylake-SP, Skylake-X, Cannon Lake, Cascade Lake, Cooper Lake, Ice Lake, Rocket Lake, Tiger Lake and Sapphire Rapids * AMD * Zen4+ CPUs

Gestionnaires de démarrage proposés

Pour offrir la meilleure expĂ©rience sur une gamme d’appareils, CachyOS propose actuellement les gestionnaires de dĂ©marrage suivants : systemd-boot, rEFInd, GRUB et Limine. Cet article wiki dĂ©crira le jeu de fonctionnalitĂ©s de chaque gestionnaire de dĂ©marrage et inclut Ă©galement nos recommandations pour lors de leur choix. Pour la configuration, veuillez consulter Boot Manager Configuration.

systemd-boot

Une partie de la famille systemd, systemd-boot a Ă©tĂ© créée pour ĂȘtre aussi simple que possible, donc il n’a de soutien que pour les systĂšmes basĂ©s sur l’UEFI. Cette conception simple et efficace garantit sa fiabilitĂ© et sa rapiditĂ©. Cependant, cela se fait au prix de fonctionnalitĂ©s avancĂ©es prises en charge par d’autres gestionnaires de boot.

Pour

  • Configuration trĂšs simple.
  • Les entrĂ©es de dĂ©marrage sont sĂ©parĂ©es en plusieurs fichiers, ce qui facilite la gestion.

Points négatifs

  • Manque de soutien adĂ©quat pour le BIOS/MBR.
  • Les os trĂšs nus conçoivent et manquent de tout type de thĂšme ou de personnalisation.
  • Config n’est pas gĂ©nĂ©rĂ© automatiquement Ă  moins que configurĂ© pour le faire. CachyOS inclut systemd-boot manager pour offrir une configuration gĂ©nĂ©rĂ©e automatiquement.
  • Seulement capable de lire les images de dĂ©marrage sur les systĂšmes de fichiers supportĂ©s par EFI (FAT, FAT16, FAT32).
  • Impossible de trouver des images de dĂ©marrage sur des partitions autres que les siennes.
  • Ne prend pas en charge correctement les retours instantanĂ©s de Btrfs en raison de l’exigence de stocker les images du noyau sur la partition de dĂ©marrage plutĂŽt que le systĂšme de fichiers racine.

Recommandation

Systemd-boot est le gestionnaire de dĂ©marrage recommandĂ© et par dĂ©faut pour CachyOS. Choisissez celui-ci si vous n’ĂȘtes pas sĂ»r.

GRUB

GRUB est le plus ancien gestionnaire de démarrage disponible. Il a un trÚs grand jeu de fonctionnalités, fonctionne sur presque toutes les machines et est le gestionnaire de démarrage Linux le plus couramment utilisé. Voici une liste de ses principaux avantages et inconvénients.

Pour

  • Capable de lire les images de dĂ©marrage de presque tous les systĂšmes de fichiers Linux disponibles.
  • Largement utilisĂ© et trĂšs facile Ă  trouver des informations en ligne.
  • Capable de dĂ©crypter les partitions de dĂ©marrage chiffrĂ©es.
  • Le seul chargeur de dĂ©marrage offert lui permettant de dĂ©marrer des machines BIOS.
  • Ça semble datĂ©. Cependant a un grand soutien thĂ©matique pour compenser.

Points négatifs

  • “Bloated” en raison du besoin de prendre en charge beaucoup plus vieux matĂ©riel et nĂ©cessitant beaucoup de pilotes de systĂšme de fichiers.

Recommandation

  • GRUB est le seul gestionnaire de dĂ©marrage qui supporte le cryptage de partition de dĂ©marrage (DiffĂ©rence par rapport au chiffrement du disque).

SystĂšmes de fichiers

CachyOS offre 5 systĂšmes de fichiers (seulement XFS, BTRFS et EXT4 sont dĂ©taillĂ©s) pour permettre Ă  l’utilisateur de choisir ce qui correspond le mieux Ă  ses besoins. Voici les avantages, les inconvĂ©nients et les recommandations de chaque systĂšme de fichiers. Chaque systĂšme de fichiers est livrĂ© avec ses exigences/utilitĂ©s prĂ©installĂ©es sur CachyOS.

BTRFS est le systĂšme de fichiers par dĂ©faut et recommandĂ© pour CachyOS. Choisissez-le si vous n’ĂȘtes pas sĂ»r.

XFS

XFS est un systÚme de fichiers de revue créé et développé par Silicon Graphics, Inc. Il a été créé en 1993, porté à Linux en 2001, et est maintenant largement pris en charge par la plupart des distributions Linux.

Pour

  • Fast, XFS a Ă©tĂ© initialement conçu avec la vitesse et l’évolutivitĂ© extrĂȘme Ă  l’esprit.
  • Fiable, XFS utilise plusieurs technologies pour prĂ©venir la corruption des donnĂ©es.
  • RĂ©sistant Ă  la fragmentation en raison de son Ă©tendue et de sa stratĂ©gie de rĂ©partition retardĂ©e.

Points négatifs

  • Il ne peut pas ĂȘtre rĂ©duit.

Utilitaire espace utilisateur

Le paquet contenant des outils d’espace utilisateur pour gĂ©rer les systĂšmes de fichiers XFS est xfsprogs.

Recommandation

XFS est le systĂšme de fichiers recommandĂ© pour les utilisateurs qui n’ont pas besoin de fonctionnalitĂ©s avancĂ©es et veulent simplement un systĂšme de fichiers rapide et fiable.

BTRFS

BTRFS est un systÚme de fichiers moderne copy-on-write(COW) créé en 2007 et déclaré stable dans le noyau linux en 2013. Il est largement soutenu et est principalement connu pour son ensemble de fonctionnalités avancées.

Pour

  • Compression transparente. BTRFS prend en charge la compression transparente des fichiers pour permettre des Ă©conomies d’espace importantes sans intervention de l’utilisateur. CachĂ© OS est livrĂ© avec la compression ZSTD rĂ©glĂ©e au niveau 3 par dĂ©faut.
  • FonctionnalitĂ© d’instantanĂ©. BTRFS exploite sa nature COW pour permettre la crĂ©ation d’instantanĂ©s de sous-volumes qui prennent trĂšs peu d’espace rĂ©el.
  • Fonction sous-volume permettant un meilleur contrĂŽle du systĂšme de fichiers.
  • Peut grandir ou rĂ©trĂ©cir.
  • TrĂšs rapide dĂ©veloppement.

Points négatifs

  • Il faut parfois dĂ©fragmenter ou Ă©quilibrer.
  • Pire sur les entraĂźnements de rotation en raison de la fragmentation susmentionnĂ©e.

Utilitaire espace utilisateur

Btrfs userspace utility package est btrfs-progs

Présentation du sous-volume

CachyOS fournit une mise en page en sous-volume de la boĂźte pour permettre une fonctionnalitĂ© d’instantanĂ© facile.

  • Subvol @ = /
  • Subvol @home = /home
  • Subvol @root = /root
  • Subvol @srv = /srv
  • Subvol @cache = /var/cache
  • Subvol @tmp = /var/tmp
  • Subvol @log = /var/log

Recommandation

BTRFS est recommandé pour les utilisateurs qui veulent la fonctionnalité instantané / sauvegarde et la compression transparente.

EXT4

EXT4 (quatriÚme systÚme de fichiers étendu) est le systÚme de fichiers Linux le plus couramment utilisé. EXT4 a été rendu stable dans le noyau linux en 2008.

Pour

  • TrĂšs frĂ©quent permettant un accĂšs facile Ă  de nombreuses ressources.
  • Fiable. EXT4 a fait ses preuves en Ă©tant trĂšs fiable.
  • Peut grandir ou rĂ©trĂ©cir.

Points négatifs

  • Construit sur une ancienne base de code.
  • Manque de nombreuses fonctionnalitĂ©s avancĂ©es que d’autres systĂšmes de fichiers offrent.

Utilitaires d’espace utilisateur

Le paquet à gérer ext4 est e2fsprogs

Recommandation

EXT4 est recommandé pour les utilisateurs qui veulent le systÚme de fichiers le plus simple et le plus utilisé.

Utilisez le systÚme de fichiers par défaut BTRFS car il est considéré stable et a beaucoup de fonctionnalités soignées (snapshots, compression, etc). Utilisez XFS ou EXT4 pour un systÚme de fichiers simple et rapide.

DELL Latitude e6230

Dell Latitude E6230 Portable Dell Latitude E6230 - matériel , documentation et bios

CrĂ©ation d’une ClĂ© USB bootable CachyOS

Le lecteur USB doit avoir au moins 8 Go d’espace disponible.

Interface de ligne de commande (Linux)
Branchez une clé USB.
Détecter le lecteur USB branché en utilisant la commande suivante: lsblk

1
sdc                    8:32   1   7,5G  0 disk  

Copiez le contenu iso sur le lecteur USB branché en exécutant dansun terminal

1
2
3
4
# Remplacer <usbdrive> avec l'étiquette du lecteur.</usbdrive>
# sudo dd bs=4M if=full_iso_name.iso of=/dev/<usbdrive> status=progress oflag=sync
# Dans notre cas
sudo dd bs=4M if=cachyos-desktop-linux-250713.iso of=/dev/sdc status=progress oflag=sync

Boot USB CachyOS

Brancher la clé USB bootable CachyOS sur le portable DELL
Démarrer le portable DELL et appuyer sur F12 pour sélectionner USB EFI
Lancer CachyOS


Basculer en French sur la page Welcome to CachyOS


Lancer l’installateur

Bootloader: systemd-boot


clavier FR

Effacer le disque, EXT4 et chiffrer le systĂšme







Premier démarrage


Saisir la phrase de déchiffrement du disque

Redémarrage

AprÚs le redémarrage, on va paramétrer le portable DELL Latitude e6230

  • DĂ©placement menu en haut de l’écran
  • Activer Wifi Cudy-1568-5G
  • UFW est le parefeu par dĂ©faut

Utilisateur droits sudo

Modifier sudoers pour accùs sudo sans mot de passe à l’utilisateur yano

1
2
su               # mot de passe root identique utilisateur
echo "yano     ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers.d/20-yano

Utilitaire yay

base-devel et git sont installés par défaut

Cloner yay

1
2
3
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

Vérification: yay --version

Supprimer le dossier yay

1
2
cd ..
sudo rm -r yay

Activation SSH avec clés

Portable DELL Latitude e6230

  1. Lancer et activer le service : sudo systemctl enable sshd --now
  2. Relever l’adresse ip de la machine : ip a 192.168.10.90 dans notre cas
  3. Parefeu ouvrir le port 22/tcp : sudo ufw allow ssh

A - Poste appelant

Générer une paire de clé curve25519-sha256 (ECDH avec Curve25519 et SHA2) nommé e6230 pour une liaison SSH avec le portable E6230.

1
ssh-keygen -t ed25519 -o -a 100 -f ~/.ssh/e6230

Envoyer les clés depuis le poste distant

1
ssh-copy-id -i ~/.ssh/e6230.pub yano@192.168.10.90

Se connecter depuis un poste distant ssh yano@192.168.10.90

B - Dell Latitude e6230
Créer fichier configuration ssh sur le dell e6230 pour le port

1
sudo nano /etc/ssh/sshd_config.d/yano.conf
1
2
Port 56230
PasswordAuthentication	no

IL FAUT ACTIVER LE PORT 56230/tcp sur le PAREFEU UFW !

Ajouter le nouveau port

1
sudo ufw allow 56230/tcp

Redémarrer sshd

1
sudo systemctl restart sshd

Se connecter depuis le poste appelant

1
ssh yano@192.168.10.90 -p 56230 -i /home/yann/.ssh/e6230

Effacer le port 22 des rĂšgles UFW

1
ssh yano@192.168.10.90 -p 56230 -i /home/yann/.ssh/e6230

CrĂ©er les dossiers “utilisateur”

Créer les dossiers .keepassx , Notes , scripts statique/images et statique/_posts

1
2
3
4
5
6
7
8
9
mkdir -p ~/{.ssh,.keepassx}
sudo mkdir -p /srv/media/statique/{images,_posts}
sudo chown $USER:$USER -R /srv/media 
mkdir -p /srv/media/Documents/Dossiers-Locaux-Thunderbird
mkdir -p /srv/media/Notes
# Lien media
ln -s /srv/media $HOME/media
# Lien pour affichage des images avec éditeur Retext
sudo ln -s /srv/media/statique/images /images

Souris Bluetooth Pebble

Souris Bluetooth Pebble Mouse 2 M350s
Basculez entre 3 de vos dispositifs d’une simple pression sur le bouton Easy-Switch.
Position 1 pour le portable DELL latitude e6230

Pour effacer une configuration existante de la souris bluetooth , garder enfoncer le bouton Easy-Switch jusqu’au clignotement rapide de la led

Pour ajouter la souris bluetooth au portable DELL, clic droit sur l’icĂŽne bluetooth de la barre des tĂąches, PĂ©riphĂ©riques puis Rechercher et lorsque l’appareil est dĂ©tectĂ© , il faut l’appairer

Ecouteurs Soundcore Liberty Air 2


Soundcore Liberty Air 2

Utiliser le gestionnaire bluetooth et la recherche

Lorsque le pĂ©riphĂ©rique est dĂ©tectĂ©, il faut l’appairer, clic-droit –> Appairer
AprĂšs appairage

Pour que le périphÚrique fonctionne correctement, il est IMPERATIF de redémarrer la machine

AprÚs redémarrage, il faut séléctionner le profil audio

Client Nextcloud

Installation client nextcloud

1
yay -S nextcloud-client 

DĂ©marrer le client nextcloud , aprĂšs avoir renseignĂ© l’url https://cloud.rnmkcy.eu ,login et mot de passe pour la connexion

Trousseau de clé avec mot de passe idem connexion utilisateur

Paramétrage

  • Menu → Lancer Client de synchronisation nextcloud
  • Adresse du serveur : https://cloud.xoyaz.xyz
    Se connecter avec un mot de passe application nextcloud “Synchro DELL e6230”
  • Nom d’utilisateur : yann
  • Mot de passe : xxxxx

    Puis saisir l’adresse : https://cloud.rnmkcy.eu
    Le nagigateur s’ouvre sur l’adresse saisie


  • Sauter les dossiers Ă  synchroniser, Ignorer la configuration des dossiers
  • Trousseau de clĂ©s = mot de passe connexion utilisateur
  • ParamĂštres nextcloud

Ajouter les synchros .ssh et .borg

KeePassXC - Gestion des mots de passe


On utilise une clé matérielle pour déverrouiller la base de mot de passe

La clĂ© matĂ©riel utilisĂ©e pour la connexion doit ĂȘtre insĂ©rĂ©e

Installer le gestionnaire de mot de passe keepassxc

1
yay -S keepassxc

Ouvrir “KeePassXC” –> Affichage
Affichage → Thùme : Sombre
Affichage → Mode compact , un redĂ©marrage de l’application est nĂ©cessaire

Ajouter aux favoris “KeePassXC” et ouvrir l’application

Base de donnĂ©es –> Ouvrir une base de donnĂ©es (afficher les fichiers cachĂ©s) : ~/.keepassx/yannick_xc.kdbx –> Ouvrir

Intégration navigateur

Navigateur LibreWolf

Autoriser l’accùs dans l’application keepassxc

Outils Applications Alias

Installation des outils

1
2
# qrencode zbar android-tools jq , installés par défaut
yay -S figlet tmux retext bluefish terminator filezilla borg yt-dlp xclip nmap tree signal-desktop minicom 

minicom
ParamĂ©trage de l’application terminale

1
 sudo minicom -s

Seul les paramÚtres à modifier sont cités

Configuration du port série

A - Port série : /dev/ttyUSB0
F - ContrÎle de flux matériel : Non

Echap
Enregistrer config. sous dfl

Sortir de Minicom

scrpy émulation android
Utilise adb et le port USB

1
yay -S scrcpy

Les icĂŽnes pour lancer l’application sont gĂ©nĂ©rĂ©s Ă  l’installation

motd

1
sudo nano /etc/motd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 ____       _ _         __  ____  _____  ___                 
|  _ \  ___| | |   ___ / /_|___ \|___ / / _ \                
| | | |/ _ \ | |  / _ \ '_ \ __) | |_ \| | | |               
| |_| |  __/ | | |  __/ (_) / __/ ___) | |_| |               
|____/ \___|_|_|  \___|\___/_____|____/ \___/                
  ____           _            ___  ____                      
 / ___|__ _  ___| |__  _   _ / _ \/ ___|                     
| |   / _` |/ __| '_ \| | | | | | \___ \                     
| |__| (_| | (__| | | | |_| | |_| |___) |                    
 \____\__,_|\___|_| |_|\__, |\___/|____/                     
  ____ _     _  __  __ |___/ __   _    _   _ _  ______ ____  
 / ___| |__ (_)/ _|/ _|_ __ /_/  | |  | | | | |/ / ___|___ \ 
| |   | '_ \| | |_| |_| '__/ _ \ | |  | | | | ' /\___ \ __) |
| |___| | | | |  _|  _| | |  __/ | |__| |_| | . \ ___) / __/ 
 \____|_| |_|_|_| |_| |_|  \___| |_____\___/|_|\_\____/_____|

**Historique de la ligne de commande **
Ajoutez la recherche d’historique de la ligne de commande au terminal
Se connecter en utilisateur
Tapez un dĂ©but de commande prĂ©cĂ©dent, puis utilisez shift + up (flĂšche haut) pour rechercher l’historique filtrĂ© avec le dĂ©but de la commande.

1
2
3
# Global, tout utilisateur
echo '"\e[1;2A": history-search-backward' | sudo tee -a /etc/inputrc
echo '"\e[1;2B": history-search-forward' | sudo tee -a /etc/inputrc

KDE Plasma

Krusader est un gestionnaire de fichiers Ă  double panneau avancĂ© (style commandant) pour KDE Plasma et d’autres bureaux dans le monde *nix, similaire Ă  Midnight ou Total Commander.
yay -S krusader

Kfind - Recherche avancée
yay -S kfind

Alias (.bashrc)
Le fichier avec ses alias

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#
# ~/.bashrc
#

# If not running interactively, don't do anything
[[ $- != *i* ]] && return

alias ls='ls --color=auto'
alias grep='grep --color=auto'
PS1='[\u@\h \W]\$ '

#alias borglist='$HOME/scripts/borglist.sh'
#alias etat='$HOME/scripts/etat_des_lieux_PC1.sh  > /mnt/sharenfs/rnmkcy/site/etat_pc1.txt'
#alias sshm='$HOME/scripts/ssh-manager.sh'
#alias ssl='$HOME/scripts/ssl-cert-check -f $HOME/scripts/ssldomains'alias ipleak='curl https://ipv4.ipleak.net/json/'
alias journal='sudo SYSTEMD_LESS=FRXMK journalctl'
alias nmapl='echo "sudo nmap -T4 -sP 192.168.0.0/24" && sudo nmap -T4 -sP 192.168.0.0/24'
alias nmap10='echo "sudo nmap -T4 -sP 192.168.10.0/24" && sudo nmap -T4 -sP 192.168.10.0/24'
alias orphelin='sudo pacman -Rsn $(pacman -Qdtq)'
alias service='systemctl --type=service'

Réactiver

1
source .bashrc

Déchiffrement par clé matérielle

Le dĂ©verrouillage se fait par saisie d’une phrase mot de passe, on peut ajouter des clĂ©s FIDO2 pour un dĂ©chiffrement sans mot de passe (Using FIDO2 keys to unlock LUKS on EndeavourOS)

Prérequis

Installer librairie libfido2 pour la prise en charge des clés Yubico et SoloKeys

1
sudo pacman -S libfido2

Vérifier que le disque chiffré est /dev/sda2 : lsblk

1
2
3
4
5
NAME                                          MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINTS
sda                                             8:0    0 447,1G  0 disk  
├─sda1                                          8:1    0     1G  0 part  /efi
└─sda2                                          8:2    0 446,1G  0 part  
  └─luks-d603c182-2d04-4a31-bde6-512ac2d18e7b 254:0    0 446,1G  0 crypt /

Vérifier que le chiffrement est luks2 : sudo cryptsetup luksDump /dev/sda2

1
2
3
LUKS header information
Version:       	2
[...]

systemd-cryptenroll
systemd-cryptenroll est un outil permettant d’enregistrer des jetons de sĂ©curitĂ© matĂ©riels et des pĂ©riphĂ©riques dans un volume cryptĂ© LUKS2, qui peuvent ensuite ĂȘtre utilisĂ©s pour dĂ©verrouiller le volume pendant le dĂ©marrage.
systemd-cryptenroll permet d’enregistrer des cartes Ă  puce, des jetons FIDO2 et des puces de sĂ©curitĂ© Trusted Platform Module dans des pĂ©riphĂ©riques LUKS, ainsi que des phrases de passe ordinaires. Ces pĂ©riphĂ©riques sont ensuite dĂ©verrouillĂ©s par systemd-cryptsetup@.service Ă  l’aide des jetons enregistrĂ©s.

Enroler clé USB FIDO2 YubiKey 5 NFC

Vérifier que la YubiKey est insérée dans un port USB

Lister la yubikey

1
sudo systemd-cryptenroll --fido2-device=list
1
2
PATH         MANUFACTURER PRODUCT              
/dev/hidraw4 Yubico       YubiKey OTP+FIDO+CCID

Activer la clé pour le déverrouillage disque chiffré /dev/sda2 Insére la clé dnas un port USB et lancer la commande suivante

1
sudo systemd-cryptenroll --fido2-device=auto /dev/sda2
  1. IL faut déverrouiller la partition /dev/sda2 avec la phrase mot de passe
  2. Puis valider la clĂ© en appuyant sur la partie tactile de cette clĂ© et confirmer pa la mĂȘme opĂ©ration
1
2
3
4
5
6
7
🔐 Please enter current passphrase for disk /dev/sda2: *********************   
Requested to lock with PIN, but FIDO2 device /dev/hidraw4 does not support it, disabling.
Initializing FIDO2 credential on security token.
👆 (Hint: This might require confirmation of user presence on security token.)
Generating secret key on FIDO2 security token.
👆 In order to allow secret key generation, please confirm presence on security token.
New FIDO2 token enrolled as key slot 1.

Le Y de la clĂ© se met Ă  clignoter , il suffit de poser son doigt sur l’emplacement du Y pour le dĂ©verrouillage

Si vous avez plusieurs clĂ©s rĂ©pĂ©ter l’opĂ©ration Activer la clĂ© pour le dĂ©verrouillage disque chiffrĂ© /dev/sda2

systemd-cryptenroll peut lister les keyslots d’un pĂ©riphĂ©rique LUKS, de maniĂšre similaire Ă  cryptsetup luksDump, mais dans un format plus convivial.

1
sudo systemd-cryptenroll /dev/sda2

Résultat pour disque déchiffrable avec une phrase et 3 clés FIDO2

1
2
3
4
5
SLOT TYPE    
   0 password
   1 fido2
   2 fido2
   3 fido2

Détails

  • 0 phrase mot de passe
  • 1 fido2 yubikey “24 554 586”
  • 2 fido2 yubikey “29 085 988”
  • 3 fido2 yubikey “24 554 581”

Prise en charge FIDO2 (crypttab)

Le fichier /etc/crypttab contient la liste des périphériques à déverrouiller automatiquement.
Chaque ligne du fichier crypttab est de la forme :
<target name> <source device> <key file> <options>

  • <target name> : Nom Ă  donner au mappage (/dev/mapper/name), dans le cas prĂ©sent “secret”
  • <source device> : l’identifiant du container luks, sous la forme UUID=
  • <key file> : chemin absolu vers le ficher de phrase de passe. Si le dĂ©verrouillage doit s’effectuer par saisie d’un mot de passe, indiquer “none”
  • <options> : liste d’options sĂ©parĂ©es par des virgules, par exemple luks, discard pour un chiffrage luks et autoriser l’utilisation de la commane fstrim ou discard au niveau du container. L’option keyscript= donne la possibilitĂ© d’exĂ©cuter un script ou une commande avec le chemin vers le fichier de passe de phrase (paramĂštre password prĂ©cĂ©dent) fourni comme argument.

/etc/crypttab avant modification

1
2
# <name>               <device>                         <password> <options>
luks-17xxxxxxxxxxxxxxx7e1 UUID=17xxxxxxxxxxxxxxxxx7e1     none      luks

Modifier /etc/crypttab pour la prise en chrrge FIDO2 en ajoutant - fido2-device=auto

1
sudo nano /etc/crypttab

Les colonnes password et option: none est remplacée par - fido2-device=auto

1
2
3
# <name>                  <device>                 <password> <options>
luks-17xxxxxxxxxxxxxxx7e1 UUID=17xxxxxxxxxxxxxxx7e1    -      fido2-device=auto

Sauvegarder et quitter.

Réinitialiser le noyau

1
sudo mkinitcpio -P

Redémarrer la machine

Nebula + Partage NFS

Nebula

cwwk debian 13
Réseau privé Nebula IP: 10.139.110.2 fda3:4291:71b9:2f0a::2

Partage NFS

Partage du dossier /sharenfs de la machine cwwk IP 10.139.110.2 fda3:4291:71b9:2f0a::2

Le paquet nf-utils est installé par défaut sur les machines de type archlinux, EndeavourOS, CachyOS,

Créer les points de montage

1
2
3
sudo mkdir -p /mnt/sharenfs  
sudo chown $USER:$USER -R /mnt/sharenfs  
ln -s /mnt/sharenfs $HOME/sharenfs

Ajouter le point de montage du serveur nfs cwwk au fichier /etc/fstab

1
2
3
# Le montage NFS cwwk réseau privé nebula 
#10.139.110.2:/sharenfs /mnt/sharenfs nfs4 nofail,x-systemd.automount,x-systemd.device-timeout=10s 0 0
[fda3:4291:71b9:2f0a::2]:/sharenfs /mnt/sharenfs nfs nofail,x-systemd.automount,x-systemd.device-timeout=10s 0 0

Rechargement et montage

1
sudo systemctl daemon-reload && sudo mount -a

Fix systemd ordering cycle with NFS automount, Nebula and local-fs.target

Paramétrage e6230

Lien dossier scripts

1
ln -s /mnt/sharenfs/scripts $HOME/scripts

Les alias dans le fichier .bash_aliases

BorgBackup


Borg - Laptop Dell e6230

Le dossier ~/Private/.borg contient les variables

Résumé des opérations

1 - CrĂ©er un jeu de clĂ©s SSH pour l’authentification borg (en mode su)

1
2
3
4
5
sudo ssh-keygen -t ed25519 -f /root/.ssh/id_borg_ed25519
# ajout clé privée
sudo cat /root/.ssh/id_borg_ed25519 > /home/yano/Private/.borg/e6230.borgssh
# Copier la clé publique
sudo cat /root/.ssh/id_borg_ed25519.pub

2 - Ajouter clé publique /root/.ssh/id_borg_ed25519.pub au fichier authorized_keys de la boßte de stockage (Modifier authorized_keys boßte stockage)

Poste linux PC1

1
2
3
4
5
6
# sur un poste autorisé, on récupÚre fichier des clés autorisées de la box --> storagebox_authorized_keys
echo -e "get .ssh/authorized_keys storagebox_authorized_keys" | sftp -P 23 -i ~/.ssh/bx11-yann-ed25519 u326239@u326239.your-storagebox.de
# ajout clé  publique
echo 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFgvVfk+I9/Qt9ErnkrRLznauR0sHt4Gom8uBLtH06Qa root@e6230' >> storagebox_authorized_keys
# renvoyer le fichier des clés autorisées vers la box
echo -e "put storagebox_authorized_keys .ssh/authorized_keys" | sftp -P 23 -i ~/.ssh/bx11-yann-ed25519 u326239@u326239.your-storagebox.de

3 - Tester la connexion ssh Ă  la boite de stockage en mode su

DELL Latitude e6230

1
sftp -P 23 -i /root/.ssh/id_borg_ed25519 u326239@u326239.your-storagebox.de

4 - Créer le dossier .borg en mode su: sudo -s

1
2
3
4
5
mkdir -p /root/.borg
# phrase dépÎt borg
cat /home/yano/Private/.borg/e6230.passphrase > /root/.borg/e6230.passphrase
# ajout dépÎt
cat /home/yano/Private/.borg/e6230.repository > /root/.borg/e6230.repository

Initialisation dépÎt distant

1
2
3
4
export BORG_PASSPHRASE="$(cat /root/.borg/e6230.passphrase)"
export BORG_RSH='ssh -i /root/.ssh/id_borg_ed25519'
export BORG_REPOSITORY=$(cat /root/.borg/e6230.repository)
borg init --encryption=repokey $BORG_REPOSITORY

Le résultat de la commande

1
2
3
4
5
6
7
8
9
10
11
12
IMPORTANT: you will need both KEY AND PASSPHRASE to access this repo!

Key storage location depends on the mode:
- repokey modes: key is stored in the repository directory.
- keyfile modes: key is stored in the home directory of this user.

For any mode, you should:
1. Export the borg key and store the result at a safe place:
   borg key export           REPOSITORY encrypted-key-backup
   borg key export --paper   REPOSITORY encrypted-key-backup.txt
   borg key export --qr/ REPOSITORY encrypted-key-backup/
2. Write down the borg key passphrase and store it at safe place.

Affichage de messages d'alerte sur les connexions ssh Ă  la box hetzner `u326239.your-storagebox.de`

1
2
3
Remote: ** WARNING: connection is not using a post-quantum key exchange algorithm.
Remote: ** This session may be vulnerable to "store now, decrypt later" attacks.
Remote: ** The server may need to be upgraded. See https://openssh.com/pq.html

Il faut créer, en mode su, un fichier SSH client hetzner-box.conf pour désactiver les messages et relancer le service sshd

1
2
3
4
5
6
# en mode su
echo "Match host u326239.your-storagebox.de
    WarnWeakCrypto no
" > /etc/ssh/ssh_config.d/hetzner-box.conf
# Redémarrer le service SSH
systemctl restart sshd

Le fichier d’exclusion sudo cp /home/yano/Private/.borg/e6230.exclusions /root/.borg/e6230.exclusions

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/proc
/sys
/dev
/srv
/mnt
/cdrom
/tmp
/run
/var/tmp
/var/run
/var/cache
lost+found
/home/yano/.cache
/home/yano/.keepassx
/home/yano/Téléchargements
/home/yano/Musique
/home/yano/Vidéos
/home/yano/media
/home/yano/scripts
/home/yano/sharenfs

Créer le bash /root/.borg/borg-backup.sh et le rendre exécutable chmod +x

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#!/bin/sh
#
# Script de sauvegarde.
#
# Envoie les sauvegardes sur un serveur distant, via le programme Borg.
# Les sauvegardes sont chiffrées
#

flag="/var/tmp/$(basename -- $0).flag"
if [ -e "$flag" ] ;then
echo "flag : $flag"
  if [ "$(date +%F)" == "$(date +%F -r $flag)" ]; then
   # script déjà exécuté 1 fois aujourd'hui, on sort
   echo "script $0 déjà exécuté ce jour($(date +%F))"
   echo "script $0 déjà exécuté ce jour($(date +%F))" | systemd-cat -t sauvegardes -p info
	# Envoi notification
	# DISPLAY=:0 notify-send "$0" "déjà exécuté ce jour\n($flag)" -i /root/.borg/information.png -t 10000
    curl \
    -H "X-Email: ntfy@cinay.eu" \
    -H "Title: DELL e6230 $0" \
    -H "Authorization: Bearer tk_xxxxxxxxxxxxxxxxxxxxxxxx" \
    -H prio:low \
    -H tags:information_source \
    -d "déjà exécuté ce jour ($flag)" \
    https://noti.rnmkcy.eu/yan_infos

   exit 0
  fi

fi

touch $flag

set -e
 
LOG_PATH=/var/log/borg-backup.log
 
export BORG_PASSPHRASE=$(cat /root/.borg/e6230.passphrase)
export BORG_RSH='ssh -i /root/.ssh/id_borg_ed25519'
export BORG_RELOCATED_REPO_ACCESS_IS_OK=yes
BACKUP_DATE=`date +%Y-%m-%d-%Hh%M`
BORG_REPOSITORY=$(cat /root/.borg/e6230.repository)

borg create \
-v --progress --stats \
--exclude-from /root/.borg/e6230.exclusions \
${BORG_REPOSITORY}::${BACKUP_DATE} \
/ \
>> ${LOG_PATH} 2>&1
 
# Nettoyage des anciens backups
# On conserve
# - une archive par jour les 7 derniers jours,
# - une archive par semaine pour les 4 derniĂšres semaines,
# - une archive par mois pour les 6 derniers mois.
 
borg prune \
-v --list --stats --keep-daily=7 --keep-weekly=4 --keep-monthly=6 \
$BORG_REPOSITORY \
>> ${LOG_PATH} 2>&1

    curl \
    -H "X-Email: ntfy@cinay.eu" \
    -H "Title: DELL e6230 $0" \
    -H "Authorization: Bearer tk_xxxxxxxxxxxxxxxxxxxxxxxx" \
    -H prio:low \
    -H tags:information_source \
    -d "Fin sauvegarde borgbackup" \
    https://noti.rnmkcy.eu/yan_infos

Lancer la premiĂšre sauvegarde (en mode su), lancer tmux

1
2
3
4
# exécuter script borgbackup
/root/.borg/borg-backup.sh
# sortie tmux : ctrl+b puis d
# retour tmux : tmux a

Lister les sauvegardes borgbackup /home/yano/borg-e6230.sh

1
2
3
4
5
6
7
8
9
#!/bin/bash

echo "Liste des sauvegardes borgbackup"
export BORG_RSH='ssh -i /home/yano/Private/.borg/e6230.borgssh'
export BORG_PASSPHRASE="$(cat /home/yano/Private/.borg/e6230.passphrase)"
export BORG_RELOCATED_REPO_ACCESS_IS_OK=yes
echo "borg list --short $(cat /home/yano/Private/.borg/e6230.repository)"
echo "Veuillez patitenter quelques instants..."
borg list --short "$(cat /home/yano/Private/.borg/e6230.repository)"

Le rendre exécutable: chmod +x ~/borg-e6230.sh puis exécution ./borg-e6230.sh
Résultat

1
2
3
4
Liste des sauvegardes borgbackup
borg list --short ssh://u326239@u326239.your-storagebox.de:23/./backup/borg/e6230
Veuillez patitenter quelques instants...
2025-07-21-17h11

Exécution script sauvegarde borg au boot aprÚs 3 min /etc/systemd/system/run-script-with-delay.service et /etc/systemd/system/run-script-with-delay.timer
Exécution script au boot aprÚs 3 min

Fichier service systemd pour exécuter un script N minutes aprÚs le démarrage
Nous devons créer un fichier de service systemd unit et un fichier timer systemd unit correspondant pour exécuter le script N minutes aprÚs le démarrage.
Nous pouvons utiliser OnBootSec= ou OnStartupSec= pour exécuter le script avec un délai aprÚs le démarrage sous Linux.

  • OnBootSec= DĂ©finit un dĂ©lai relatif au moment oĂč la machine a Ă©tĂ© dĂ©marrĂ©e. Dans les conteneurs, pour l’instance du gestionnaire de systĂšme, cela correspond Ă  OnStartupSec=, ce qui rend les deux Ă©quivalents.
  • OnStartupSec= DĂ©finit une minuterie relative au moment oĂč le gestionnaire de services a Ă©tĂ© dĂ©marrĂ© pour la premiĂšre fois. Pour les unitĂ©s de temporisation du systĂšme, cela est trĂšs similaire Ă  OnBootSec= car le gestionnaire de services du systĂšme est gĂ©nĂ©ralement dĂ©marrĂ© trĂšs tĂŽt au dĂ©marrage. Il est principalement utile lorsqu’il est configurĂ© dans des unitĂ©s fonctionnant dans le gestionnaire de services par utilisateur, car le gestionnaire de services utilisateur est gĂ©nĂ©ralement dĂ©marrĂ© Ă  la premiĂšre connexion seulement, et pas dĂ©jĂ  au dĂ©marrage.
1
/etc/systemd/system/run-script-with-delay.service
1
2
3
4
5
6
7
[Unit]
Description=Exécuter script au démarrage

[Service]
Type=oneshot
ExecStart=/root/.borg/borg-backup.sh
TimeoutStartSec=0

fichier de temporisation de l’unitĂ© systemd pour exĂ©cuter un script N minutes aprĂšs le dĂ©marrage
timer est un fichier de configuration d’unitĂ© dont le nom se termine par “.timer” encode des informations sur un timer contrĂŽlĂ© et supervisĂ© par systemd, pour une activation basĂ©e sur un timer.

1
/etc/systemd/system/run-script-with-delay.timer
1
2
3
4
5
6
7
8
[Unit]
Description="Exécuter script 3 min aprÚs démarrage"

[Timer]
OnBootSec=3min

[Install]
WantedBy=default.target

RafraĂźchir les fichiers de configuration de systemd

1
sudo systemctl daemon-reload

Activez ensuite le fichier de temporisation de l’unitĂ© systemd afin qu’il soit exĂ©cutĂ© aprĂšs le dĂ©marrage et dĂ©clenche ensuite le fichier de service de l’unitĂ© systemd mappĂ© en fonction de la valeur de la temporisation.

1
sudo systemctl enable run-script-with-delay.timer --now

Status timers: systemctl list-timers

1
2
3
NEXT                           LEFT LAST                               PASSED UNIT                             ACTIVATES                         
[...]
-                                 - Wed 2025-05-14 10:19:55 CEST       2s ago run-script-with-delay.timer      run-script-with-delay.service
Cet article est sous licence CC BY 4.0 par l'auteur.