Actualiser README.md
This commit is contained in:
parent
df7f51f422
commit
50b5cdfeec
223
README.md
223
README.md
|
|
@ -1,60 +1,209 @@
|
||||||
## EncFS
|
markdown
|
||||||
instalaltion du package
|
Copier
|
||||||
```
|
|
||||||
|
# 🔐 EncFS - Chiffrement de fichiers
|
||||||
|
|
||||||
|
## 📌 Description
|
||||||
|
**EncFS** est un outil de **chiffrement transparente** de fichiers en espace utilisateur (FUSE). Il permet de créer un **système de fichiers chiffré** monté dans un répertoire, accessible comme un dossier normal, mais dont le contenu est **totalement chiffré** sur le disque.
|
||||||
|
|
||||||
|
Ce guide explique comment :
|
||||||
|
- Installer EncFS.
|
||||||
|
- Créer un conteneur chiffré sur un **support amovible** (clé USB, carte SD).
|
||||||
|
- Automatiser le montage/démontage via un script (`coffre`).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🛠 Prérequis
|
||||||
|
Composant | Description |
|
||||||
|
|--------------------|-----------------------------------------------------------------------------|
|
||||||
|
| **Système Linux** | Compatible avec **FUSE** (la plupart des distributions modernes). |
|
||||||
|
| **Droits root** | Nécessaire pour installer des paquets et configurer des scripts système. |
|
||||||
|
| **Support amovible** | Clé USB ou carte SD (formatée ou non). |
|
||||||
|
| **FUSE** | Généralement installé par défaut. Sinon : `sudo apt install fuse`. |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🚀 Installation
|
||||||
|
|
||||||
|
### 1️⃣ Installer EncFS
|
||||||
|
```bash
|
||||||
sudo apt install encfs
|
sudo apt install encfs
|
||||||
```
|
```
|
||||||
Formater un support amavible exemple clef USB ou SD
|
|
||||||
```
|
|
||||||
dd if=/dev/urandom if=/media/xavier/Secure/passphrase.bin bs=16k count=1
|
|
||||||
```
|
|
||||||
Préparation création de répertoire
|
|
||||||
|
|
||||||
dans votre répertorie pero
|
📁 Préparation des répertoires
|
||||||
mkdir decrypted
|
1️⃣ Créer les répertoires
|
||||||
mkdir encrypted
|
Dans votre répertoire personnel, créez :
|
||||||
|
```bash
|
||||||
Création de la liaison entre les 2 répertoire via encfs
|
mkdir ~/encrypted # Répertoire chiffré (stockage des données)
|
||||||
|
mkdir ~/decrypted # Répertoire déchiffré (accès aux données)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
2️⃣ Formater le support amovible (optionnel)
|
||||||
|
Si vous souhaitez stocker la clé de chiffrement (passphrase.bin) sur un support amovible (ex: clé USB ou carte SD) :
|
||||||
|
```bash
|
||||||
|
dd if=/dev/urandom of=/media/xavier/Secure/passphrase.bin bs=16k count=1
|
||||||
|
```
|
||||||
|
|
||||||
|
⚠️ Attention :
|
||||||
|
|
||||||
|
Remplacez /media/xavier/Secure/ par le chemin vers votre support amovible.
|
||||||
|
Cette commande écrase le fichier passphrase.bin s'il existe déjà.
|
||||||
|
|
||||||
|
|
||||||
|
🔒 Création du conteneur EncFS
|
||||||
|
1️⃣ Initialiser le conteneur
|
||||||
|
Exécutez la commande suivante pour lier les répertoires encrypted et decrypted :
|
||||||
|
```bash
|
||||||
encfs ~/encrypted ~/decrypted
|
encfs ~/encrypted ~/decrypted
|
||||||
```
|
```
|
||||||
choisir mode p
|
|
||||||
|
|
||||||
et un pass provisoir
|
2️⃣ Choisir le mode de sécurité
|
||||||
|
|
||||||
aller dans votre media amovible
|
Sélectionnez le mode p (paranoïaque) pour une sécurité maximale.
|
||||||
ex:
|
Définissez un mot de passe temporaire (sera remplacé par passphrase.bin plus tard).
|
||||||
```
|
|
||||||
cd /media/$USER/Usb
|
|
||||||
```
|
|
||||||
|
|
||||||
Pour la génération de passphrase.bin Pour la génération de passphrase.bin
|
🔑 Génération de la passphrase
|
||||||
```
|
1️⃣ Générer passphrase.bin
|
||||||
|
Utilisez ssh-keygen pour créer une clé RSA qui servira de passphrase :
|
||||||
|
```bash
|
||||||
ssh-keygen -t rsa -f passphrase.bin
|
ssh-keygen -t rsa -f passphrase.bin
|
||||||
```
|
```
|
||||||
|
|
||||||
Signature et affectation de passphrase.bin par password de encfs
|
|
||||||
```
|
💡 Où placer passphrase.bin ?
|
||||||
echo -n "Enter current password: " && read -s PASSWORD && (echo $PASSWORD && base64 -w 0 passphrase.bin) | encfsctl autopasswd ~/.encrypted
|
|
||||||
|
Sur un support amovible (recommandé) : /media/$USER/Usb/passphrase.bin.
|
||||||
|
Ou dans un répertoire sécurisé de votre système.
|
||||||
|
|
||||||
|
|
||||||
|
2️⃣ Associer passphrase.bin au conteneur EncFS
|
||||||
|
Exécutez la commande suivante pour lier la passphrase au conteneur :
|
||||||
|
```bash
|
||||||
|
echo -n "Enter current password: " && read -s PASSWORD && (echo \$PASSWORD && base64 -w 0 passphrase.bin) | encfsctl autopasswd ~/.encrypted
|
||||||
```
|
```
|
||||||
|
|
||||||
Puis ouverture via passphrase.bin et non plus le password
|
⚠️ Explications :
|
||||||
```
|
|
||||||
|
read -s PASSWORD : Demande votre mot de passe temporaire (celui défini lors de la création du conteneur).
|
||||||
|
base64 -w 0 passphrase.bin : Encode la passphrase pour une utilisation sécurisée.
|
||||||
|
|
||||||
|
|
||||||
|
3️⃣ Monter le conteneur avec passphrase.bin
|
||||||
|
Désormais, vous pouvez monter le conteneur sans mot de passe :
|
||||||
|
```bash
|
||||||
base64 -w 0 passphrase.bin | encfs -S ~/.encrypted ~/decrypted
|
base64 -w 0 passphrase.bin | encfs -S ~/.encrypted ~/decrypted
|
||||||
```
|
```
|
||||||
et pour démonter
|
|
||||||
```
|
|
||||||
|
4️⃣ Démontage manuel
|
||||||
|
Pour fermer l'accès au conteneur :
|
||||||
|
```bash
|
||||||
fusermount -u ~/decrypted
|
fusermount -u ~/decrypted
|
||||||
```
|
```
|
||||||
|
|
||||||
## Automatisation via script coffre
|
🤖 Automatisation via le script coffre
|
||||||
|
1️⃣ Préparer le script
|
||||||
|
|
||||||
à placer dans /usr/local/sbin
|
|
||||||
nommer coffre
|
|
||||||
|
|
||||||
Il faudra labeliser le media amovible SECURE
|
Créez un fichier nommé coffre dans /usr/local/sbin/ :
|
||||||
contenant passphrase.bin
|
```bash
|
||||||
|
sudo nano /usr/local/sbin/coffre
|
||||||
|
```
|
||||||
|
|
||||||
la synthaxe:
|
|
||||||
|
|
||||||
coffre open
|
Collez le contenu suivant (exemple de script) :
|
||||||
coffre close
|
```bash
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
MOUNT_POINT="\$HOME/decrypted"
|
||||||
|
ENCRYPTED_DIR="\$HOME/encrypted"
|
||||||
|
PASSPHRASE_FILE="/media/\$USER/SECURE/passphrase.bin"
|
||||||
|
|
||||||
|
case "\$1" in
|
||||||
|
open)
|
||||||
|
if [ -f "\$PASSPHRASE_FILE" ]; then
|
||||||
|
base64 -w 0 "\$PASSPHRASE_FILE" | encfs -S "\$ENCRYPTED_DIR" "\$MOUNT_POINT"
|
||||||
|
echo "✅ Coffre ouvert : \$MOUNT_POINT"
|
||||||
|
else
|
||||||
|
echo "❌ Fichier passphrase.bin introuvable sur le support amovible."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
close)
|
||||||
|
fusermount -u "\$MOUNT_POINT"
|
||||||
|
echo "🔒 Coffre fermé."
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Usage: coffre {open|close}"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
```
|
||||||
|
|
||||||
|
Rendez le script exécutable :
|
||||||
|
```bash
|
||||||
|
sudo chmod +x /usr/local/sbin/coffre
|
||||||
|
```
|
||||||
|
|
||||||
|
2️⃣ Labeliser le support amovible
|
||||||
|
|
||||||
|
Insérez votre clé USB ou carte SD.
|
||||||
|
|
||||||
|
|
||||||
|
Vérifiez son label avec :
|
||||||
|
```bash
|
||||||
|
lsblk -o NAME,LABEL,MOUNTPOINT
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
Si nécessaire, labelisez-le en SECURE :
|
||||||
|
```bash
|
||||||
|
sudo e2label /dev/sdX1 SECURE
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
⚠️ Remplacez /dev/sdX1 par le périphérique réel (ex: /dev/sdb1).
|
||||||
|
|
||||||
|
|
||||||
|
Montez le support (si ce n'est pas automatique) :
|
||||||
|
```bash
|
||||||
|
mkdir -p /media/\$USER/SECURE
|
||||||
|
sudo mount LABEL=SECURE /media/\$USER/SECURE
|
||||||
|
```
|
||||||
|
|
||||||
|
3️⃣ Utilisation du script
|
||||||
|
|
||||||
|
|
||||||
|
Commande
|
||||||
|
Action
|
||||||
|
|
||||||
|
coffre open
|
||||||
|
Monte le conteneur chiffré (nécessite que passphrase.bin soit présent sur le support amovible).
|
||||||
|
|
||||||
|
coffre close
|
||||||
|
Démonte le conteneur.
|
||||||
|
|
||||||
|
⚠️ Limitations et Sécurité
|
||||||
|
|
||||||
|
Point à vérifier
|
||||||
|
Description
|
||||||
|
|
||||||
|
Support amovible
|
||||||
|
Le script coffre suppose que le support est monté sur /media/$USER/SECURE/.
|
||||||
|
|
||||||
|
Permissions
|
||||||
|
Assurez-vous que l'utilisateur a les droits pour monter/démonter FUSE.
|
||||||
|
|
||||||
|
Sauvegarde de passphrase.bin
|
||||||
|
Perte = données inaccessibles ! Conservez une copie sécurisée.
|
||||||
|
|
||||||
|
Chiffrement du support
|
||||||
|
Le support contenant passphrase.bin n'est pas chiffré par défaut. Utilisez LUKS pour le sécuriser.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
📜 Licence
|
||||||
|
Ce guide et les scripts associés sont sous licence MIT. Vous êtes libre de les utiliser, modifier et distribuer.
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user