<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Anthony Dahanne&#039;s blog &#187; outils</title>
	<atom:link href="http://blog.dahanne.net/category/outils/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.dahanne.net</link>
	<description>Open Source Software, Java, Android, Continuous Integration</description>
	<lastBuildDate>Fri, 20 Jan 2012 02:32:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Sécuriser son serveur dédié : quelques conseils</title>
		<link>http://blog.dahanne.net/2011/11/19/securiser-son-serveur-dedie-quelques-conseils/</link>
		<comments>http://blog.dahanne.net/2011/11/19/securiser-son-serveur-dedie-quelques-conseils/#comments</comments>
		<pubDate>Sat, 19 Nov 2011 16:03:35 +0000</pubDate>
		<dc:creator>anthony.dahanne</dc:creator>
				<category><![CDATA[apache2]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[outils]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.dahanne.net/?p=571</guid>
		<description><![CDATA[<p>Assomption avant de commencer : Bien entendu, vous êtes à jour des derniers correctifs de sécurité de l&#8217;ensemble de vos services&#8230;</p> <p>En lisant un article faisant référence à un serveur mal sécurisé ; j&#8217;ai été pris de quelques doutes : et si mon serveur dédié était lui aussi mal sécurisé ? Étant développeur et adepte [...]]]></description>
			<content:encoded><![CDATA[<p><em>Assomption avant de commencer</em> : Bien entendu, <strong>vous êtes à jour des derniers correctifs de sécurité de l&#8217;ensemble de vos services&#8230;</strong></p>
<p>En lisant un article <a href="http://reflets.info/doxump-ca-sent-mauvais/">faisant référence à un serveur mal sécurisé</a> ; j&#8217;ai été pris de quelques doutes : et si mon serveur dédié était lui aussi mal sécurisé ?<br />
Étant développeur et adepte de l&#8217;auto hébergement (oui je ne suis pas un grand fan des services hébergés chez les géants du net avec leurs clauses de confidentialité obscures&#8230;) je fais évoluer mon serveur dédié (services qui tournent dessus) au rythme de mes besoins&#8230; ce qui fait que la sécurité passe souvent au second plan&#8230;<br />
Et rien de tel que de jeter un coup d’œil à la sécurisation de ces services de temps en temps&#8230;</p>
<h3>Audit rapide et efficace</h3>
<p>On commence avec nmap, avec les options qui vont bien :</p>
<pre class="bash">sudo nmap -A mon.serveurdedie.fr</pre>
<p>On peut alors commencer à l&#8217;analyse du résultat, et à remédier aux problèmes.</p>
<h3>DNS et Bind</h3>
<p>Dans le rapport obtenu par nmap, si vous voyez :</p>
<pre>| dns-zone-transfer:</pre>
<p>et ensuite la liste de vos sous domaines; méfiance, cela veut dire que quiconque peut lister vos sous domaines; pas forcément une bonne idée si certains d&#8217;entre eux sont là pour des tests ou pour des services non publics&#8230;</p>
<h4>Les solutions</h4>
<pre>Rendez vous dans votre fichier de configuration de bind, /etc/bind/named.conf.options, et ajouter les options suivantes :
 allow-transfer { x.x.x.x; }; --&gt; uniquement donner accès aux informations détaillées des zones à cette IP (votre dns secondaire)
 version "Ma version"; --&gt; pourrait derouter certaines attaques en offuscant la version de Bind; mais comme disent certains, l'obfuscation est rarement une bonne méthode de sécurisation...
 fetch-glue no; --&gt; défendre votre serveur dns aux attaques de type déni de service
 recursion no; --&gt; défendre votre serveur dns aux attaques de type déni de service</pre>
<p>Ces informations sont issues d&#8217;un <a href="http://www.techrepublic.com/article/secure-bind-with-these-tips/5716787">article de TechRepublic</a> , et n&#8217;hésitez pas à vérifier votre configuration avec <a href="http://www.zonecheck.fr/">zonecheck</a></p>
<h3>HTTP et Apache</h3>
<p>Dans le rapport obtenu par nmap, si vous voyez :</p>
<pre>80/tcp  open     http         Apache httpd 2.2.9 ((Debian) DAV/2 SVN/1.5.1 PHP/5.2.6-1+lenny13 with Suhosin-Patch mod_wsgi/2.5 Python/2.5.2)</pre>
<p>Et bien cela signifie que votre serveur est très bavard&#8230;</p>
<h4>La solution</h4>
<p>Sur Ubuntu, dirigez vous vers /etc/apache2/conf.d/security et éditez :</p>
<pre>ServerTokens Prod</pre>
<pre>ServerSignature Off</pre>
<pre>TraceEnable Off</pre>
<p>Si vous utilisez PHP, faites aussi un tour du côté de  /etc/php5/apache2/php.ini</p>
<pre>expose_php = Off</pre>
<p>Encore une fois, l’offuscation n&#8217;est pas une méthode de sécurisation en soit, mais moins les potentiels attaquants en savent, mieux c&#8217;est&#8230;<br />
Ces informations sont issues de <a href="http://www.debianadmin.com/apache-tipshide-apache-information-php-software-version.html">DebianAdmin</a></p>
<h3>SSH et OpenSSH</h3>
<p>Pour l&#8217;instant je ne peux que conseiller de lire cet article : <a href="http://www.cyberciti.biz/tips/linux-unix-bsd-openssh-server-best-practices.html">http://www.cyberciti.biz/tips/linux-unix-bsd-openssh-server-best-practices.html </a></p>
<p>à suivre&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.dahanne.net/2011/11/19/securiser-son-serveur-dedie-quelques-conseils/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>NAS Synology : pour les sauvegardes et pour diffuser les médias</title>
		<link>http://blog.dahanne.net/2011/07/11/nas-synology-pour-les-sauvegardes-et-pour-diffuser-les-medias/</link>
		<comments>http://blog.dahanne.net/2011/07/11/nas-synology-pour-les-sauvegardes-et-pour-diffuser-les-medias/#comments</comments>
		<pubDate>Mon, 11 Jul 2011 23:58:27 +0000</pubDate>
		<dc:creator>anthony.dahanne</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[outils]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.dahanne.net/?p=526</guid>
		<description><![CDATA[<p>Séduit par l&#8217;idée d&#8217;un boîtier pour effectuer mes sauvegardes à faible coût, faible consommation énergétique, faible encombrement, en ligne 24h/24, j&#8217;ai récemment fait l&#8217;acquisition d&#8217;un NAS (Network Attached Storage); et c&#8217;est assez naturellement que je me suis tourné vers Synology, un des (sinon le) incontournables du marché (l&#8217;utilisation de Linux BusyBox et d&#8217;une multitude de [...]]]></description>
			<content:encoded><![CDATA[<p>Séduit par l&#8217;idée d&#8217;un boîtier pour effectuer mes sauvegardes à faible coût, faible consommation énergétique, faible encombrement, en ligne 24h/24, j&#8217;ai récemment fait l&#8217;acquisition d&#8217;un <a href="http://fr.wikipedia.org/wiki/Stockage_en_r%C3%A9seau_NAS">NAS (Network Attached Storage)</a>; et c&#8217;est assez naturellement que je me suis tourné vers <a href="http://www.synology.com/index.php?lang=fre">Synology</a>, un des (sinon le) incontournables du marché (l&#8217;utilisation de Linux BusyBox et d&#8217;une multitude de logiciels libres n&#8217;y est sans doute pas pour rien !); j&#8217;ai opté pour le DS211J, qui dispose de 2 baies à disque SATA; pour l&#8217;instant je n&#8217;y aie inséré qu&#8217;un disque de 1.5 To.</p>
<p>Mon objectif premier est de réaliser des sauvegardes robustes, la cerise sur le gâteau (ou sundae) est le fait de pouvoir consulter mes fichiers multimédias sur mon téléviseur (via une vieille XBOX avec <a href="http://xbmc.org/">XBMC</a> et/ou une PS3)</p>
<h3>Architecture de sauvegarde robuste</h3>
<p>On réalise des sauvegardes, car on ne veut pas perdre des années de photo, de travail sur documents multimédia (montages vidéos) ses documents personnels (impôts, etc..).</p>
<p>La majorité des utilisateurs sauvegarde leurs fichiers vers un disque dur externe, quand ils y pensent&#8230;</p>
<p>Cette approche là est résolument insatisfaisante : il faut automatiser (fréquence) le processus de sauvegarde (donc avoir du matériel toujours disponible pour effectuer la sauvegarde) et aussi diversifier ses lieux de sauvegarde (tout sauvegarder sur des supports qui se trouvent au même endroit que les originaux ouvre la porte à une perte de donnés en cas d&#8217;inondation, incendie, cambriolage, etc&#8230;)</p>
<p>Je vais décrire ici comment utiliser un NAS Synology pour :</p>
<ul>
<li>y sauvegarder ses documents (les machines du réseau local, dans notre cas sous Ubuntu, vont sauvegarder vers le NAS)</li>
<li>synchroniser ces sauvegardes vers une machine distante (le NAS va synchroniser les sauvegardes vers une machine dans un data center)</li>
<li>y sauvegarder des sites internet et boîtes courriels hébergés sur un serveur distant (une machine dans un data center va sauvegarder ses données vers le NAS)</li>
</ul>
<p>Enfin, je décrirai quelques astuces pour profiter de son NAS en serveur multimédia.</p>
<h3>Sauvegarde entre les ordinateurs locaux et le NAS</h3>
<p>Il existe un excellent article qui introduit ce propos <a href="http://forum.synology.com/wiki/index.php/Backup_Linux_desktop_data_using_rsync">sur le wiki de Synology</a>; ceci dit la technique est la même que celle que <a href="http://blog.dahanne.net/2008/02/16/solution-de-sauvegarde-locale-et-distante-avec-rsync/">j&#8217;avais décrit pour des sauvegardes distantes</a>.</p>
<p>Mon objectif est ici de sauvegarder mon home directory (/home/anthony en excluant tous les .*) et rien d&#8217;autre<br />
Voici mes remarques et ajouts :</p>
<ul>
<li>Depuis l&#8217;interface graphique de votre NAS, rendez vous dans Panneau de configuration&gt;Utilisateur, sélectionnez votre utilisateur et appuyez et cocher &laquo;&nbsp;Accueil Utilisateur&nbsp;&raquo; (une traduction sympathique de Home directory :-p) , vous disposez maintenant d&#8217;un répertoire personnel dans /volume1/homes/votre_utilisateur</li>
<li>la première étape est la création d&#8217;une clef (DSA, c&#8217;est important, RSA n&#8217;a pas marché chez moi&#8230;) sans mot de passe; utilisez la série de commande standard suivantes, dans mon cas :</li>
</ul>
<p><code>ssh-keygen -t dsa -b 1024 -f ~/.ssh/diskstation</code></p>
<p>(pas de mot de passe, il serait difficile de gérer des sauvegardes non interactives avec un mot de passe, vérifiez quand même que votre clef .ssh/diskstation est en 600)</p>
<ul>
<li>Maintenant envoyer la clef publique à votre NAS :</li>
</ul>
<p><code>ssh-copy-id -i .ssh/diskstation.pub anthony@diskstation</code></p>
<ul>
<li>Tester la connexion à votre NAS en utilisant la clef : (attention, il est fort possible que votre utilisateur n&#8217;aie pas de shell utilisable par défaut; connectez vous alors via SSH en tant que root (même mot de passe que admin) à votre NAS et éditez /etc/passwd, sur la ligne correspondant à votre utilisateur, remplacez /sbin/login par /bin/ash ; l’interpréteur de commandes par défaut)</li>
</ul>
<p><code>ssh -i .ssh/diskstation diskstation</code></p>
<p>vous devriez arriver, sans mot de passe, dans le répertoire /volume1/homes/votre_utilisateur de votre NAS.</p>
<ul>
<li>rsync pour sauvegarder, la commande est assez simple :</li>
</ul>
<p><code>rsync -avz --delete /home/anthony/ --exclude=.* diskstation:/volume1/homes/anthony/sauvegarde</code></p>
<ul>
<li>sauf que le vrai défi avec les sauvegardes, c&#8217;est qu&#8217;il faut qu&#8217;elles soient automatiques, et lancées périodiquement ! ce bon vieux cron est encore une fois notre ami :</li>
</ul>
<p><code>vim sauvegarde.ssh</code></p>
<p>on y écrit :</p>
<pre class="bash">#!/bin/sh
rsync -avz --delete --exclude=.*  -e "ssh -i /home/anthony/.ssh/diskstation"   /home/anthony/  diskstation:/volume1/homes/anthony/x60s</pre>
<p><code>chmod +x</code></p>
<p>on peut tester :</p>
<p><code> ./sauvegarde.sh</code></p>
<p>et enfin le rajouter à la crontab :</p>
<p><code>sudo vim /etc/crontab</code></p>
<p>et rajouter la ligne (pour lancer la sauvegarde tous les Dimanche à 2h00) :</p>
<pre class="bash"># m h dom mon dow user  command
0 2    * * 7   anthony      /home/anthony/sauvegarde.sh</pre>
<ul>
<li>Répétez cette opération pour tous les postes du réseau local.</li>
</ul>
<p>Tout devrait bien se passer quotidiennement, à surveiller que tout est bien en place quand le disque dur de l&#8217;hôte commence à faire des bruits étranges ou avant de partir en congés&#8230;</p>
<h3>Sauvegarde entre le NAS et un serveur distant</h3>
<p>Le logiciel d&#8217;administration web des NAS Synology, Disk Station Manager (DSM 3.1 au moment où j&#8217;écris) dispose d&#8217;une efficace interface d’administration, qui comporte un volet &laquo;&nbsp;Restaurer et sauvegarder&nbsp;&raquo;; nous pourrions très bien faire comme précédemment pour sauvegarder le NAS vers un serveur distant, mais autant profiter de l&#8217;interface graphique et des notifications de DSM !</p>
<p>Pour commencer, vous devez préparer votre serveur distant à recevoir les sauvegardes, dans mon cas, nous avons un utilisateur backup, avec son répertoire personnel /home/backup</p>
<p>Dans ce même répertoire personnel, nous allons y créer un fichier rsyncd.conf avec le contenu suivant :</p>
<pre class="bash">[diskstation]
comment = diskstation
path = /home/backup/diskstation
use chroot = no
read only = no
list = yes
uid = sauvegarde
gid = sauvegarde
strict modes = yes
ignore errors = no
ignore nonreadable = yes
transfer logging = no
timeout = 600
refuse options = checksum dry-run
dont compress = *.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *.tbz</pre>
<p>Grâce à ce fichier, lorsque votre NAS fera ses sauvegardes, il trouvera la configuration rsync.</p>
<p>Côté client, donc le NAS, dirigez vous vers l&#8217;interface graphique &laquo;&nbsp;Restaurer et sauvegarder&nbsp;&raquo; et créez une nouvelle sauvegarde</p>
<ul>
<li>choisissez sauvegarde réseau (compatible rsync)</li>
<li>sélectionnez toutes les options SAUF l&#8217;avant dernière (réserver les fichiers; si vous la cochez, lorsque vous supprimerez un fichier/répertoire de la source il sera gardé sur le serveur)</li>
<li>choisissez le nom de module rsync que vous avez configuré sur votre serveur distant (dans notre cas diskstation) et saisissez l&#8217;utilisateur (dans notre cas backup) ainsi que son mot de passe</li>
<li>Testez la connexion, paramétrez la fréquence</li>
</ul>
<p>Et c&#8217;est fini !</p>
<h3>Sauvegarde entre un serveur distant et le NAS</h3>
<p>Dans ce cas ci, vous devez au préalable avoir un moyen d&#8217;identifier sur internet votre nas, par exemple, DSM vient avec un client DynDNS.</p>
<p>Dans la suite du paragraphe j&#8217;assume que vous avez un nom d&#8217;hôte fixe (ou une IP fixe) pour votre NAS, et que vous pouvez y accéder par internet (pour ceci vous devrez configurer aussi les bons port forwarding [seul ssh nous intéresse dans le cas présent] depuis votre routeur ou &laquo;&nbsp;box&nbsp;&raquo;)</p>
<p>Pour le reste, c&#8217;est la même chose que ce que j&#8217;ai décrit au chapitre &laquo;&nbsp;Sauvegarde entre les ordinateurs locaux et le NAS&nbsp;&raquo; &#8230;</p>
<p>La particularité que vous pourrez rencontrer, au cas où vous sauvegarder des répertoires qui appartiennent à plusieurs utilisateurs sur le serveur distant à sauvegarder vers le NAS, est de travailler avec l&#8217;utilisateur root : c&#8217;est le seul utilisateur à pouvoir accéder à tous le système de fichiers.</p>
<p>Donc</p>
<ul>
<li>côté NAS, créez un utilisateur backup, donnez lui un répertoire personnel et l&#8217;accès via SSH;</li>
<li>côté serveur distant à sauvegarder, créez un couple de clefs pour se connecter sans mot de passe au NAS, en tant que utilisateur backup, créez un script sauvegarde.sh, qui vous rentrerez dans la crontab, à lancer par root (il pourra donc travailler sur tout le système de fichiers)</li>
</ul>
<p>procéder de cette manière vous permet de pouvoir sauvegarder tout le système de fichiers, sans jamais compromettre l&#8217;utilisateur root (pas de connexion en tant que root, ni par SSH ni par sudo, etc&#8230;)</p>
<p>&nbsp;</p>
<h3>Astuces pour la performance de votre NAS Synology</h3>
<p>Si vous avez beaucoup de photos dans le partage &laquo;&nbsp;photo&nbsp;&raquo;, vous risquez de voir un process appelé &laquo;&nbsp;convert&nbsp;&raquo; (en fait c&#8217;est imagemagick) prendre tout la mémoire vive et une bonne partie du CPU de votre Synology.</p>
<p>Ce process est lancé par le démon suivant :</p>
<p><code>/usr/syno/etc/rc.d/S77synomkthumbd.sh</code></p>
<p>donc il vous suffit, une fois connecté par ssh en root (même mot de passe que admin une fois que l&#8217;accès ssh est configuré) de lancer :</p>
<p><code>/usr/syno/etc/rc.d/S77synomkthumbd.sh stop</code></p>
<p>Si vous voulez définitivement arrêter ce service, éditez le avec vim et rajouter exit à la 2ème ligne (<a href="http://forum.synology.com/wiki/index.php/How_to_disable_the_Synology_Multimedia_Indexing_Engine">cette astuce est publiée dans le wiki de synology</a>; attention à ne pas comme eux désactiver postgresql, toutes les applications multimédia : photo, son, video, téléchargements nécessitent cette base de donnée); attention quand vous remettrez votre NAS à jour, il faudra ré effectuer l&#8217;opération (sigh!)</p>
<p>&nbsp;</p>
<h3>Diffuser des fichiers vidéos hébergés par le NAS Synology</h3>
<p>Le plus simple, si vous disposez d&#8217;un lecteur branché à la TV qui peut naviguer sur des partages Samba/CIFS (comme la vieille XBOX avec XBMC), c&#8217;est alors de configurer un dossier partagé (par défaut, un dossier partagé est un partage SMB/CIFS) contenant vos vidéos.</p>
<p>Si vous utilisez une PS3, l&#8217;approche est différente, il faut utiliser le partage médias par DLNA (car la PS3 ne peut pas monter un partage SMB/CIFS)</p>
<p>Si vous configurez votre NAS comme étant un serveur DLNA, il vous suffit d&#8217;avoir vos videos dans le partage video pour que la PS3 puisse les lire&#8230;enfin çà va bien pour les formats (container, codes audio et video) que la PS3 reconnaît nativement&#8230;</p>
<p>Pour les autres formats de video, comme par exemple container MKV encapsulant du h264, votre PS3 vous dira &laquo;&nbsp;format de fichier non compatible&nbsp;&raquo;.</p>
<p>Deux options se présentent à vous :</p>
<ul>
<li>votre PS3 utilise un firmware &laquo;&nbsp;non officiel&nbsp;&raquo;comme le CFW 3.55 kmeaw, dans ce cas vous pouvez installer le logiciel de lecture<a href="https://www.lonelycoder.com/hts/showtime_overview.html"> Showtime sur votre PS3</a>, qui non seulement lit les partages DLNA, mais est capable aussi d&#8217;ouvrir à peu près tous les containeurs vidéo et recense un bon nombre de codecs..(il repose sur libav)</li>
<li>Une autre approche, est de convertir à la volée vos fichiers vidéos dans un format que la PS3 peut ouvrir, le logiciel <a href="http://forum.synology.com/enu/viewtopic.php?f=37&amp;t=13014">PS3 Media Player semble pouvoir être installable sur un NAS Synology</a>, ceci dit je n&#8217;ai pas essayé&#8230;</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.dahanne.net/2011/07/11/nas-synology-pour-les-sauvegardes-et-pour-diffuser-les-medias/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hosting a new maven project on Github, g3-java-client, a Gallery3 remote client library</title>
		<link>http://blog.dahanne.net/2010/09/20/hosting-a-new-maven-project-on-github-g3-java-client-a-gallery3-remote-client-library/</link>
		<comments>http://blog.dahanne.net/2010/09/20/hosting-a-new-maven-project-on-github-g3-java-client-a-gallery3-remote-client-library/#comments</comments>
		<pubDate>Mon, 20 Sep 2010 04:13:58 +0000</pubDate>
		<dc:creator>anthony.dahanne</dc:creator>
				<category><![CDATA[android]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[outils]]></category>

		<guid isPermaLink="false">http://blog.dahanne.net/?p=396</guid>
		<description><![CDATA[<p>I finally started a java library to implement Gallery3 REST remote API; g3-java-client (the name is not really original huh ?!)</p> <p>Here are the steps I followed to create this project.</p> The technical choices <p>Creating this project, I wanted a lightweight Java library, easily embeddable in an Android application  (G2Android not to name it, a [...]]]></description>
			<content:encoded><![CDATA[<p>I finally started a java library to implement <a href="http://codex.gallery2.org/Gallery3:API:REST">Gallery3 REST remote API</a>; <a href="http://github.com/anthonydahanne/g3-java-client">g3-java-client</a> (the name is not really original huh ?!)</p>
<p>Here are the steps I followed to create this project.</p>
<h3>The technical choices</h3>
<p>Creating this project, I wanted a lightweight Java library, easily embeddable in an Android application  (<a href="http://code.google.com/p/g2android/">G2Android not to name it, a Gallery2 client for Android</a>).</p>
<p>So I carefully designed my dependencies, in order to leverage Android already included libraries, such as Apache Http Client, org.json packages (by the way I initially wanted to use the jersey REST client API, but&#8230; I wanted to stay as close as possible to the Android platform&#8230;)</p>
<p>Finally, I&#8217;m developing this library using <a href="http://en.wikipedia.org/wiki/Test-driven_development">TDD</a>, and <a href="http://maven.apache.org/">Maven as a CI tool</a> :  I want a really reliable library, for 2 reasons : because it is motivating to create quality code, and also it is really painful to test an android application (you have to start an emulator or AVD and deploy the binary each time you launch a test, and each of these steps can take time) .</p>
<h3>The licensing</h3>
<p>I chose GPL v3 to make sure my work remains open source and not used in any commercial projects.</p>
<p>I&#8217;m using <a href="http://code.google.com/p/maven-license-plugin/wiki/HowTo">maven-license-plugin</a> to add the license to the source files.</p>
<h3>The hosting</h3>
<p>I chose <a href="http://github.com/">Github</a>, mainly because I wanted to get familiar with git : I have heard so many people happy using Git instead of SVN,  and I also wanted to be able to switch easily from trunk to another branch&#8230; sounded appealing to me !</p>
<p>To tag the sources, I decided to follow<a href="http://ulrichinaction.blogspot.com/2010/08/releaser-avec-maven-sur-github.html"> Ulrich&#8217;s steps using mvn-release-plugin to tag every new release</a> (in French, <a href="http://www.sonatype.com/people/2009/09/maven-tips-and-tricks-using-github/">but you can follow this link to have an equivalent article in English</a>)</p>
<p>And to host the binaries, <a href="http://cemerick.com/2010/08/24/hosting-maven-repos-on-github/">I created a maven repo out of  a new Github project following Chas&#8217;tutorial</a>; sure I could have asked <a href="https://docs.sonatype.org/display/Repository/Sonatype+OSS+Maven+Repository+Usage+Guide">to host my project on Sonatype&#8217;s Nexus for Open Source Software</a>, but as the project is actually really young, I prefer to use <a href="http://github.com/anthonydahanne/m2repo">my own repo</a>; I guess later on I&#8217;ll switch to this better solution.</p>
<h3>The commands used</h3>
<p>If I had to initialize the workspace from another computer, I would type the following commands :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">mkdir</span> g3-java-client
<span style="color: #c20cb9; font-weight: bold;">git</span> clone <span style="color: #c20cb9; font-weight: bold;">git</span><span style="color: #000000; font-weight: bold;">@</span>github.com:anthonydahanne<span style="color: #000000; font-weight: bold;">/</span>g3-java-client.git
<span style="color: #7a0874; font-weight: bold;">cd</span> g3-java-client<span style="color: #000000; font-weight: bold;">/</span>
<span style="color: #666666; font-style: italic;">#to make sure everything (compilation, testing) is ok</span>
mvn clean <span style="color: #c20cb9; font-weight: bold;">install</span>
<span style="color: #666666; font-style: italic;">#to add the license header to the source files</span>
mvn license:check
mvn license:format
<span style="color: #666666; font-style: italic;">#to commit the changes to github</span>
<span style="color: #c20cb9; font-weight: bold;">git</span> commit <span style="color: #660033;">-a</span> <span style="color: #660033;">-m</span> <span style="color: #ff0000;">'commit message'</span>
<span style="color: #c20cb9; font-weight: bold;">git</span> push origin master
<span style="color: #666666; font-style: italic;">#to release a new version  (be careful there is no file named release.properties at the root of the project)</span>
mvn release:prepare</pre></div></div>

<p>We just added the license info, committed the snapshot version , committed the stable version and also created a new branch (mvn release:prepare)</p>
<p>Now, we can deploy it to a maven repo</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#to deploy the current version to a repository on my local file system :</span>
mvn <span style="color: #660033;">-DaltDeploymentRepository</span>=snapshot-repo::default::<span style="color: #c20cb9; font-weight: bold;">file</span>:..<span style="color: #000000; font-weight: bold;">/</span>..<span style="color: #000000; font-weight: bold;">/</span>m2repo<span style="color: #000000; font-weight: bold;">/</span>snapshots clean deploy
<span style="color: #666666; font-style: italic;">#to commit this repo to github (I created this Github repo to serve as a maven repo http://github.com/anthonydahanne/m2repo)</span>
<span style="color: #7a0874; font-weight: bold;">cd</span> ..<span style="color: #000000; font-weight: bold;">/</span>..<span style="color: #000000; font-weight: bold;">/</span>m2repo<span style="color: #000000; font-weight: bold;">/</span>snapshots
<span style="color: #c20cb9; font-weight: bold;">git</span> commit <span style="color: #660033;">-a</span> <span style="color: #660033;">-m</span> <span style="color: #ff0000;">'new snapshot for g3-java-client'</span>
<span style="color: #c20cb9; font-weight: bold;">git</span> push origin master</pre></div></div>

<p>Pretty clear and easy right ? (except the deploy phase&#8230;) all of this thanks to Maven and my <a href="http://github.com/anthonydahanne/g3-java-client/blob/master/pom.xml">pom configuration</a>.</p>
<h3>What&#8217;s next ?</h3>
<p>First, finish implementing all the Gallery3 REST remote API commands; and then, create a new android project (G3Android ?!) to consume this library; using &#8230; <a href="http://code.google.com/p/maven-android-plugin/">maven-android-plugin</a> of course !</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.dahanne.net/2010/09/20/hosting-a-new-maven-project-on-github-g3-java-client-a-gallery3-remote-client-library/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Encoder vos videos en Webm (vp8) avec ffmpeg sous Ubuntu</title>
		<link>http://blog.dahanne.net/2010/06/19/encoder-vos-videos-en-webm-vp8-avec-ffmpeg-sous-ubuntu/</link>
		<comments>http://blog.dahanne.net/2010/06/19/encoder-vos-videos-en-webm-vp8-avec-ffmpeg-sous-ubuntu/#comments</comments>
		<pubDate>Sun, 20 Jun 2010 00:02:26 +0000</pubDate>
		<dc:creator>anthony.dahanne</dc:creator>
				<category><![CDATA[montage video]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[outils]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://blog.dahanne.net/?p=356</guid>
		<description><![CDATA[<p>Depuis la libération du codec VP8 (et de son conteneur WebM) de ON2 technologies par Google en Mai 2010, la communauté open source (et les amateurs de video !) a trouvé le digne remplaçant de theora, finalement peu performant, et surtout un adversaire de poids face au codec video breveté et certainement pas standard h264. [...]]]></description>
			<content:encoded><![CDATA[<p>Depuis la libération du codec VP8 (et de son conteneur WebM) de ON2 technologies par Google en Mai 2010, la communauté open source (et les amateurs de video !) a trouvé le digne remplaçant de theora, finalement peu performant, et surtout un adversaire de poids face au codec video breveté et certainement pas standard h264.<br />
Cet article a pour but d&#8217;expliquer comment :</p>
<ul>
<li>installer ffmpeg avec le support de webm sur Ubuntu</li>
<li>encoder une vidéo au format webm</li>
<li>lire une vidéo au format webm</li>
</ul>
<h3>Installer ffmpeg avec le support de webm sur Ubuntu</h3>
<p>Pour cela, je vais reprendre en quasi intégralité cet<a href="http://www.webdevonlinux.fr/2010/06/ffmpeg-0-6-0-ajoute-le-support-du-codec-webm"> excellent article de Steph sur l&#8217;installation de ffmpeg avec support de Webm sur Ubuntu 10.04 (lucid Lynx)</a>.<br />
On enlève les versions originales de ffmpeg et eventuellement de  x264 :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> remove <span style="color: #c20cb9; font-weight: bold;">ffmpeg</span> x264 libx264-dev</pre></div></div>

<p>On met à jour le système de paquets et on installe les librairies nécessaires sur le système :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> update
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> build-essential subversion git-core checkinstall yasm texi2html libfaac-dev libfaad-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libtheora-dev libvorbis-dev libx11-dev libxfixes-dev libxvidcore-dev zlib1g-dev</pre></div></div>

<p>Récupération des sources, compilation et installation de x264 (optionnel, si vous voulez aussi encoder en x264) sous forme de paquets pour votre système (checkinstall wrappe &laquo;&nbsp;make install&nbsp;&raquo; en installant en plus le binaire obtenu sous forme de paquets debian dans votre système)</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span>
<span style="color: #c20cb9; font-weight: bold;">git</span> clone <span style="color: #c20cb9; font-weight: bold;">git</span>:<span style="color: #000000; font-weight: bold;">//</span>git.videolan.org<span style="color: #000000; font-weight: bold;">/</span>x264.git
<span style="color: #7a0874; font-weight: bold;">cd</span> x264
.<span style="color: #000000; font-weight: bold;">/</span>configure
<span style="color: #c20cb9; font-weight: bold;">make</span>
<span style="color: #c20cb9; font-weight: bold;">sudo</span> checkinstall <span style="color: #660033;">--pkgname</span>=x264 <span style="color: #660033;">--pkgversion</span> <span style="color: #ff0000;">&quot;2:0.<span style="color: #780078;">`grep X264_BUILD x264.h -m1 | cut -d' ' -f3`</span>.<span style="color: #780078;">`git rev-list HEAD | wc -l`</span>+git<span style="color: #780078;">`git rev-list HEAD -n 1 | head -c 7`</span>&quot;</span> <span style="color: #660033;">--backup</span>=no <span style="color: #660033;">--default</span></pre></div></div>

<p>Récupération des sources, compilation et installation de VP8, librairie nommée libvpx sous forme de paquets pour votre système (checkinstall wrappe &laquo;&nbsp;make install&nbsp;&raquo; en installant en plus le binaire obtenu sous forme de paquets debian dans votre système)</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span>
<span style="color: #c20cb9; font-weight: bold;">git</span> clone <span style="color: #c20cb9; font-weight: bold;">git</span>:<span style="color: #000000; font-weight: bold;">//</span>review.webmproject.org<span style="color: #000000; font-weight: bold;">/</span>libvpx.git
<span style="color: #7a0874; font-weight: bold;">cd</span> libvpx
.<span style="color: #000000; font-weight: bold;">/</span>configure
<span style="color: #c20cb9; font-weight: bold;">make</span>
<span style="color: #c20cb9; font-weight: bold;">sudo</span> checkinstall <span style="color: #660033;">--pkgname</span>=libvpx <span style="color: #660033;">--pkgversion</span>=<span style="color: #ff0000;">&quot;<span style="color: #780078;">`date +%Y%m%d%k%M`</span>-git&quot;</span> <span style="color: #660033;">--backup</span>=no <span style="color: #660033;">--nodoc</span> <span style="color: #660033;">--default</span></pre></div></div>

<p>Récupération des sources, compilation et installation de ffmpeg (enfin!)sous forme de paquets pour votre système (checkinstall wrappe &laquo;&nbsp;make install&nbsp;&raquo; en installant en plus le binaire obtenu sous forme de paquets debian dans votre système, à noter que pour ffmpeg vous aurez une erreur lors du checkinstall, qui n&#8217;empêchera pas l&#8217;installation d&#8217;aboutir)<br />
Si vous avez installé x264, vous pouvez ajouter comme ci dessous ajouter le support x264 à ffmpeg  : &#8211;enable-libx264 ; à noter que l&#8217;option &#8211;enable-libvpx vous donnera accès à l&#8217;encodage webm</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span>
<span style="color: #c20cb9; font-weight: bold;">svn</span> checkout <span style="color: #c20cb9; font-weight: bold;">svn</span>:<span style="color: #000000; font-weight: bold;">//</span>svn.ffmpeg.org<span style="color: #000000; font-weight: bold;">/</span>ffmpeg<span style="color: #000000; font-weight: bold;">/</span>trunk <span style="color: #c20cb9; font-weight: bold;">ffmpeg</span>
<span style="color: #7a0874; font-weight: bold;">cd</span> <span style="color: #c20cb9; font-weight: bold;">ffmpeg</span>
.<span style="color: #000000; font-weight: bold;">/</span>configure <span style="color: #660033;">--enable-gpl</span> <span style="color: #660033;">--enable-version3</span> <span style="color: #660033;">--enable-nonfree</span> <span style="color: #660033;">--enable-postproc</span> <span style="color: #660033;">--enable-pthreads</span> <span style="color: #660033;">--enable-libfaac</span> <span style="color: #660033;">--enable-libfaad</span> <span style="color: #660033;">--enable-libmp3lame</span> <span style="color: #660033;">--enable-libopencore-amrnb</span> <span style="color: #660033;">--enable-libopencore-amrwb</span> <span style="color: #660033;">--enable-libtheora</span> <span style="color: #660033;">--enable-libvorbis</span> <span style="color: #660033;">--enable-libvpx</span> <span style="color: #660033;">--enable-libx264</span> <span style="color: #660033;">--enable-libxvid</span> <span style="color: #660033;">--enable-x11grab</span>
<span style="color: #c20cb9; font-weight: bold;">make</span>
<span style="color: #c20cb9; font-weight: bold;">sudo</span> checkinstall <span style="color: #660033;">--pkgname</span>=<span style="color: #c20cb9; font-weight: bold;">ffmpeg</span> <span style="color: #660033;">--pkgversion</span> <span style="color: #ff0000;">&quot;4:SVN-r<span style="color: #780078;">`svn info | grep Revision | awk '{ print $NF }'`</span>&quot;</span> <span style="color: #660033;">--backup</span>=no <span style="color: #660033;">--default</span>
<span style="color: #7a0874; font-weight: bold;">hash</span> x264 <span style="color: #c20cb9; font-weight: bold;">ffmpeg</span> ffplay</pre></div></div>

<p>Alors il est vrai que c&#8217;est toujours plus simple d&#8217;installer des paquets avec apt-get install que de compiler des sources, mais le support de webm dans ffmpeg est à ce jour tellement récent que vous ne trouverez pas de paquets pour votre distribution !</p>
<h3>Encoder vos vidéos en webm avec ffmpeg</h3>
<p>Rien de plus simple !</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">ffmpeg</span> <span style="color: #660033;">-i</span> input.avi <span style="color: #660033;">-threads</span> <span style="color: #000000;">2</span> output.webm</pre></div></div>

<p>(sauf qu&#8217;il semnlearait que le -threads 2, supposé donner 2 threads à ffmpeg, utile pour les dual core, ne soit pas supporté, à ce jour, pour webm)</p>
<h3>Lire vos vidéos encodées en webm</h3>
<h2>Avec ffplay</h2>
<p>Vous avez déjà installé précédemment ffmplay :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">ffplay output.webm</pre></div></div>

<h2>Avec vlc</h2>
<p>Vous pouvez aussi les lire avec la dernière version de VLC, à date, la version 1.1.0; il vous faut ajouter un nouveau repo avec les dernières version de vlc, enlever votre version actuelle et ré installer vlc :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> add-apt-repository ppa:c-korn<span style="color: #000000; font-weight: bold;">/</span>vlc
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> update
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> remove vlc
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> vlc mozilla-plugin-vlc videolan-doc</pre></div></div>

<p>Depuis la sortie officielle de VLC en 1.1.0, VLC lit parfaitement les fichiers webm, toutes plateformes confondues !</p>
<h2>Avec votre navigateur web</h2>
<p>Mais le véritable intérêt de webm, c&#8217;est le web, aussi à cette page, <a href="http://www.youtube.com/html5">vous sont listées les navigateurs compatibles webm</a>.<br />
Vous y trouverez un paquet debian/ubuntu pour chrome, et en <a href="http://nightly.mozilla.org/">téléchargeant et détarrant un firefox nightly build</a>, vous pourrez aussi les lire avec firefox.</p>
<p>Si vous pouvez lire la video ci dessous, c&#8217;est qu&#8217;alors vous utilisez un navigateur compatible webm !<br />
<video width="854" height="480" controls preload="none"><br />
       <source src="http://blog.dahanne.net/wp-content/uploads/sample.webm" type="video/webm" /><br />
</video></p>
<p>Avec chrome version 6.0.437.3 dev , j&#8217;ai pu la lire avec succès !</p>
<p>Vous pouvez aussi télécharger la vidéo en enregistrant cette url :</p>
<p><a href="http://blog.dahanne.net/wp-content/uploads/sample.webm">Exemple de vidéo webm à télécharger</a></p>
<p>Bon encodage Webm à tous !</p>
<h3>Sources :</h3>
<ul>
<li><a href="http://linuxfr.org//2010/06/17/27005.html">annonce de l&#8217;intégration de webm sur linuxfr.org</a></li>
<li><a href="http://www.webdevonlinux.fr/2010/06/ffmpeg-0-6-0-ajoute-le-support-du-codec-webm">installer webm sur ubuntu 10.04 64 bits</a></li>
<li><a href="http://ubuntuforums.org/showthread.php?t=786095">install webm on ubuntu</a></li>
<li><a href="http://www.mirovideoconverter.com/">Encoder vos videos webm sous windows</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.dahanne.net/2010/06/19/encoder-vos-videos-en-webm-vp8-avec-ffmpeg-sous-ubuntu/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Debugging any Java Application</title>
		<link>http://blog.dahanne.net/2010/06/03/debugging-any-java-application/</link>
		<comments>http://blog.dahanne.net/2010/06/03/debugging-any-java-application/#comments</comments>
		<pubDate>Thu, 03 Jun 2010 18:18:47 +0000</pubDate>
		<dc:creator>anthony.dahanne</dc:creator>
				<category><![CDATA[java]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[outils]]></category>

		<guid isPermaLink="false">http://blog.dahanne.net/?p=351</guid>
		<description><![CDATA[<p>As long as you&#8217;re using a java application (ie an application calling your JVM), you can enable the debug mode with these parameters :</p> <p>-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y</p> <p>So for example, if you want to debug an ant launch (launched via &#171;&#160;ant -f myBuild.xml&#160;&#187; for example), you simply have to set ANT_OPTS; on windows :</p> <p>set ANT_OPTS=-Xdebug [...]]]></description>
			<content:encoded><![CDATA[<p>As long as you&#8217;re using a java application (ie an application calling your JVM), you can enable the debug mode with these parameters :</p>
<p><code>-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y</code></p>
<p>So for example, if you want to debug an ant launch (launched via &laquo;&nbsp;ant -f myBuild.xml&nbsp;&raquo; for example), you simply have to set ANT_OPTS; on windows :</p>
<p><code>set ANT_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y</code></p>
<p>Another example, with JBoss :</p>
<p><code>set JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y</code></p>
<p>and then you can debug your launch with Eclipse, for example, creating a new debug configuration (remote java application on port 8787) !<br />
Option : you can choose whether or not the application should wait for your debugger setting suspend to y or n.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.dahanne.net/2010/06/03/debugging-any-java-application/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Comment convertir une mailbox Outlook en mailbox IMAP</title>
		<link>http://blog.dahanne.net/2009/12/23/comment-convertir-une-mailbox-outlook-en-mailbox-imap/</link>
		<comments>http://blog.dahanne.net/2009/12/23/comment-convertir-une-mailbox-outlook-en-mailbox-imap/#comments</comments>
		<pubDate>Wed, 23 Dec 2009 23:21:54 +0000</pubDate>
		<dc:creator>anthony.dahanne</dc:creator>
				<category><![CDATA[open source]]></category>
		<category><![CDATA[outils]]></category>

		<guid isPermaLink="false">http://blog.dahanne.net/?p=328</guid>
		<description><![CDATA[<p>Si chez moi j&#8217;ai tout le loisir d&#8217;utiliser, pour la messagerie par email, des logiciels libres implémentant des standards; dans le cadre du travail, je me suis souvent retrouvé à utiliser un compte Outlook&#8230; (ou pire, Lotus Notes, mais là c&#8217;est un autre sujet&#8230;) Sauf que le jour où on quitte la société ou la [...]]]></description>
			<content:encoded><![CDATA[<p>Si chez moi j&#8217;ai tout le loisir d&#8217;utiliser, pour la messagerie par email, des logiciels libres implémentant des standards; dans le cadre du travail, je me suis souvent retrouvé à utiliser un compte Outlook&#8230; (ou pire, Lotus Notes, mais là c&#8217;est un autre sujet&#8230;)<br />
Sauf que le jour où on quitte la société ou la mission (qui vous a équipé d&#8217;Outlook donc), on aimerait bien récupérer ses messages préférés&#8230;<br />
Vous imaginez bien que le format de sauvegarde d&#8217;Outlook est propriétaire, ainsi, il faut ruser pour convertir votre boite aux lettres Outlook au format standard unix &laquo;&nbsp;mailbox&nbsp;&raquo; (format documenté et convertible et exploitable par pléthore d&#8217;outils)<br />
Pour ce faire, il suffit de suivre ces 2 étapes (il faut aussi un compte IMAP tierce) :</p>
<h3>1°)Configurer un compte IMAP dans Outlook</h3>
<p>j&#8217;ai simplement ajouté un compte IMAP existant dans Outlook (Outils-&gt;Comptes de messagerie)<br />
J&#8217;ai ensuite choisi &laquo;&nbsp;Ajouter compte de messagerie&nbsp;&raquo;</p>
<p><a href="http://blog.dahanne.net/wp-content/uploads/comptes_de_messagerie.png"><img class="alignnone size-medium wp-image-332" title="comptes_de_messagerie" src="http://blog.dahanne.net/wp-content/uploads/comptes_de_messagerie-300x228.png" alt="" width="300" height="228" /></a></p>
<p>Puis j&#8217;ai sélectionné IMAP<br />
<a href="http://blog.dahanne.net/wp-content/uploads/imap.png"><img class="alignnone size-medium wp-image-333" title="imap" src="http://blog.dahanne.net/wp-content/uploads/imap-300x229.png" alt="" width="300" height="229" /></a><br />
J&#8217;ai renseigné mon compte IMAP</p>
<p><a href="http://blog.dahanne.net/wp-content/uploads/compte_saisi.png"><img class="alignnone size-medium wp-image-331" title="compte_saisi" src="http://blog.dahanne.net/wp-content/uploads/compte_saisi-300x227.png" alt="" width="300" height="227" /></a></p>
<p>Terminé !</p>
<h3>2°)Déplacez ses messages et répertoires de Outlook vers votre compte IMAP</h3>
<p>Rien de plus simple, il suffit de glisser/déplacer vos messages et répertoires de votre compte Outlook, vers votre compte IMAP !<br />
Par contre, votre serveur IMAP n&#8217;est peut être pas paramétré pour gérer les sous répertoires, dans ce cas là, vous devez modifier la configuration, dans le cas de Dovecot, veuillez faire attention à ce que l&#8217;option namespace_private comporte une définition des séparateurs :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">namespace private <span style="color: #7a0874; font-weight: bold;">&#123;</span>
   <span style="color: #666666; font-style: italic;"># Hierarchy separator to use. You should use the same separator for all</span>
   <span style="color: #666666; font-style: italic;"># namespaces or some clients get confused. '/' is usually a good one.</span>
   <span style="color: #666666; font-style: italic;"># The default however depends on the underlying mail storage format.</span>
  separator = <span style="color: #000000; font-weight: bold;">/</span> 
&nbsp;
   <span style="color: #666666; font-style: italic;"># Prefix required to access this namespace. This needs to be different for</span>
   <span style="color: #666666; font-style: italic;"># all namespaces. For example &quot;Public/&quot;.</span>
   prefix = <span style="color: #ff0000;">&quot;&quot;</span>
&nbsp;
   <span style="color: #666666; font-style: italic;"># Physical location of the mailbox. This is in same format as</span>
   <span style="color: #666666; font-style: italic;"># mail_location, which is also the default for it.</span>
   <span style="color: #666666; font-style: italic;">#location =</span>
&nbsp;
   <span style="color: #666666; font-style: italic;"># There can be only one INBOX, and this setting defines which namespace</span>
   <span style="color: #666666; font-style: italic;"># has it.</span>
   inbox = <span style="color: #c20cb9; font-weight: bold;">yes</span>
&nbsp;
   <span style="color: #666666; font-style: italic;"># If namespace is hidden, it's not advertised to clients via NAMESPACE</span>
   <span style="color: #666666; font-style: italic;"># extension or shown in LIST replies. This is mostly useful when converting</span>
   <span style="color: #666666; font-style: italic;"># from another server with different namespaces which you want to depricate</span>
   <span style="color: #666666; font-style: italic;"># but still keep working. For example you can create hidden namespaces with</span>
   <span style="color: #666666; font-style: italic;"># prefixes &quot;~/mail/&quot;, &quot;~%u/mail/&quot; and &quot;mail/&quot;.</span>
   <span style="color: #666666; font-style: italic;">#hidden = yes</span>
<span style="color: #7a0874; font-weight: bold;">&#125;</span></pre></div></div>

<p>C&#8217;est fini, vous venez de migrer vos données Outlook vers mailbox, le standard de courrier *nix ! (vos emails doivent être sur le votre machine hébergeant le serveur IMAP dans /home/user/mail/votre_sous_rep)</p>
<h3>Références</h3>
<p><a href="http://www.faqs.org/docs/Linux-mini/Outlook-to-Unix-Mailbox.html#s3" target="_blank">http://www.faqs.org/docs/Linux-mini/Outlook-to-Unix-Mailbox.html#s3</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.dahanne.net/2009/12/23/comment-convertir-une-mailbox-outlook-en-mailbox-imap/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Analyse de trames HTTP : les outils</title>
		<link>http://blog.dahanne.net/2009/12/10/analyse-de-trames-http-les-outils/</link>
		<comments>http://blog.dahanne.net/2009/12/10/analyse-de-trames-http-les-outils/#comments</comments>
		<pubDate>Thu, 10 Dec 2009 09:31:01 +0000</pubDate>
		<dc:creator>anthony.dahanne</dc:creator>
				<category><![CDATA[java]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[outils]]></category>
		<category><![CDATA[proxy]]></category>

		<guid isPermaLink="false">http://blog.dahanne.net/?p=252</guid>
		<description><![CDATA[<p>Régulièrement, je me trouve face au dilemme suivant :  &#171;&#160;Mais qu&#8217;est ce que mon application a bien pu envoyer au serveur ?&#160;&#187; Il existe des outils pour répondre à cette question , et voici ma sélection :</p> Wireshark (anciennement ethereal) / Linux Cet outil, c&#8217;est le couteau suisse de l&#8217;analyse réseau; et pas simplement HTTP [...]]]></description>
			<content:encoded><![CDATA[<p>Régulièrement, je me trouve face au dilemme suivant :  &laquo;&nbsp;Mais qu&#8217;est ce que mon application a bien pu envoyer au serveur ?&nbsp;&raquo;<br />
Il existe des outils pour répondre à cette question , et voici ma sélection :</p>
<ul>
<li><a href="http://www.wireshark.org/">Wireshark </a>(anciennement ethereal) / Linux<br />
Cet outil, c&#8217;est le couteau suisse de l&#8217;analyse réseau; et pas simplement HTTP : il peut analyser les trames TCP, UDP et tout ce qu&#8217;il y a au dessus (HTTP, FTP, SMTP, etc&#8230;)</li>
<li><a href="http://www.pocketsoap.com/tcptrace/">TCPTrace</a> / Windows<br />
Comme son nom l&#8217;indique, il permet d&#8217;analyser les trames TCP : spécifier un port d&#8217;écoute sur votre machine locale, un port de destination, une hôte de destination, configurer votre client HTTP que vous désirez tester; et le tour est joué : tous vos échanges seront loggés !</li>
<li>l&#8217;origine de TCPTrace, tcptunnelgui, très simple d&#8217;utilisation, <a href="http://www.redstream.nl/2011/04/08/tcptunnelgui-maybe-old-but-still-useful/">bien expliqué par Pascal</a></li>
<li><a href="http://www.rexswain.com/httpview.html">HttpViewer</a> , en ligne<br />
Il ne permet que d&#8217;analyser les trames HTTP, mais son gros avantage c&#8217;est qu&#8217;il n&#8217;y a aucune installation à effectuer, c&#8217;est un outil en ligne !</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.dahanne.net/2009/12/10/analyse-de-trames-http-les-outils/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Effacer de manière sécurisée les données d&#8217;un disque dur</title>
		<link>http://blog.dahanne.net/2009/10/14/effacer-de-maniere-securisee-les-donnees-dun-disque-dur/</link>
		<comments>http://blog.dahanne.net/2009/10/14/effacer-de-maniere-securisee-les-donnees-dun-disque-dur/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 20:06:03 +0000</pubDate>
		<dc:creator>anthony.dahanne</dc:creator>
				<category><![CDATA[open source]]></category>
		<category><![CDATA[outils]]></category>

		<guid isPermaLink="false">http://blog.dahanne.net/?p=256</guid>
		<description><![CDATA[<p>Envie d&#8217;effacer toutes les données d&#8217;un disque dur avant de le revendre ? Envie d&#8217;effacer toutes vos données personnelles qui se situe dans un répertoire en particulier (sous windows), sans formater tout le disque ? Suivez le guide !</p> Effacer de manière sécurisée toutes les partitions d&#8217;un volume <p>Vous vous apprétez à vendre ou à [...]]]></description>
			<content:encoded><![CDATA[<p>Envie d&#8217;effacer toutes les données d&#8217;un disque dur avant de le revendre ?<br />
Envie d&#8217;effacer toutes vos données personnelles qui se situe dans un répertoire en particulier (sous windows), sans formater tout le disque ?<br />
Suivez le guide !</p>
<h3>Effacer de manière sécurisée toutes les partitions d&#8217;un volume</h3>
<p>Vous vous apprétez à vendre ou à donner votre vieil ordinateur, et vous ne voulez pas que l&#8217;ensemble de vos documents privés se retrouvent sur internet ?</p>
<p>Dans ce cas, il ne suffit pas d&#8217;effacer vos fichiers via l&#8217;OS (ce qui ne les efface que de la table de registres du disque), ni de formater la partition (un logiciel de &laquo;&nbsp;recovery&nbsp;&raquo; serait capable de la reconstituer); ce qu&#8217;il vous faut, c&#8217;est réécrire plusieurs fois, avec des algorithmes éprouvés, des données aléatoires sur l&#8217;ensemble du disque.</p>
<p>Il existe pour cela pléthores d&#8217;outils payants (et qui n&#8217;ont pas l&#8217;air d&#8217;avoir la côte), et il existe <a title="dban" href="http://www.dban.org/">DBAN</a>, outil GPL de choix.</p>
<p><a title="dban" href="http://www.dban.org/">DBAN (Darik&#8217;s boot and Nuke)</a> est un logiciel libre, redoutablement efficace, qui, même s&#8217;il n&#8217;est plus maintenu depuis 2007, vous propose plusieurs algos pour effacer votre disque de manière sécurisée (réécrire 1 fois dessus -&gt; +rapide; 3 passes avec algo conforme au Department Of Defense américain -&gt; +long)</p>
<p>Ce logiciel s&#8217;installe sur une clef USB, ou un CD-R, ou une disquette; bootez dessus (branchez auparavant sur votre ordinateur les périphériques que vous souhaitez effacer), tapez &laquo;&nbsp;autonuke&nbsp;&raquo; à l&#8217;invite de commandes, patientez, et c&#8217;est réglé !</p>
<p>Vous voulez en avoir le coeur net ? être sûr que DBAN a bien fait son travail ?</p>
<p>On peut faire une vérification sommaire, en tentant de retrouver des partitions sur le disque avec l&#8217;outil <a title="TestDisk" href="http://www.cgsecurity.org/wiki/TestDisk">Testdisk</a>, en GPL sous Linux/Windows/MacOs (etc..); le résultat est sans appel : après analyse complète du disque à la recherche de la moindre partition :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">TestDisk <span style="color: #000000;">6.10</span>, Data Recovery Utility, July <span style="color: #000000;">2008</span>
Christophe GRENIER <span style="color: #000000; font-weight: bold;">&amp;</span>lt;grenier<span style="color: #000000; font-weight: bold;">@</span>cgsecurity.org<span style="color: #000000; font-weight: bold;">&amp;</span>gt;
http:<span style="color: #000000; font-weight: bold;">//</span>www.cgsecurity.org
&nbsp;
Disk <span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>sdc - <span style="color: #000000;">81</span> GB <span style="color: #000000; font-weight: bold;">/</span> <span style="color: #000000;">76</span> GiB - CHS <span style="color: #000000;">9965</span> <span style="color: #000000;">255</span> <span style="color: #000000;">63</span>
&nbsp;
Partition                  Start        End    Size <span style="color: #000000; font-weight: bold;">in</span> sectors
&nbsp;
No partition found or selected <span style="color: #000000; font-weight: bold;">for</span> recovery</pre></div></div>

<h3>Effacer vos données personnelles d&#8217;un répertoire</h3>
<p>Vous utilisez régulièrement un ordinateur au bureau, vous y avez stocké des documents confidentiels, et vous vous apprétez à ne plus utiliser ce poste de travail ?</p>
<p>Vous pouvez alors utiliser <a title="Eraser" href="http://eraser.heidi.ie/">Eraser</a>, encore un logiciel libre sous GPL (mais malheureusement que pour Windows), qui appliquera les mêmes algorithmes de suppression que DBAN, mais dans des répertoires au choix, et non pas un volume entier; Eraser est facile à utiliser (version portable, pas besoin d&#8217;être admin pour s&#8217;en servir), et est encore maintenu à ce jour</p>
<h3>Références :</h3>
<p><a href="http://www.webopedia.com/DidYouKnow/Computer_Science/2007/completely_erase_harddrive.asp">http://www.webopedia.com/DidYouKnow/Computer_Science/2007/completely_erase_harddrive.asp</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.dahanne.net/2009/10/14/effacer-de-maniere-securisee-les-donnees-dun-disque-dur/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic

Served from: blog.dahanne.net @ 2012-02-04 16:41:29 -->
