Suggestion : Undefined index: dark_nature dans le fichier /web/tekniko/linux/kernel/header.php à la ligne 243
Suggestion : Undefined index: dark_nature dans le fichier /web/tekniko/linux/kernel/header.php à la ligne 244
Un coin perdu... : Articles - Monter une webradio avec Icecast et Ices2
Rss Monter une webradio avec Icecast et Ices2
Grâce a l'application ENCFS, vous allez pouvoir chiffrer toutes les donnees que vous voulez ! Le principe est simple, il y a deux repertoires, un en clair et un chiffre, on fait ce que l'on veut dans le clair et des lors qu'on le ferme, toutes ces donnees sont chiffrees et enfermees dans le repertoire chiffre, simple non ??

Les applications necessaire a la realisation de ce projet sont les suivantes :

* Encfs

* Fuse-utils

* Module-assistant



Pour ce billet, j'ai fait mes test avec une Dapper version serveur, le nom de machine est virtual, et l'utilisateur virtual, les dossiers seront les suivant :

* Dossier en clair : libre

* Dossier chiffre : .prison



Commençons par installer ce qu'il faut, a savoir encfs et fuse-utils :

Code BASH :
virtual@virtual-desktop:~$ sudo apt-get install encfs fuse-utils



quelques librairies seront installees en plus de ces deux paquets. Il faut ensuite rajouter le module fuse au fichier modules, qui se trouve dans le repertoire /etc (pour les incultes !), afin que celui ci soit pris en compte au demarrage, deux manieres, soit on edite ce fichier manuellement, soit on le rajoute via une simple ligne de commande, etant feignant a la base, j'opte pour la deuxieme solution !

Code BASH :
virtual@virtual-desktop:~$ sudo sh -c "echo fuse >> /etc/modules"



ceci fait, on charge le module a l'aide de modprobe :

Code BASH :
virtual@virtual-desktop:~$ sudo modprobe fuse



Jusqu'ici tout vas bien, collons nous dans le groupe de fuse, histoire de ne pas être un inconnue a ces yeux !

Code BASH :
virtual@virtual-desktop:~$ sudo adduser virtual fuse



Verifions que c'est bon :

Code BASH :
virtual@virtual-desktop:~$ grep "fuse" "/etc/group"
fuse:x:113:virtual



Pour le 113, cela peut varier, ne vous inquietez pas si ce n'est pas identique !
Bon, on viens de degrossir la base, pour verifier que nous sommes bien connu du groupe fuse, la commande "groups" dans un terminal pourra nous le confirmer. Passons au plus interessant, la creation des repertoires !!!
Je rappel que le repertoire clair se nomme "libre" et que celui qui sera chiffre s' appel ".prison, nous allons utiliser la commande encfs, qui ne necessite pas de privilege root, et qui, demande des chemins complets derriere elle.
creons ces repertoire dans le home :
Code BASH :
 
virtual@virtual-desktop:~$ encfs /home/virtual/.prison /home/virtual/libre



Une foultitude de petites questions s'en suivent, est ce qu'il faut creer ces repertoire qui n'existe pas encore ? oui, choisir une option (ou un mode) moi je le laisse vide pour avoir un mode normal

Code BASH :
virtual@virtual-desktop:~$ encfs /home/virtual/.prison /home/virtual/libre
Le repertoire "/home/virtual/.prison/" n'existe pas. Faut-il le creer ? (y/n) y
Le repertoire "/home/virtual/libre" n'existe pas. Faut-il le creer ? (y/n) y
Creation du nouveau volume encrypte.
Veuillez choisir l'une des options suivantes :
 entrez "x" pour le mode de configuration expert,
 entrez "p" pour le mode paranoïaque preconfigure,
 toute autre entree ou une ligne vide selectionnera le mode normal.
 
 
 
Configuration normale selectionnee.
 
Configuration terminee. Le systeme de fichier a creer a les proprietes suivantes :
Chiffrement de systeme de fichiers "ssl/blowfish", version 2:1:1
Encodage de fichier "nameio/block", version 3:0:1
Taille de cle : 160 bits
Taille de bloc : 512 octets
Chaque fichier contient un en-tête de 8 octets avec des donnees IV uniques.
Noms de fichier encodes a l'aide du mode de chaînage IV.
 


Ensuite, entrer le mot de passe qui permettra de deverrouiller ces repertoires, il peut être different du mot de passe de session, et c'est même mieux, si l'on veut pousser sur la securite !

Vous devez entrer un mot de passe pour votre systeme de fichiers.
Vous devez vous en souvenir, car il n'existe aucun mecanisme de recuperation.
Toutefois, le mot de passe peut être change plus tard a l'aide d'encfsctl.

Code BASH :
Nouveau mot de passe :
Verifier le mot de passe :



On peut verifier que ces repertoires sont bien monter avec un petit "cat" :

Code BASH :
virtual@virtual-desktop:~$ cat /proc/mounts
rootfs / rootfs rw 0 0
none /sys sysfs rw 0 0
none /proc proc rw,nodiratime 0 0
udev /dev tmpfs rw 0 0
/dev/hda1 / ext3 rw,data=ordered 0 0
/dev/hda1 /dev/.static/dev ext3 rw,data=ordered 0 0
tmpfs /var/run tmpfs rw 0 0
tmpfs /var/lock tmpfs rw 0 0
tmpfs /lib/modules/2.6.15-51-386/volatile tmpfs rw 0 0
devpts /dev/pts devpts rw 0 0
tmpfs /dev/shm tmpfs rw 0 0
tmpfs /var/run tmpfs rw 0 0
tmpfs /var/lock tmpfs rw 0 0
encfs /home/virtual/libre fuse rw,nosuid,nodev,user_id=1000,group_id=1000,default_permissions 0 0



Heyyy, que vois-je a la fin ?? pas de soucis, c'est monte !

Bon bah ca y est, il n'y a plus qu'a s'en servir ! Pour cela, il y a deux modes : on et off
En gros, on monte ces repertoire pour y travailler, y placer ces donnees, et on les demonte une fois finit, ce qui vas automatiquement chiffrer les donnees du repertoire libre dans le repertoire .prison. C'est simplement une histoire de mount...ou plutôt de fusermount !
On monte avec encfs et on demonte avec fusermount (fusermount ne sera pas un inconnu pour celles et ceux qui on lu mon billet sur sshfs...).
Pour monter ces repertoire, on vas utiliser la même commande que pour les creer, sauf que cette fois, la commande vas monter et pas creer, c'est simple !
Code BASH :
 
virtual@virtual-desktop:~$ encfs /home/virtual/.prison /home/virtual/libre



Hop, is good, c'est monte....Et non !!! misere que se passe t'il ?? tout alle si bien ! Et pourtant sa me renvoi ça dans la console :

Code BASH :
fusermount: failed to access mountpoint /home/virtual/libre: Permission denied
Erreur de fuse. Problemes courants :
 - module noyau fuse non installe (faites "modprobe fuse")
 - options invalides -- voir le message d'utilisation

en fait, il s'agit du module fuse qui n'est pas vraiment bien charge, c'est la que module-assistant intervient pour corriger cela, installons le et lançons le !

Code BASH :
virtual@virtual-desktop:~$ sudo apt-get install module-assistant


Pour le lancer, il suffit de l'appeler dans la console, ensuite vient un ecran avec toutes une serie de choix, il faut les faire dans l'ordre suivant :
Code BASH :
PREPARE  Configurer le systeme pour compiler des modules
SELECT   Selectionner le module ou le paquet source a traiter
[*] fuse               Filesystem in USErspace
BUILD   Compiler les paquets de modules pour le noyau actif
INSTALL Installer les paquets pour le noyau actif 
EXIT     Quitter le programme


Et voili voilou ! A partir de la, vous pouvez monter vos repertoires avec cette commande :


++Sous Ubuntu 8.04 Hardy, cette operation n'est pas necessaire, relancez seulement la sessions++



Code BASH :
virtual@virtual-desktop:~$ encfs /home/virtual/.prison /home/virtual/libre



Et pour les demonter, comme ceci :

Code BASH :
virtual@virtual-desktop:~$ fusermount -u /home/virtual/libre/



Et c'est a ce moment la que les donnees que vous avez places dans le repertoire libre seront chiffrees dans le repertoire .prison !
Pour ce qui est d'automatiser ça, c'est tres simple, vous pouvez creer deux commandes, le premiere s'appellera decrypt (pour monter et ouvrir les repertoires) et la deuxieme encrypt pour refermer et demonter le tout.
Creons ces commandes, qui se trouverons avec les autres dans le repertoire /usr/bin :

Code :
virtual@virtual-desktop:~$ sudo vi /usr/bin/decrypt



A l'interieur de ce fichier, collez le texte suivant :

Code BASH :
#!/bin/sh
encfs /home/virtual/.prison/ /home/virtual/libre/



Puis la deuxieme :

Code BASH :
virtual@virtual-desktop:~$ sudo vi /usr/bin/encrypt



Même châtiment :

Code BASH :
#!/bin/sh
fusermount -u /home/virtual/libre
 


Donnons les droits qui vont bien a ces commandes :

Code BASH :
virtual@virtual-desktop:~$ sudo chown virtual /usr/bin/decrypt /usr/bin/encrypt
virtual@virtual-desktop:~$ chmod 755 /usr/bin/encrypt /usr/bin/decrypt
 


Voila, maintenant il suffit de taper "decrypt" dans la console pour avoir acces a ces donnees en clair, puis de fermer avec la commande "encrypt".
Je vous laisse imaginer ce que l'on pourrait faire de cette application en milieu professionnel ou certaines donnees doivent rester confidentiel...

ATTENTION : Souvenez vous bien du mot de passe attribue a ces dossier car il n'existe pas de procedure pour les recuperer en cas de perte !

Voici un petit script qui vous permettra de monter/demonter vos donnees tres simplement et de maniere graphique, il vous faudra juste modifier les variables et l'enregistrer dans le dossier /home/utilisateur/.gnome2/nautilus-scripts

Code BASH :
 
#!/bin/bash
# Script de montage de dossier crypte avec encfs et fuse.
# A utiliser avec Nautilus, ou en ligne de commande :
# ./mount_enc ~/dossier_de_montage
 
# Variables a modifier : repertoire contenant les fichiers non cryptes et cryptes
OPENFOLDER=/home/virtual/libre
CRYPTEDFOLDER=/home/virtual/.prison
 
 
gksudo -p -m "Top Secret" | encfs  $CRYPTEDFOLDER $OPENFOLDER 
zenity --info --text="Cliquez sur valider pour demonter"
fusermount -u $OPENFOLDER


Une fois enregistre, pensez a lui donner les droit d'execution (chmod 755), il sera desormais accessible via un clic droit sur le mulot, rien n'empêche même de se creer un lanceur perso.


SOURCES :

* Ce tuto sur Ubuntu-fr, dont je me suis plus que largement inspire...

* Le site Encfs
 
 
Note: Aucune note
(0 note)
Ecrit par: le furtif, Le: 12/10/08