Info16.fr

Le blog de B@rtounet

Gnu/Linux

#Gnu/Linux, Planet Libre

Script: Vérifier si le TRIM est fonctionnel.

Trim
Logo Trim

La commande TRIM, disponible sur la plupart des modèles récents de SSD, permet aux systèmes d'exploitation modernes, tels que les systèmes Linux à partir du noyau 2.6.33 ou le système d'exploitation Microsoft Windows à partir de Windows 7, ainsi que Mac OS X depuis la version 10.6.6 (mais uniquement sur les SSD livrés par Apple8), d'éviter que les performances ne se dégradent avec le temps. Elle sert à notifier le SSD lors de l'effacement d'un fichier. Le contrôleur du SSD peut alors effacer les cellules de mémoire flash anciennement utilisées, afin d'optimiser les écritures ultérieures qui pourront alors être effectuées sans avoir à réaliser l'effacement préalable imposé par la technologie de la mémoire flash.

J'ai été amené à essayer de vérifier si le trim était bien fonctionnelle sur mes install en SSD.

  Le protocole:
C'est simple:

  1. Creer un fichier.
  2. Trouver son adresse bloc.
  3. vérifier qu'il est bien écrit sur le disque.
  4. Le supprimer.
  5. Vérifier qu'il n'existe plus sur le disque.

Sur un SSD avec le trim activé le fichier doit complètement disparaitre.



Le script:


#!/bin/bash
#TRIMTEST
#Antony MARTINEAU 2012

filetemp="/tmp/trimtest.txt"
disk=$(mount | grep -w "/" | egrep "sd|hd" | awk '{print $1}' |awk -F"/dev/" '{print $2}' | cut -c1-3)
mount | grep -w "/" | egrep "sd|hd" | awk '{print $1}' |awk -F"/dev/" '{print $2}' | cut -c1-3
echo trimtest > $filetemp
sync
lba=$(hdparm --fibmap $filetemp | awk '{print $2}' | awk 'END {print}')

if [ ! -z "$lba" ];then
echo "le fichier existe et occupe le bloc $lba"
rm -f $filetemp
sync
lbaend=$(dd if=/dev/$sda skip=$lba count=1 iflag=direct 2> /dev/null)
if [ -z "$lbaend" ];then
echo "*******TRIM OK*******"
else
echo "******NO TRIM*******"
fi

else
echo "Erreur le fichier n'existe pas"
fi
bien sur ce script peut largement être amélioré.
10 septembre 2012 13 commentaires

#Gnu/Linux, Planet Libre

Tests de débits de quelques solutions anonymisantes.

etherpad Tests de débits de quelques solutions anonymisantes.

Je suis tombé recemment sur l'article de Clubic traitant des clés pour préserver son anonymat sur Internet: l'article en  question
Je connaissait déjà ses différentes techniques, mais j'ai eut envie de faire quelques test de débits afin de connaitre ce que nous apportait vraiment ces solutions.

Je le répète, je ne traite pas ici des aspects sécurités, anonymats etc... seulement des débits réseaux.

 TOR LOGO    logo hide my ass     jap logo




J'ai voulu comparer les offres suivantes:
Ce test n'engage que moi et ces résultats doivent être interprété de façon intelligente.

Il est bien évident que les résultats seront différents selon la connexion de l'utilisateur et le réseau qui sépare ce client du fournisseur

Cela donne une idée générale.


Plateforme Materielle :

Comme d'habitude, j'ai monté mon prototype sur ma plateforme de virtualisation:

Dedibox Pro HP
Plateforme logicielle hyperviseur:
  • Dom0 Ubuntu 12.04 X86_64 Xen 4.1
Plateforme Virtuelle:

  • Windows 2003 Server R2SP2 DATACENTER EDITION + driver VMDP
  • 2 vcpus 
  • 512 Mo de Ram
  • HDD 16GB


Protocole de test:

Mon protocole est assez simple.

  • Download d'une distri linux sur http://ftp.free.fr/
  • Mesure du temps d'affichage d'une page Web avec le site Webwait

Pour faire une moyenne de débit, j'utilise Dumeter en mode chrono qui permet de faire des stats assez précises.

Pour être transparent, j'ai fait un screenshot du résultat.

Connexion internet:


Une fois n'est pas coutume, j'ai fait mon test sur une machine virtuelle Windows 2003 serveur sur une Dedibox.
Autrement dit mon débit était excellent...
Même les tests web n'arrive pas à saturer la connexion de la dedibox...

debit dedibox

La connexion relativement performante me permet de faire des tests dans de bonnes conditions.

Nous allons prendre comme référence le FTP de free attaqué en http.
Voici les débits bruts que je relève en direct:

debit dedibox ftp free brut
Un taux de transfert moyen à 269Mbits/s

Pour la mesure de la vitesse de chargement du site j'ai pris comme référence le blog de notre Korben national.
Désolé Monsieur korben pour les quelques tests, qui n''ont pas du faire peur à cloudflare :)
La mesure brute sur la VM sans aucun outils anonymisant:
webwait korben dedibox
Average Load time 1.98s


Proxys présentés par Hide my ass

Hide my ass me présente plusieurs proxys:
Je choisi les plus rapides dans les options de recherches.

Je commence par 2 proxy Français:

  • Download d'une distri linux sur http://ftp.free.fr/
Serveur FR 1 debit free proxy Fr
Débit download moyen de 74Mbits/s

Serveur FR2
débit download free proxy FR
Débit download moyen de 59Mbits/s

webwait korben free proxy fr
Average Load time 7.47s

Tester un serveur en France pour l'anonymat cela n'a pas trop de sens, j'ai aussi testé un proxy au Pays Bas

Débit Free proxy pays bas
Débit download moyen de 4Mbits/s

Webwait Korben pays bas
Average Load time 5.07s


TOR
J'ai utilisé pour mes tests la version de portable de TOR:

Une fois installé et connectés j'obtiens les résultats suivant;
J'ai fait 2 essais

  • ESSAI 1 TOR
location TOR
Je me retrouve en Suède à priori.

débit TOR free
Débit download moyen de 2.47Mbits/s

Webwait Korben TOR
Average Load time 22.80s

  • ESSAI 2 TOR
debit TOR Free

Débit download moyen de 1.14Mbits/s

webwait korben TOR2
Average Load time 29.10s



JAP/Jondo
J'ai voulu aussi tester cette offre qui est certes payantes, mais offre un galop d'essai...

jap location
Pour le coup avec Jap on se retrouve en Ireland

débit JAP Free
Débit download moyen de 3.13Mbits/s

webwait Korben JAP
Average Load time 4.65s
Résumé des mesures:


logo dediboxPerf brutes Proxys (pays bas)
logo hide my ass
TOR LOGO jap logo
Download
269Mb/s 4Mb/s
1.8Mb/s
3.13Mb/s
WebWait
1.98s 5.07s
25.95s
4.65s

Le moins qu'on puisse dire c'est que les performances sont bien moindre en passant par une solution anonymisante.
En particulier TOR
Ceci dit ce n'est pas franchement ce qu'on recherche dans ce genre de solutions.

Si on cherche de la sécurité je pense que TOR est la meilleure solution, mais cela nous coutera bien sur les performances...
Si on cherche juste un petit proxy pour se dépanners les proxys présentés par Hide my ass font leur boulot.
Au vut des résultats on peut même utiliser les proxy FR qui sont assez rapides, histoire juste de brouiller un peu les pistes :)


PS: J'aurais aussi voulu tester Freedom-IP mais je n'ai jamais réussi à faire valider mon inscription..
Ce service propose des VPN gratuits,  en remplissant simplement un questionnaire.
Le seul Hic c'est qu'ils refuses quasi systématiquement...
Je ne pense pas être un pirate, mes intentions sont louables et j'écris relativement français.. mais au bout de 3 tentatives d'inscriptions j'ai abandonné...
C'est à se demander, si ce n'est pas un bot qui refuse les inscriptions en bloc...























14 août 2012 2 commentaires

#Gnu/Linux, Planet Libre

Installer une galerie photo avec affichage des photos en temps réèl

livephoto Galerie photo alimentée en live

  

J'ai eut besoin récemment de prendre des photos d'un evènements.
Certains de mes amis voulaient pouvoir consulter les photos rapidement.

Je me suis dit que cela pourrait être amusant de mette à disposition une galerie photo sur le web qui afficherait les photos quasi intanément.

Plateforme Materielle :

Comme d'habitude, j'ai monté mon prototype sur ma plateforme de virtualisation:

Dedibox Pro HP
Plateforme logicielle hyperviseur:
  • Dom0 Opensuse 12.1 X86_64 Xen 4.1
Plateforme Virtuelle:

  • DomU Xen Ubuntu 10.04 X86_64 Paravirtualisé
  • 2 vcpus 
  • 512 Mo de Ram
  • HDD 16GB

C'est parti

Je me suis gratté la tête un moment.
De quoi j'ai besoin ?

J'ai besoin d'une galerie photo simple, même un script suffirait
D'un appareil photo, relié au web donc un téléhone mobile

Comment relier les 2 ensemble; j'ai tout de suite penser à l'instant upload que propose tous les grans acteurs du cloud ( dropbox, gdrive, hubic etc..)
Je ne voulais pas utiliser ces services, je voulais héberger mes propres données sur mes propres serveurs.

J'ai donc pensé à owncloud qui dispose désormais d'un très bon client sous Android et qui fournie la fameuse option qui m'interesse: L'instant Upload !!

Je récapitule mes bessoins:
  • Une galerie Web
  • Owncloud
  • Un mobile: Mon Samsung Galaxy S2

Tout d'abord pour l'installation d'owncloud je vous renvoi aux différents billets que j'ai put écrire:
http://blog.info16.fr/index.php?article41/remplacer-dropbox-par-une-alternative-libre-owncloud/
http://blog.info16.fr/index.php?article48/owncloud-clients-de-synchronisation

On part du principe que owncloud est installé sur votre serveur et que le client Owncloud est installé sur votre Android

Une fois le client android paramétré et installé j'active l'instant upload sur celui ci

Owncloud Instant Upload

On peut voir très vite que les clichés pris avec le mobile sotn bien envoyés directment sur Owncloud dans le dossier InstantUpload

Owncloud instant upload web


Sur mon install les photos prises par mon Mobile sont stockées dans: /var/www/owncloud/data/bartounet/files/InstantUpload/

root@ubuntults:/# root@ubuntults:/# ll /var/www/owncloud/data/bartounet/files/InstantUpload/
total 43468
drwxr-xr-x 2 www-data www-data 4096 2012-08-08 13:13 ./
drwxr-xr-x 8 www-data www-data 4096 2012-08-08 09:41 ../
-rw-r--r-- 1 www-data www-data 2815291 2012-08-08 09:41 20120808_094121.jpg
-rw-r--r-- 1 www-data www-data 3012655 2012-08-08 10:46 20120808_104554.jpg
-rw-r--r-- 1 www-data www-data 3303283 2012-08-08 10:47 20120808_104615.jpg
-rw-r--r-- 1 www-data www-data 2204189 2012-08-08 10:50 20120808_105008.jpg
-rw-r--r-- 1 www-data www-data 2625123 2012-08-08 10:51 20120808_105122.jpg
-rw-r--r-- 1 www-data www-data 2635097 2012-08-08 10:52 20120808_105144.jpg
-rw-r--r-- 1 www-data www-data 2906027 2012-08-08 10:55 20120808_105445.jpg
-rw-r--r-- 1 www-data www-data 2391864 2012-08-08 10:59 20120808_105922.jpg
-rw-r--r-- 1 www-data www-data 2207213 2012-08-08 11:07 20120808_110724.jpg
-rw-r--r-- 1 www-data www-data 2814811 2012-08-08 12:18 20120808_121745.jpg
-rw-r--r-- 1 www-data www-data 2878956 2012-08-08 12:20 20120808_122005.jpg
-rw-r--r-- 1 www-data www-data 3659326 2012-08-08 12:22 20120808_122126.jpg
-rw-r--r-- 1 www-data www-data 2483827 2012-08-08 12:23 20120808_122311.jpg
-rw-r--r-- 1 www-data www-data 3246023 2012-08-08 12:34 20120808_123405.jpg
-rw-r--r-- 1 www-data www-data 2683656 2012-08-08 12:37 20120808_123717.jpg
-rw-r--r-- 1 www-data www-data 232254 2012-08-08 12:40 20120808_124019.jpg
[...]

Mes clichés sont sur mon serveur Owncloud.
Le challenge maintenant est d'alimenter une galerie avec ces clichés.

Pour le choix de la galerie j'ai opté pour la simplicité:
J'ai choisi une galerie ultra simple : AD Gallery
Vous trouverez les sources ici: http://adgallery.codeplex.com/releases/view/87584

La manip est réalisable avec n'importe quel type de galerie simple ( j'ai voulut eviter les grosse berta comme zenphoto etc..)

Je vais pas m'embeter je vais utiliser le exemple.html inclus dans la galerie.

l'arborescence de la galerie:
C'est simple le dossier exemple contient un dossier images qui contients les photos.
Et dans le dossiers images/thumbs on a bien sur les miniatures.
Le tout est affiché grace à fichier example.html
Dans mon exemple ma galerie est installée dans : /var/www/ftpl/GALLERY
root@ubuntults:/var/www/ftpl/GALLERY# ll
total 24
drwxrwxr-x 4 root root 4096 2012-08-08 14:16 ./
drwxr-xr-x 8 www-data www-data 12288 2012-08-08 10:02 ../
drwxrwxr-x 3 root root 4096 2012-08-08 13:14 example/
drwxrwxr-x 2 root root 4096 2012-08-08 10:03 lib/

root@ubuntults:/var/www/ftpl/GALLERY# ll example/
total 32
drwxrwxr-x 3 root root 4096 2012-08-08 13:14 ./
drwxrwxr-x 4 root root 4096 2012-08-08 14:16 ../
-rw-rw-r-- 1 root root 3896 2012-08-08 13:14 example.html
-rw-r--r-- 1 root root 8517 2012-08-08 12:42 example.html.bak
drwxrwxr-x 3 root root 4096 2012-08-08 13:14 images/
-rw-r--r-- 1 root root 20 2012-08-08 10:59 new

root@ubuntults:/var/www/ftpl/GALLERY# ll example/images/
total 11564
drwxrwxr-x 3 root root 4096 2012-08-08 13:14 ./
drwxrwxr-x 3 root root 4096 2012-08-08 13:14 ../
-rw-r--r-- 1 root root 59412 2012-08-08 12:49 20120808_124938.jpg
-rw-r--r-- 1 root root 58153 2012-08-08 13:00 20120808_130004.jpg
drwxrwxr-x 2 root root 4096 2012-08-08 13:14 thumbs/

root@ubuntults:/var/www/ftpl/GALLERY# ll example/images/thumbs/
total 1324
drwxrwxr-x 2 root root 4096 2012-08-08 13:14 ./
drwxrwxr-x 3 root root 4096 2012-08-08 13:14 ../
-rw-r--r-- 1 root root 59412 2012-08-08 12:49 mini_20120808_124938.jpg
-rw-r--r-- 1 root root 58153 2012-08-08 13:00 mini_20120808_130004.jpg

[...]
C'est le dossier example qui m'interesse:
Le but est de copier les photos de owncloud dans le dossier example/images et de générer une miniature dans example/images/thumbs
Et pour finir ajouter la ligne qui va bien dans le fichier example.html.

En gros je dois:
  • scruter si des fichiers sont copiés dans /var/www/owncloud/data/bartounet/files/InstantUpload/
  • Copier les photos dans /var/www/ftpl/GALLERY/example/images
  • Générer une miniature dans /var/www/ftpl/GALLERY/example/images/thumbs
  • Ajouter une ligne dans example.html pour pointer sur la photo.
Pour scruter quoi de mieux que le couple inotify et Incron:
Je vous renvoi sur cet excellent tuto pour l'installation et l'utilisation de incron: http://www.admin-linux.fr/?p=4840

Pour commencer je fais un petit script bash qui sera appelé par Incron à chaque ajout de fichier dans le dossier /var/www/owncloud/data/bartounet/files/InstantUpload/
Mon script: /root/livegalery
#!/bin/bash
#Temps de sécurité pour upload photos plus ou moins long selon la connectivité ne pas hesiter à mettre plus long pour etre sur de ne pas avoir de photos tronquées...
sleep 10

#Copie de la photo dans la galerie
cp $1 /var/www/ftpl/GALLERY/example/images/

#creation du thumbnail
file=$(echo $1 |awk -F"/" '{print $NF}')
echo $file
/usr/bin/convert -resize 90 $1 /var/www/ftpl/GALLERY/example/images/thumbs/mini_$file

#Ajout du code html dans le fichier index pour ajouter la photo
sed -i "122i\<li> <a href="images/$file"> <img src="images/thumbs/mini_$file" class="image0"> </a> </li>\n" /var/www/ftpl/GALLERY/example/example.html

C'est franchement pas compliqué non ?

  • On attend un certain temps pour etre sur que la photo soit bien uploadé en entier. ( c'est le point faible du script, il faudrait trouver un moyen d'etre sur..)
  • On copie la photo; le $1 sera une variable générée par Incron qui n'est autre que le nom du fichier
  • On convertie la photo en miniature et on l'envoie dans le dossier thums en mettant mini_ devant :)
  • On ajoute la ligne qui va bien dans le fichier html au dessus de la ligne 122

en ce qui concerne le Incron rien de plus simple:

rroot@ubuntults:/var/www/ftpl/GALLERY# incrontab -l

/var/www/owncloud/data/bartounet/files/InstantUpload/ IN_CREATE /root/livegalery $@$#
Si un fichier est crée dans /var/www/owncloud/data/bartounet/files/InstantUpload/ alors lancer le script /root/livegallery avec les argument $@$#
  • $@ : chemin complet du fichier/répertoire surveillé ;
  • $# : nom du fichier/répertoire sur lequel l’événement est intervenu ;
  • $% : nom (textuel) de l’événement intervenu ;
  • $& : numéro de l’événement intervenu.
  • $$ : le caractère dollar (“$”) ;
Voilà on a fini !!!

Mon fichier example.html ressemble à ca:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<link rel="stylesheet" type="text/css" href="../lib/jquery.ad-gallery.css">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript" src="../lib/jquery.ad-gallery.js"></script>
<script type="text/javascript">
$(function() {
$('img.image1').data('ad-desc', 'Whoa! This description is set through elm.data("ad-desc") instead of using the longdesc attribute.<br>And it contains <strong>H</strong>ow <strong>T</strong>o <strong>M</strong>eet <strong>L</strong>adies... <em>What?</em> That aint what HTML stands for? Man...');
$('img.image1').data('ad-title', 'Title through $.data');
$('img.image4').data('ad-desc', 'This image is wider than the wrapper, so it has been scaled down');
$('img.image5').data('ad-desc', 'This image is higher than the wrapper, so it has been scaled down');
var galeries = $('.ad-gallery').adGallery();


$('#switch-effect').change(
function() {
galeries[0].settings.effect = $(this).val();
return false;
}
);
$('#toggle-slideshow').click(
function() {
galeries[0].slideshow.toggle();
return false;
}
);
$('#toggle-description').click(
function() {
if(!galeries[0].settings.description_wrapper) {
galeries[0].settings.description_wrapper = $('#descriptions');
} else {
galeries[0].settings.description_wrapper = false;
}
return false;
}
);
});
</script>

<style type="text/css">
* {
font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Verdana, Arial, sans-serif;
color: #333;
line-height: 140%;
}
select, input, textarea {
font-size: 1em;
}
body {
padding: 30px;
font-size: 70%;
width: 800px;
}
h2 {
margin-top: 1.2em;
margin-bottom: 0;
padding: 0;
border-bottom: 1px dotted #dedede;
}
h3 {
margin-top: 1.2em;
margin-bottom: 0;
padding: 0;
}
.example {
border: 1px solid #CCC;
background: #f2f2f2;
padding: 10px;
}
ul {
list-style-image:url(list-style.gif);
}
pre {
font-family: "Lucida Console", "Courier New", Verdana;
border: 1px solid #CCC;
background: #f2f2f2;
padding: 10px;
}
code {
font-family: "Lucida Console", "Courier New", Verdana;
margin: 0;
padding: 0;
}

#gallery {
padding: 30px;
background: #e1eef5;
}
#descriptions {
position: relative;
height: 50px;
background: #EEE;
margin-top: 10px;
width: 640px;
padding: 10px;
overflow: hidden;
}
#descriptions .ad-image-description {
position: absolute;
}
#descriptions .ad-image-description .ad-description-title {
display: block;
}
</style>
<title>galerie en Live.</title>
</head>
<body>
<div id="container">
<h1>galerie en Live.</h1>
<p>galerie en Live.</p>

<div id="gallery" class="ad-gallery">
<div class="ad-image-wrapper">
</div>
<div class="ad-controls">
</div>
<div class="ad-nav">
<div class="ad-thumbs">
<ul class="ad-thumb-list">
</ul>
<li> <a href=images/20120808_144807.jpg> <img src=images/thumbs/mini_20120808_144807.jpg class=image0> </a> </li>

<li> <a href=images/20120808_144719.jpg> <img src=images/thumbs/mini_20120808_144719.jpg class=image0> </a> </li>

</div>
</div>
</div>

<div id="descriptions">

</div>


</div>
</body>
</html>
[...]

Voilà je prend la photo avec mon GS2, elle est uploadé sur Owncloud et Incron fait le reste...

En image:
Owncloud instantupload

Et la fameuse Galerie 10 secondes plus tard ( ne pas hésiter à mettre plus de temps dans le script ( Pour le test je suis en wifi et mes photos sont en 640*480 pour accelerer le traitement)

Gallerie AD Live


C'est ma foi assez pratique d'envoyer en direct les photos sur une galerie pour que d'autres puissent les consulter rapidement.
La c'est l'idéal car je faisait mes test en Wifi. A l'extérieur, mieux vaut avoir la 3G.. et prendre des photos à résolution assez faible.

Rappel:
  • GPRS (General Packet Radio Service) :  Un débit pratique de 40 kbits/s  pour un débit théorique de 171kbits/s.
    Il utilise les réseaux de téléphonie mobile classiques. C’est le réseau accessible partout,  même dans les régions peu couvertes.
  • EDGE (Enhanced  Data Rates for GSM) :  Un débit pratique de 100 kbits/s  pour un débit théorique de  384 kbits/s.
    Accessible d’un peu partout, la navigation sur internet commence à être possible relativement facilement.
  • UMTS (Universal Mobile Telecommunications System ) ou 3G (Technologie de téléphonie mobile 3° Génération): Avec un débit théorique de 2 Mbits/s , ce réseau a nécessité que les opérateurs en construisent de nouveaux adaptés à cette technologie.
  • HDSPA (High Speed Downlink Packet Access) ou 3G+ : Un débit pratique qui plafonne à 7,2 Mbits/s en se connectant avec une clé usb 3G. Le débit maxi théorique est de 14 Mbits/s.


Pour info si on prend une photo de 2Mo on va la transférer en moyenne en:
  • 7 minutes en GPRS
  • 3 minutes en EDGE
  • 8 secondes en 3G
  • 2 secondes en 3G+



08 août 2012 2 commentaires

#Gnu/Linux, Planet Libre

Gestionnaire de mot de passe Web : Clipperz

etherpad Installation d'un gestionnaire de mot de passe Web : Clipperz
Clipperz Community Edition

clipperz logo  clipperz logo

Depuis un bon petit moment, je galérais avec mes mots de passes...
Quand on a une vie numérique assez active, on a souvent une multitude d'identifiants et on ne sait pas vraiment comment les stocker et les consulter rapidement...

Au départ, je me faisais un fichier sur mon poste local avec tous mes couples identifiants/passwords... mais c'était très peu sécurisé, et très peu pratique, car je devais avoir accès à mon poste pour les consulter...

Après j'ai stocké des fichiers dans ma messagerie zimbra, c'était certes plus pratiques, mais  par forcément plus secure...

Ensuite je croyais avoir trouvé la parade ultime, un fichier crypté avec truecrypt posté dans ma partie private de DropBox... c'était assez sécurisé à mon gout, mais pas forcément pratique d'y acceder de n'importe ou.. puisque qu'il me fallait trucrypt et mon certificat pour pouvoir y accéder...

En cherchant un peu, je suis tombé sur Clipperz, enfin une solution à mon problème.
Cette solution regroupait les fonctionnalités que je recherchais depuis longtemps:

  • Sécurité : Accès en SSL et données cryptées sur les disques.
  • Accessibilité: Accès par une interface Web ! de n'importe ou !
  • Herbergement sur mes serveurs !
Clipperz est un gestionnaire de mots de passe en ligne (accessible depuis un navigateur). Il vous permet, avec un seul mot de passe, d'accéder à toutes les données personnelles que vous aurez mis dans votre "portefeuille").

Il existe une version online de Clipperz, mais tout le monde n'a pas envie de stocker des données confidentielles et sensible sur un serveur qui ne lui appartient pas, quelque soit les garanties proposées... Une édition communautaire de Clipperz vient de voir le jour, elle vous permet de l'installer sur votre serveur. !!!


Plateforme Materielle :

Comme d'habitude, j'ai monté mon prototype sur ma plateforme de virtualisation:

Dedibox Pro HP
Plateforme logicielle hyperviseur:
  • Dom0 Ubuntu 12.04 X86_64 Xen 4.1
Plateforme Virtuelle:

  • DomU Xen Ubuntu 10.04 X86_64 Paravirtualisé
  • 2 vcpus 
  • 512 Mo de Ram
  • HDD 16GB


Installation:

Avant de commencer, il faut quelques prérequis comme avoir un serveur LAMP fonctionnel et correctement configuré.

On récupère Clipperz par git:

root@ubuntults:/#apt-get install git-core
root@ubuntults:/#mkdir /var/www/clipperz
root@ubuntults:/#cd /var/www/clipperz
root@ubuntults:/# git clone https://github.com/clipperz/password-manager.git
Après avoir lu un peu les docs d'install, on comprend vite ce qu'il y a à faire.

root@ubuntults:/#apt-get install python-git
root@ubuntults:/#/var/www/clipperz/password-manager/scripts/build clean install debug --frontends beta --backends php

Une fois les dossiers buildés on va pouvoir modifier les paramètres pour la bdd.
La base de données Mysql clipperz doit être déjà créee ( mysql -p ... create database clipperz;)
root@ubuntults:/#vi /var/www/clipperz/password-manager/target/php/configuration.php


[...]
$configuration['db_encoding'] = 0;
 
// edit the information below to match your database settings
 
$configuration['db']    = 'clipperz';       //  database name
$configuration['host']  = 'localhost'//  database host
$configuration['user']  = 'root';       //  database user
$configuration['pass']  = 'pass';       //  database password
$configuration['port']  = '3306';       //  database port
[...]

On modifie le fichier à sa convenance

Ouvrez un navigateur web avec l’url http://monserver.com/clipperz/setup/index.php pour faire l’installation de la base de données.

On suit les indications à l'écran:

Clipperz install bdd
clipperz install bdd

Clipperz install bdd

clipperz install bdd


La base de données est configurée.

Pour finir, placez le contenu du dossier beta dans le dossier parent et voila, votre installation est prête.
root@ubuntults:/#cp -R /var/www/clipperz/password-manager/beta/* /var/www/clipperz/password-manager/

On peut acceder à notre manager: sur http://monserver.com/clipperz/password-manager  ( ou tout autre url selon les vhosts que vous avez choisis de configurer)


L'interface:

Depuis la page d'acceuil on créer son login/password unique qui sera la seule chose à retenir.
A savoir que la phrase secrète ne sera pas stocké par Clipperz donc ne la perdez pas !!!

clipperz Web
L'interface de Clipperz n'est pas des plus facile, mais elle à le mérite d'être traduite en français.
J'ai vite réussi à créer mes "cartes"
Clipperz a déjà plusieurs modèles de "cartes" pour enregistrer vos identifiants:

clipperz Web

Il ne vous reste plus qu'a renseigner vos différents formulaires.
Clipperz est très pratique, vous pouvez même stocker les url des sites correspondants.

clipperz web
Je n'ai pas encore dévouvert toutes les options de Clipperz, mais cette solution me permet enfin de stocker mes passwords de façon sécurisée et efficace.

PS: Pour info il serait une hérésie, de ne pas protéger votre site Clipperz en SSL !!!! En effet il serait balot qu'avec une simple écoute réseau on puisse connaitre vos identifiants unique de connexion à Clipperz
Donc mettez en place SSL sur votre site  !!!!! ( même un certificat autosigné fera l'affaire)

Selon Philippe Scoffoni:

"Ce logiciel libre est à la base d’un service en ligne de gestion de mot de passe. Clipperz est distribué sous licence AGPL. L’installation est assez simple pour qui maîtrise la plateforme LAMP (Linux Apache. MySQL, PHP). On se retrouve avec une quasi-copie conforme du service en ligne.

Les données sont stockées sur le serveur de façon chiffrée. Ainsi si on venait à vous voler votre base de données il serait très difficile de récupérer vos mots de passe. Autre point indispensable aussi l’utilisation du protocole https ou d’un VPN (Virtual Private Network) pour sécuriser l’accès à vos mots de passe.

Ce que j’ai aimé : la simplicité d’utilisation. Clipperz est particulièrement bien adapté à un usage personnel. Il permet notamment d’automatiser l’authentification sur un site web au travers d’un système de capture du formulaire d’ouverture de session. Ce dernier est alors appelé directement depuis Clipperz.

Ce qui m’a manqué : Il n’est pas possible de créer d’arborescence sous forme de dossier pour classer ces mots de passe. Il n’existe pas de fonction de recherche qui peut-être utile lorsque l’on finit par avoir un grand nombre de mots de passe."


Je vous invite aussi à lire l'excellent billet de Philippe Scoffoni au sujet des gestionnaires de mots de passe:  http://philippe.scoffoni.net/gestion-mots-de-passe-collaboratifs-en-ligne/


06 août 2012 2 commentaires

#Gnu/Linux, Planet Libre

Owncloud clients de synchronisation

owncloud_clients
Clients Owncloud: Windows, Linux, Android



Ces derniers temps est sortie la dernière version d'Owncloud: La version 4.0
J'en ai profité pour réinstaller cette version, qui apporte son lot de corrections mais j'ai surtout chercher l'intégration des différents clients proposé par Owncloud

Je ne parlerai pas des fonctionnalités musiques, images, calendrier.
Je ne parlerai que de la fonction fichiers.


Plateforme de test


  • Dell Optiplex 755
  • Core 2 Duo E6750 @2.66Ghz
  • 4 Go ram
  • Windows XP SP3 Full Update
Je ne détaillerai pas l'installation de Owncloud, ce dont j'ai déjà fait sur mon ancien billet: http://blog.info16.fr/index.php?article41/remplacer-dropbox-par-une-alternative-libre-owncloud/

Client Windows



Le client est diponible ici: http://owncloud.org/sync-clients/

Après une installation ultra simple, il faut configurer le client afin de se connecter au serveur

La configuration est assez simple.

owncloud config server


owncloud install

De base le soft va vous créer un dossier  clientsync censé faire la synchro entre votre poste local et le serveur.

owncloud install

Moi cette configuration ne m'interesse pas vraiment:
Je souhaite simplement un dossier "public" et un dossier "private"
Je supprime donc ce Directory et j'en paramètre 2 autres avec "Add Sync..."

owncloud client add folder
Je crée un dossier public sur mon lecteur E:


owncloud
Et je le synchronise sur le dossier public sur le serveur owncloud

Je fait de même pour le dossier private

owncloud files web sync
Mes 2 directory sont paramétrés

Quelques secondes plus tard, la synchro s'effectue correctement.

On peut voir que le contenu de mon dossier E:\public est le même que le contenu de public sur le serveur.
owncloud compare sync

Après différents tests, la synchro fonctionne très bien. aussi bien dans un sens que dans l'autre.
Un gros avantage sur Dropbox, c'est qu'on peu choisir le dossier à synchroniser et en utiliser plusieurs en même temps :)

Test de débit:

Je ne peux pas m'empecher de faire un petit test de débit entre le client lourd et le serveur Owncloud:

Connexion internet:

  • Fibre 30Mbits/s symétrique

debit fibre DT

Protocole de test:

Mon protocole est assez simple.

  • Upload vers le cloud avec le client Windows
  • Download avec le client Windows

Pour chaque test j'utilise le même fichier de 100Mo (test100.bin: données aléatoires)
Pour faire une moyenne de débit, j'utilise Dumeter en mode chrono qui permet de faire des stats assez précises.

Pour être transparent, j'ai fait un screenshot du résultat à environ 60% du transfert.


  • Upload vers le cloud avec le client Windows
débit upload client owncloud xp
  Taux upload moyen 15.38Mb/s


  • Download depuis le cloud avec le client Windows
owncloud upload xp
  Taux download moyen 22.46Mb/s


Au niveau des débit on est bien au dessus des offres grand public... Dropbox, Hubic, Gdrive...
http://blog.info16.fr/index.php?article45/debits-reseaux-dropbox-vs-hubic-vs-google-drive

Je suis pour l'instant bien satisfait de ce client Windows.

On aurait apprécié un limiteur de débits, afin d'éviter de saturer les connexions.

Par contre j'utilise très peu Windows et beaucoup plus Ubuntu.

Client Gnu/Linux: Ubuntu



J'ai eut aussi envie de tester le client Linux.
Disponible sur le même lien : http://owncloud.org/sync-clients/

Le site indique pour ubuntu 2 choix:
  • Compiler les sources
  • Ajouter un dépot pour installer le client
J'ai choisi de tester le dépot:

For xUbuntu 12.04 run the following as root:

echo 'deb http://download.opensuse.org/repositories/isv:ownCloud:community/xUbuntu_12.04/ /' >> /etc/apt/sources.list
apt-get update
apt-get install owncloud-client

Déjà un truc qui me gène : ce sont les dépendances...

root@antony-linux:/home/antony# apt-get install owncloud-client
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
libcsync-plugin-owncloud libcsync-plugin-sftp libcsync-plugin-smb libcsync0 libopts25 libqt4-core libqt4-designer libqt4-gui libqt4-test ntp
oxygen-icon-theme
Suggested packages:
ntp-doc
The following NEW packages will be installed:
libcsync-plugin-owncloud libcsync-plugin-sftp libcsync-plugin-smb libcsync0 libopts25 libqt4-core libqt4-designer libqt4-gui libqt4-test ntp
owncloud-client oxygen-icon-theme
0 upgraded, 12 newly installed, 0 to remove and 0 not upgraded.
Need to get 21.8 MB of archives.
After this operation, 30.6 MB of additional disk space will be used.
Do you want to continue [Y/n]?
Il demande d'installer toutes les libs QT... moi je suis sous Gnome ca m'embête d'installer ça...

Après installation sur une machine de test, le client est identique en tout point au client Windows.


Gnu/Linux: Ubuntu en Webdav : BUG !!!

Par contre j'ai testé aussi Owncloud en Webdav avec un montage davfs2 sur ubuntu comme d'habitude et j'ai un gros problème...
Tout ce que j'upload via le Webdav passe à 0 Byte après quelques secondes...
Je n'ai pas trouvé de solution pour l'instant..
Et apperement je ne suis pas le seul....
http://bugs.owncloud.org/thebuggenie/owncloud/issues/oc-476
http://bugs.owncloud.org/thebuggenie/owncloud/issues/oc-310

Si quelqun à une solution je suis preneur...
Car Owncloud sans Webdav... c'est pas top
 



Client Android


Depuis la dernière version, le client Android ne m'avais pas séduit, il était tout simplement inutilisable...
Depuis OwnCloud 4 c'est tout autre chose à priori:

Le .apk est disponible ici: http://owncloud.org/support/android/
Je suis d'ailleurs surpris qu'il ne soit pas encore dans le Play store..

Le paramétrage est très facile: on entre l'url du serveur, l'utilisateur et le mot de passe
Il se synchronise et on arrive sur l'interface principale.


android owncloud

On voit bien nos fichiers sur le serveur.

android owncloud

Les différentes options: Upload,create folder, sync ...



Comme les autres clients mobile, Owncloud ne synchronise rien hors ligne
Pour cela il faut choisir l'option ci dessous "Keep File up to date"

owncloud android



Ils ont même intégré Instant Uploading des photos.
( par contre pas de choix entre 3G et wifi)
awncloud android
Et le fin du fin Owncloud est intégré au menu Android "Partager via"
Directement de la galerie vous pouvez envoyer sur owncloud !!

owncloud android


Pour moi le pas en avant est énorme par rapport à ce que j'avais testé...
Le client Android fait quasiment un sans faute.



25 juillet 2012 5 commentaires