<?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>Renoir Boulanger &#187; p52</title>
	<atom:link href="http://renoirboulanger.com/blog/tag/p52/feed/" rel="self" type="application/rss+xml" />
	<link>http://renoirboulanger.com</link>
	<description>Un geek social et Linuxien de nature</description>
	<lastBuildDate>Sun, 29 Apr 2012 20:29:57 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Réalisation site Manoir Saint-Francis faits avec GéraniumCMS [2007]</title>
		<link>http://renoirboulanger.com/blog/2010/09/realisation-site-manoir-saint-francis-faits-avec-geraniumcms-2007/</link>
		<comments>http://renoirboulanger.com/blog/2010/09/realisation-site-manoir-saint-francis-faits-avec-geraniumcms-2007/#comments</comments>
		<pubDate>Sun, 12 Sep 2010 06:45:25 +0000</pubDate>
		<dc:creator>Renoir Boulanger</dc:creator>
				<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[GeraniumCMS]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[inexis]]></category>
		<category><![CDATA[p52]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://renoirboulanger.com/?p=2349</guid>
		<description><![CDATA[Réalisation site Manoir Saint-Francis faits avec GéraniumCMS [2007]Dans ma série d&#8217;articles ou je parle des sites que j&#8217;ai fait dans le passé. J&#8217;ai mentionné quelques fois que j&#8217;utilisait GéraniumCMS. Le projet du site du Manoir Saint-Francis à Magog, est l&#8217;un des derniers déployés.
Derniers sites faits avec GéraniumCMS
J&#8217;était en emploi chez TechSolCom Groupe informatique depuis quelques [...]]]></description>
			<content:encoded><![CDATA[<a href='http://renoirboulanger.com/blog/2010/09/realisation-site-manoir-saint-francis-faits-avec-geraniumcms-2007/' class='retweet '  style='display:block;margin:10px 0px;' >Réalisation site Manoir Saint-Francis faits avec GéraniumCMS [2007]</a><p><img src="http://renoirboulanger.com/wp-content/uploads/2010/08/screenshot_manoirstfrancis2-300x285.png" alt="Manoir Saint-Francis : Page avec images cartes généré par GéraniumCMS" title="Manoir Saint-Francis : Page avec images cartes" width="300" height="285" class="aligncenter size-medium wp-image-2352" />Dans ma série d&#8217;articles ou je parle des <a href="http://renoirboulanger.com/blog/category/portfolio/">sites que j&#8217;ai fait dans le passé</a>. J&#8217;ai mentionné quelques fois que <a href="http://renoirboulanger.com/blog/tag/GeraniumCMS/">j&#8217;utilisait GéraniumCMS</a>. Le projet du site du <a href="http://manoirstfrancis.com">Manoir Saint-Francis à Magog</a>, est l&#8217;un des derniers déployés.</p>
<p><strong>Derniers sites faits avec GéraniumCMS</strong></p>
<p>J&#8217;était en emploi chez <a href="http://techsolcom.ca">TechSolCom Groupe informatique</a> depuis quelques temps déjà et un ancien client de Inexis a voulu que je fasse un site pour lui.</p>
<p>Le contexte général du projet est comme il l&#8217;est souvent. Un graphiste me fournit des planches Photoshop et je dois le rendre identique en HTML.</p>
<h3>Gallerie d&#8217;images</h3>

<a href='http://renoirboulanger.com/blog/2010/09/realisation-site-manoir-saint-francis-faits-avec-geraniumcms-2007/screenshot_manoirstfrancis1_cms/' title='Manoir Saint-Francis : Boutons mode édition'><img width="150" height="150" src="http://renoirboulanger.com/wp-content/uploads/2010/08/screenshot_manoirstfrancis1_cms-150x150.png" class="attachment-thumbnail" alt="" title="Manoir Saint-Francis : Boutons mode édition" /></a>
<a href='http://renoirboulanger.com/blog/2010/09/realisation-site-manoir-saint-francis-faits-avec-geraniumcms-2007/screenshot_manoirstfrancis1/' title='Manoir Saint-Francis : Page accueil'><img width="150" height="150" src="http://renoirboulanger.com/wp-content/uploads/2010/08/screenshot_manoirstfrancis1-150x150.png" class="attachment-thumbnail" alt="" title="Manoir Saint-Francis : Page accueil" /></a>
<a href='http://renoirboulanger.com/blog/2010/09/realisation-site-manoir-saint-francis-faits-avec-geraniumcms-2007/screenshot_manoirstfrancis2/' title='Manoir Saint-Francis : Page avec images cartes'><img width="150" height="150" src="http://renoirboulanger.com/wp-content/uploads/2010/08/screenshot_manoirstfrancis2-150x150.png" class="attachment-thumbnail" alt="" title="Manoir Saint-Francis : Page avec images cartes" /></a>
<a href='http://renoirboulanger.com/blog/2010/09/realisation-site-manoir-saint-francis-faits-avec-geraniumcms-2007/screenshot_manoirstfrancis3/' title='Manoir Saint-Francis : Focus sur image'><img width="150" height="150" src="http://renoirboulanger.com/wp-content/uploads/2010/08/screenshot_manoirstfrancis3-150x150.png" class="attachment-thumbnail" alt="" title="Manoir Saint-Francis : Focus sur image" /></a>

]]></content:encoded>
			<wfw:commentRss>http://renoirboulanger.com/blog/2010/09/realisation-site-manoir-saint-francis-faits-avec-geraniumcms-2007/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comment remplacer les caract√®res bizzares dans WordPress lorsqu&#8217;on a mal fait la conversion</title>
		<link>http://renoirboulanger.com/blog/2010/06/comment-remplacer-les-caracteres-bizzares-dans-wordpress-lorsqu-on-a-mal-fait-la-conversion/</link>
		<comments>http://renoirboulanger.com/blog/2010/06/comment-remplacer-les-caracteres-bizzares-dans-wordpress-lorsqu-on-a-mal-fait-la-conversion/#comments</comments>
		<pubDate>Fri, 11 Jun 2010 01:07:40 +0000</pubDate>
		<dc:creator>Renoir Boulanger</dc:creator>
				<category><![CDATA[Techniques]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[p52]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[sc]]></category>
		<category><![CDATA[Tutoriels]]></category>

		<guid isPermaLink="false">http://renoirboulanger.com/?p=2232</guid>
		<description><![CDATA[Comment remplacer les caract√®res bizzares dans WordPress lorsqu&#8217;on a mal fait la conversionAccrocheur mon titre n&#8217;est-ce pas? Je trouve ça tellement pas drôle lorsque ça m&#8217;arrive ce genre de situation avec les caractères accentués. Le problème n&#8217;arrive pas tout le temps qu&#8217;avec WordPress. 
Voici, enfin, une suite a mon billet Pourquoi tout ces caractères bizzares. [...]]]></description>
			<content:encoded><![CDATA[<a href='http://renoirboulanger.com/blog/2010/06/comment-remplacer-les-caracteres-bizzares-dans-wordpress-lorsqu-on-a-mal-fait-la-conversion/' class='retweet '  style='display:block;margin:10px 0px;' >Comment remplacer les caract√®res bizzares dans WordPress lorsqu&#8217;on a mal fait la conversion</a><p>Accrocheur mon titre n&#8217;est-ce pas? Je trouve ça tellement pas drôle lorsque ça m&#8217;arrive ce genre de situation avec les caractères accentués. Le problème n&#8217;arrive pas tout le temps qu&#8217;avec WordPress. </p>
<p>Voici, enfin, une suite a mon billet <a href="http://renoirboulanger.com/blog/2009/09/pourquoi-tout-ces-caracteres-bizzares/">Pourquoi tout ces caractères bizzares</a>.  Je devais travailler sur un problème de conversion de caractères pour un client dus a une conversion non réussie et/ou terminée entre <tt>latin1</tt> et <tt>utf-8</tt> puis je me suis remis a penser a ce problème. Pourquoi ne pas le régler, et documenter! </p>
<p>Voilà pourquoi ce billet <img src='http://renoirboulanger.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<h3>La situation</h3>
<p>Mon cas était bien simple. J&#8217;avait mal fait ma sauvegarde lors d&#8217;un transfert et j&#8217;avait tout mes commentaires, billets, et autres données qui avait des accents &#8220;<tt>transform√©s comme √áa</tt>&#8221; (transformés comme ça).</p>
<p>Ce genre de problème arrive pour toutes sortes de raisons. Mais le symptôme est le même. Si vous avez des<br />
Je partage avec vous mon bout de code a «copier-coller» dans <tt>phpmyadmin</tt> pour votre blogue WordPress si vous avez ces problèmes (oubliez-pas de faire des sauvegardes là(!)).</p>
<p>Plusieurs tutoriels existent pour régler la situation mais mon cas était assez unique. J&#8217;ai conservé le problème puis j&#8217;ai publié plusieurs billets (qui sortent bien) et laissé ceux &#8220;<tt>ab√Æm√©s</tt>&#8221; là. <strong>Il n&#8217;était plus question d&#8217;extraire, convertir et ré-importer</strong>.</p>
<h3>Pourquoi?!</h3>
<p>C&#8217;est une réponse assez complexe. L&#8217;article <a href="http://tikiwiki.org/UTF-8"><strong>UTF-8</strong> sur TikiWiki.org</a> l&#8217;explique en détail.</p>
<blockquote><p>In short, UTF-8 is a character encoding that uses 1 to 3 bytes for each character.<br />
It is one of the existing character encodings of the UCS (Universal Character Set), that contains nearly a hundred thousand abstract characters (including ASCII characters).</p>
<p>UTF-8 greatly simplifies the task of internationalization by replacing multiple alternative encodings (such as ISO8859-15 Latin-9, which encodes those English, French, German, Spanish and Portuguese characters not available in ASCII).</p></blockquote>
<p>En simple, le UTF-8 est un format d&#8217;encodage qui utilise 1 a 3 bytes pour chaque caractère. C&#8217;est un format d&#8217;encodage qui comprend près de plusieurs centaines de milliers de caractères (Incluant ceux du ASCII).</p>
<p>UTF-8 est fait pour contenir tout les caractères existants pour simplifier l&#8217;internationalisation. </p>
<p>C&#8217;est un standard qui est pas nécessairement jeune mais qui n&#8217;était pas non plus supporté partout.</p>
<p>MySQL a commencé a le supporter qu&#8217;a partir de la version 4.1.</p>
<p>Ce qui arrive c&#8217;est qu&#8217;avec le temps, les gens prennent de plus en plus soin de rendre accessible pour toutes les langues leur applications. Ainsi un russe pourrait écrire en cyrillic et un Japonais en Kanji dans la même base de donnée. Le coup est difficile! Surtout que les versions de MySQL et PHP et Java offrent maintenant le choix par défaut en UTF-8&#8230; lorsqu&#8217;on fait pas attention: on se fait coincer!</p>
<p><span id="more-2232"></span></p>
<h3>Comment j&#8217;ai opéré</h3>
<p>Comme il n&#8217;y a pas que WordPress qui peut avoir ce type de problème j&#8217;ai fait un petit script qui génère pour chaque table et colone affectée. J&#8217;ai passé dans chaque table et colone où je voyait des choses bizzares et j&#8217;ai représenté dans un array a deux dimensions. Avec cette méthode on peut faire la même chose avec n&#8217;importequel schéma de base de donnée.</p>
<h4>Exemple: Représenter les tables et les colones</h4>
<p>Avec ce format, en exemple, j&#8217;ai représenté les tables (<tt>wp_posts</tt>, etc&#8230;) et chaque array représente une colone où des caractères accentués sont mal convertis.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000088;">$tables</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
        <span style="color: #0000ff;">'wp_posts'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'post_content'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'post_title'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'post_excerpt'</span><span style="color: #009900;">&#41;</span>
        <span style="color: #339933;">,</span><span style="color: #0000ff;">'wp_usermeta'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'meta_value'</span><span style="color: #009900;">&#41;</span>
        <span style="color: #339933;">,</span><span style="color: #0000ff;">'wp_term_taxonomy'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'description'</span><span style="color: #009900;">&#41;</span>
        <span style="color: #339933;">,</span><span style="color: #0000ff;">'wp_comments'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'comment_content'</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<h3>Utiliser le script</h3>
<p>Le script a été utilisé pratiquement tel quel sur ma base de donnée WordPress de ce site. </p>
<p>Seuls ajustements a faire. </p>
<ul>
<li>Remplacer les &#8220;&lt;&nbsp;pre&nbsp;&gt;&#8221; par &#8220;&lt;pre&gt;&#8221;. Vous comprenez le principe <img src='http://renoirboulanger.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </li>
<li>Afficher le contenu généré via un serveur Web avec PHP installé</li>
<li>Aller dans <tt>phpmyadmin</tt>, <strong>faire une copie de la base de donnée à affecter</strong> (Voir dans onglet &#8220;<tt>Opérations</tt>&#8221; et &#8220;<tt>Copier la base de données vers:  </tt>&#8220;)</li>
<li>Aller dans cette base de donnée là dans phpmyadmin (!!)</li>
<li>Exécuter le code généré (copier-coller) dans la fenêtre <tt>SQL</tt> de la base de donnée de tests</li>
<li>Faire pareil avec la vraie si vous êtes satisfaits du résultat</li>
</ul>
<h4>Le code</h4>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">header</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Content-type:text/html;charset=utf8'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$tables</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
        <span style="color: #0000ff;">'wp_posts'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'post_content'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'post_title'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'post_excerpt'</span><span style="color: #009900;">&#41;</span>
        <span style="color: #339933;">,</span><span style="color: #0000ff;">'wp_usermeta'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'meta_value'</span><span style="color: #009900;">&#41;</span>
        <span style="color: #339933;">,</span><span style="color: #0000ff;">'wp_term_taxonomy'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'description'</span><span style="color: #009900;">&#41;</span>
        <span style="color: #339933;">,</span><span style="color: #0000ff;">'wp_comments'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'comment_content'</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000088;">$chars</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'√Ä'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|À'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'√¥'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|ô'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'√Ç'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|â'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'√á'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|ç'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'√©'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|é'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'√â'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|É'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'√†'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|à'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'√®'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|è'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'√™'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|ê'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'√¢'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|â'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'‚Äô'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|‘'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'¬´'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|«'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'¬ª'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|»'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'√ß'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|ç'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'√π'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|ù'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'√ª'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|û'</span><span style="color: #339933;">,</span>
 <span style="color: #990000;">bin2hex</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'√Æ'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'|î'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #b1b100;">foreach</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$tables</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$table</span> <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$elements</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
  <span style="color: #b1b100;">foreach</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$elements</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$col</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">foreach</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$chars</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$char</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
        <span style="color: #000088;">$elc</span> <span style="color: #339933;">=</span> <span style="color: #990000;">explode</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'|'</span><span style="color: #339933;">,</span><span style="color: #000088;">$char</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$update_line</span><span style="color: #339933;">.=</span> <span style="color: #0000ff;">'update '</span><span style="color: #339933;">.</span><span style="color: #000088;">$table</span><span style="color: #339933;">.</span><span style="color: #0000ff;">' set '</span><span style="color: #339933;">.</span><span style="color: #000088;">$col</span><span style="color: #339933;">.</span><span style="color: #0000ff;">' = REPLACE('</span><span style="color: #339933;">.</span><span style="color: #000088;">$col</span><span style="color: #339933;">.</span><span style="color: #0000ff;">', UNHEX(\''</span><span style="color: #339933;">.</span><span style="color: #000088;">$elc</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'\'), \''</span><span style="color: #339933;">.</span><span style="color: #000088;">$elc</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'\') ;'</span><span style="color: #339933;">.</span>PHP_EOL<span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'&lt; pre &gt;'</span><span style="color: #339933;">.</span><span style="color: #000088;">$update_line</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'&lt; / pre &gt;'</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://renoirboulanger.com/blog/2010/06/comment-remplacer-les-caracteres-bizzares-dans-wordpress-lorsqu-on-a-mal-fait-la-conversion/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Procédure pour créer un serveur FTP sécurisé SSL forcé avec usager virtuels sous Ubuntu Linux avec vsFTPd</title>
		<link>http://renoirboulanger.com/blog/2010/04/procedure-pour-creer-un-serveur-ftp-securise-ssl-force-avec-usager-virtuels-sous-ubuntu-linux-avec-vsftpd/</link>
		<comments>http://renoirboulanger.com/blog/2010/04/procedure-pour-creer-un-serveur-ftp-securise-ssl-force-avec-usager-virtuels-sous-ubuntu-linux-avec-vsftpd/#comments</comments>
		<pubDate>Fri, 30 Apr 2010 19:12:12 +0000</pubDate>
		<dc:creator>Renoir Boulanger</dc:creator>
				<category><![CDATA[Techniques]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[p52]]></category>
		<category><![CDATA[Sécurite]]></category>
		<category><![CDATA[Tutoriels]]></category>
		<category><![CDATA[UNIX]]></category>

		<guid isPermaLink="false">http://renoirboulanger.com/?p=2162</guid>
		<description><![CDATA[Procédure pour créer un serveur FTP sécurisé SSL forcé avec usager virtuels sous Ubuntu Linux avec vsFTPdJe ne sais pas si vous êtes comme moi mais je n&#8217;aime pas laisser non crypté l&#8217;accès a un service qui me demande un mot de passe. Je devait monter un serveur cette semaine qui doit avoir les accès [...]]]></description>
			<content:encoded><![CDATA[<a href='http://renoirboulanger.com/blog/2010/04/procedure-pour-creer-un-serveur-ftp-securise-ssl-force-avec-usager-virtuels-sous-ubuntu-linux-avec-vsftpd/' class='retweet '  style='display:block;margin:10px 0px;' >Procédure pour créer un serveur FTP sécurisé SSL forcé avec usager virtuels sous Ubuntu Linux avec vsFTPd</a><p>Je ne sais pas si vous êtes comme moi mais je n&#8217;aime pas laisser non crypté l&#8217;accès a un service qui me demande un mot de passe. Je devait monter un serveur cette semaine qui doit avoir les accès FTP.</p>
<p>J&#8217;ai pris l&#8217;initiative de sécuriser la machine avec du SSL car je crois qu&#8217;aujourd&#8217;hui c&#8217;est notre devoir de faire ce genre de chose. Ce n&#8217;est pas la première fois que je configure un serveur FTP over SSL mais je n&#8217;avait jamais pris de notes vraiment à ce jour. Je l&#8217;ai fait cette fois-ci!</p>
<h3><a name="ComptesFTPvirtuel%28sansutilisateurlocal%29sousUbuntuavecvsFTPdetcryptoSSL-Cequecetteproc%C3%A9durefait..."></a>Ce que cette procédure fait&#8230;</h3>
<ol>
<li>Pouvoir créer des comptes FTP sans avoir a créer un utilisateur local (donc pas accès shell (SSH)).</li>
<li>Permet les connections FTP over SSL de façon EXPLICITE sur un port non standard  (cet exemple utilisera le port <tt>6123</tt>)</li>
<li>Ne permet pas d&#8217;utilisateur ni de connexions anonymes</li>
<li>Bannit les hôtes qui tentent de se connecter (LOGIN FAILED)	via <strong>fail2ban</strong></li>
<li>Utilise le system PAM interne pour l&#8217;authentification</li>
<li>Ne requiert pas d&#8217;usager local (pas de risque de tentative de connection SSH, usager séparés)</li>
<li>Le serveur FTP roule sur son propre usager</li>
</ol>
<p><span id="more-2162"></span></p>
<h3><a name="ComptesFTPvirtuel%28sansutilisateurlocal%29sousUbuntuavecvsFTPdetcryptoSSL-Proc%C3%A9dure"></a>Procédure</h3>
<ol>
<li>Vérifier quelle version de serveur FTP est installé

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># dpkg --list | grep ftp</span>
~
ii  <span style="color: #c20cb9; font-weight: bold;">ftp</span>                               <span style="color: #000000;">0.17</span>-<span style="color: #000000;">19</span>                      The FTP client
ii  lftp                              3.7.15-1ubuntu2              Sophisticated command-line FTP<span style="color: #000000; font-weight: bold;">/</span>HTTP client p
ii  vsftpd                            2.2.0-1ubuntu1               lightweight, efficient FTP server written fo</pre></td></tr></table></div>

<p><strong>Note</strong> vsftpd est ce qu&#8217;on veut. Dans ce cas-ci il est déjà installé (ii).</li>
<li>Assurer que les prérequis sont installés

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># aptitude install vsftpd libpam-pwdfile openssl</span></pre></td></tr></table></div>

</li>
<li>Modifier le fichier de config <strong>vsftpd.conf</strong>.<br />
<strong>Note</strong> Modifiez pour ces valeurs (ci-bas) et conservez les autres valeurs par défaut.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># vi /etc/vsftpd.conf</span>
~
<span style="color: #007800;">anonymous_enable</span>=NO
<span style="color: #007800;">local_enable</span>=YES
<span style="color: #007800;">write_enable</span>=YES
<span style="color: #007800;">local_umask</span>=022
<span style="color: #007800;">chroot_local_user</span>=YES
<span style="color: #007800;">ftpd_banner</span>=Un nom Quelconque FTP
<span style="color: #007800;">nopriv_user</span>=vsftpd
&nbsp;
<span style="color: #666666; font-style: italic;"># renoirboulanger.com 2010-04-29 we will force usage on an other port</span>
<span style="color: #666666; font-style: italic;">#connect_from_port_20=YES</span></pre></td></tr></table></div>

</li>
<li>Ajouter ou corriger (étaient pas présents lorsque j&#8217;ai crée la procédure)

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># 2010-04-28 accès usager</span>
<span style="color: #007800;">virtual_use_local_privs</span>=YES
<span style="color: #007800;">guest_enable</span>=YES
<span style="color: #007800;">user_sub_token</span>=<span style="color: #007800;">$USER</span>
<span style="color: #007800;">local_root</span>=<span style="color: #000000; font-weight: bold;">/</span>home<span style="color: #000000; font-weight: bold;">/</span>ibottin<span style="color: #000000; font-weight: bold;">/</span>FTP<span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$USER</span>
<span style="color: #007800;">hide_ids</span>=YES</pre></td></tr></table></div>

<p><strong>Note</strong> Ajuster le <tt>local_root</tt> a l&#8217;endroit	ou envoyer les fichiers.</li>
<li>Activer le SSL
<ol>
<li>Créer le certificat

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># cd /etc/ssl</span>
<span style="color: #666666; font-style: italic;"># /usr/bin/openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout vsftpd.pem -out vsftpd.pem</span></pre></td></tr></table></div>

</li>
<li>Ajouter au <tt>/etc/vsftpd.conf</tt>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># vi /etc/vsftpd.conf</span>
~
<span style="color: #666666; font-style: italic;"># renoirboulanger.com 2010-04-30 SSL configuration</span>
<span style="color: #007800;">listen_port</span>=<span style="color: #000000;">6123</span>
<span style="color: #007800;">ftp_data_port</span>=<span style="color: #000000;">6122</span>
<span style="color: #007800;">pasv_min_port</span>=<span style="color: #000000;">6000</span>
<span style="color: #007800;">pasv_max_port</span>=<span style="color: #000000;">6100</span>
&nbsp;
<span style="color: #007800;">ssl_enable</span>=YES
<span style="color: #666666; font-style: italic;"># Allow anonymous users to use secured SSL connections</span>
<span style="color: #007800;">allow_anon_ssl</span>=YES
<span style="color: #666666; font-style: italic;"># All non-anonymous logins are forced to use a secure SSL connection in order to</span>
<span style="color: #666666; font-style: italic;"># send and receive data on data connections.</span>
<span style="color: #007800;">force_local_data_ssl</span>=NO
<span style="color: #666666; font-style: italic;"># All non-anonymous logins are forced to use a secure SSL connection in order to send the password.</span>
<span style="color: #007800;">force_local_logins_ssl</span>=YES
<span style="color: #007800;">ssl_tlsv1</span>=YES
<span style="color: #007800;">ssl_sslv2</span>=YES
<span style="color: #007800;">ssl_sslv3</span>=YES
<span style="color: #007800;">rsa_cert_file</span>=<span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>ssl<span style="color: #000000; font-weight: bold;">/</span>vsftpd.pem</pre></td></tr></table></div>

</li>
</ol>
</li>
<li><strong>Remplacer</strong> le contenu du fichier <tt>pam.d/vsftpd</tt>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># vi /etc/pam.d/vsftpd</span>
~
auth required pam_pwdfile.so pwdfile <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>vsftpd.passwd
account required pam_permit.so</pre></td></tr></table></div>

<p><strong>Note</strong> Il est important de remplacer le reste du fichier par ce contenu ci-haut.</li>
<li>Modifier permissions sur le fichier .pem

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># chown vsftpd /etc/ssl/vsftpd.pem</span></pre></td></tr></table></div>

</li>
<li>Redémarrer vsftpd

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># /etc/init.d/vsftpd restart</span></pre></td></tr></table></div>

</li>
<li>Créer le unix user qui va rouler le démon

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># adduser --system --no-create-home --disabled-login -s /usr/sbin/nologin --home /var/ftp vsftpd</span></pre></td></tr></table></div>

</li>
<li>Modifier les permissions pour l&#8217;utilisateur qui roule vsftpd (ajuster)

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># chown -R ftp:ftp /var/ftp/</span>
<span style="color: #666666; font-style: italic;"># chmod -R 740 /var/ftp</span></pre></td></tr></table></div>

</li>
<li><strong><a href="http://renoirboulanger.com/blog/2010/04/procedure-pour-creer-un-serveur-ftp-securise-ssl-force-avec-usager-virtuels-sous-ubuntu-linux-avec-vsftpd#ComptesFTPvirtuel%28sansutilisateurlocal%29sousUbuntuavecvsFTPdetcryptoSSL-AjouterunutilisateurFTP">Ajouter un utilisateur FTP</a></strong></li>
<li>Ajuster <tt>fail2ban</tt>
<div class="code panel" style="border-width: 1px;">
<div class="codeHeader panelHeader" style="border-bottom-width: 1px;"><strong>Ajuster le bloc [vsftpd]</strong></div>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># vi /etc/fail2ban/jail.conf</span>
~
<span style="color: #7a0874; font-weight: bold;">&#91;</span>vsftpd<span style="color: #7a0874; font-weight: bold;">&#93;</span>
&nbsp;
enabled  = <span style="color: #c20cb9; font-weight: bold;">true</span></pre></td></tr></table></div>

<p><strong>Note</strong> par defaut <tt>enabled</tt> est a false&#8230;	il faut l&#8217;activer.</p>
</div>
</li>
<li>Redémarrer vsftpd

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># /etc/init.d/vsftpd restart</span>
 <span style="color: #000000; font-weight: bold;">*</span> Stopping FTP server: vsftpd
   ...done.
 <span style="color: #000000; font-weight: bold;">*</span> Starting FTP server: vsftpd
   ...done.
<span style="color: #666666; font-style: italic;"># ps aux|grep vsftpd</span>
vsftpd   <span style="color: #000000;">18771</span>  <span style="color: #000000;">0.0</span>  <span style="color: #000000;">0.0</span>  <span style="color: #000000;">28904</span>  <span style="color: #000000;">1300</span> ?        Ss   <span style="color: #000000;">17</span>:09   <span style="color: #000000;">0</span>:00 <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>sbin<span style="color: #000000; font-weight: bold;">/</span>vsftpd
vsftpd   <span style="color: #000000;">18772</span>  <span style="color: #000000;">0.0</span>  <span style="color: #000000;">0.0</span>  <span style="color: #000000;">29100</span>  <span style="color: #000000;">1608</span> ?        S    <span style="color: #000000;">17</span>:09   <span style="color: #000000;">0</span>:00 <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>sbin<span style="color: #000000; font-weight: bold;">/</span>vsftpd
<span style="color: #c20cb9; font-weight: bold;">ftp</span>      <span style="color: #000000;">18773</span>  <span style="color: #000000;">0.0</span>  <span style="color: #000000;">0.0</span>  <span style="color: #000000;">28928</span>   <span style="color: #000000;">924</span> ?        S    <span style="color: #000000;">17</span>:09   <span style="color: #000000;">0</span>:00 <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>sbin<span style="color: #000000; font-weight: bold;">/</span>vsftpd
root     <span style="color: #000000;">18795</span>  <span style="color: #000000;">0.0</span>  <span style="color: #000000;">0.0</span>  <span style="color: #000000;">22628</span>  <span style="color: #000000;">1712</span> ?        S    <span style="color: #000000;">17</span>:<span style="color: #000000;">14</span>   <span style="color: #000000;">0</span>:00 <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>sbin<span style="color: #000000; font-weight: bold;">/</span>vsftpd
...</pre></td></tr></table></div>

<p><strong>Note</strong> les deux premiers <tt>vsftpd</tt> est le résultat attendu</li>
<li>Nous allons forcer le FTP over SSL sur le port <strong>6122</strong>, pour ça il faut autoriser le Firewall

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># iptables -A INPUT -m state --state ESTABLISHED,RELATED</span>
<span style="color: #666666; font-style: italic;"># iptables -A INPUT -m tcp -p tcp --dport 6122 -j ACCEPT</span>
<span style="color: #666666; font-style: italic;"># iptables -A INPUT -m state --state NEW,ESTABLISHED</span>
<span style="color: #666666; font-style: italic;"># iptables -A INPUT -m tcp -p tcp --dport 6123 -j ACCEPT</span>
<span style="color: #666666; font-style: italic;"># iptables -A INPUT -p tcp --dport 6000:6100 -j ACCEPT</span></pre></td></tr></table></div>

<p><strong>Source</strong>: <a href="http://my.afterdawn.com/ketola/blog_entry.cfm/1262/vsftpd_ssl_and_iptables">vsftpd SSL and iptables</a></li>
<li>Sauvegarder le Firewall

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># iptables-save &amp;gt; /etc/iptables.rules</span></pre></td></tr></table></div>

</li>
<li>Tester de l&#8217;extérieur avec un client FTP (Filezilla, etc)
<p>Voir les options suivantes a la connection</p>
<ol>
<li>port: 6123</li>
<li>Forcer le SSL</li>
</ol>
</li>
</ol>
<h3><a name="ComptesFTPvirtuel%28sansutilisateurlocal%29sousUbuntuavecvsFTPdetcryptoSSL-AjouterunutilisateurFTP"></a>Ajouter un utilisateur FTP</h3>
<p>On utilise le truc simple de htpasswd pour l&#8217;authentification. Pas de gossage <img src='http://renoirboulanger.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<h3><a name="ComptesFTPvirtuel%28sansutilisateurlocal%29sousUbuntuavecvsFTPdetcryptoSSL-Cr%C3%A9erunnouveaucompte"></a>Créer un nouveau compte</h3>
<ol>
<li>Créer le <em>premier compte</em>, sinon, <strong>passer	a la directive suivante</strong>! ou Utiliser mon script <a href="http://renoirboulanger.com/blog/2010/04/procedure-pour-creer-un-serveur-ftp-securise-ssl-force-avec-usager-virtuels-sous-ubuntu-linux-avec-vsftpd#ComptesFTPvirtuel%28sansutilisateurlocal%29sousUbuntuavecvsFTPdetcryptoSSL-Scriptpourcr%C3%A9eruncompteutilisateur">Script pour créer un compte utilisateur</a>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># htpasswd -c /etc/vsftpd.passwd ftpuser</span>
New password:
Re-type new password:
Adding password <span style="color: #000000; font-weight: bold;">for</span> user ftpuser</pre></td></tr></table></div>

<p><strong>Note</strong> l&#8217;option <strong><tt>-c</tt></strong> est	pour créer le fichier la première fois.</li>
<li>Voir les directives de *<a href="http://renoirboulanger.com/blog/2010/04/procedure-pour-creer-un-serveur-ftp-securise-ssl-force-avec-usager-virtuels-sous-ubuntu-linux-avec-vsftpd#ComptesFTPvirtuel%28sansutilisateurlocal%29sousUbuntuavecvsFTPdetcryptoSSL-Scriptpourcr%C3%A9eruncompteutilisateur">Script pour créer un compte utilisateur</a></li>
</ol>
<h3><a name="ComptesFTPvirtuel%28sansutilisateurlocal%29sousUbuntuavecvsFTPdetcryptoSSL-Ajouteroumodifierunutilisateur"></a><strong>Ajouter ou modifier un utilisateur</strong></h3>
<ol>
<li>Utiliser le script <strong><tt>evo-vsftpd-user</tt></strong>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">$ <span style="color: #c20cb9; font-weight: bold;">sudo</span> evo-vsftpd-user foo
Création d<span style="color: #ff0000;">'un nouvel usager dans /etc/vsftpd.passwd ...
New password:
Re-type new password:
Adding password for user foo
 ... OK
 * Création du dossier /home/ibottin/FTP/foo ...  OK
 * Changement des permissions du dossier ...  OK
Terminé!</span></pre></td></tr></table></div>

<p>Voir les directives de <strong><a href="http://renoirboulanger.com/blog/2010/04/procedure-pour-creer-un-serveur-ftp-securise-ssl-force-avec-usager-virtuels-sous-ubuntu-linux-avec-vsftpd#ComptesFTPvirtuel%28sansutilisateurlocal%29sousUbuntuavecvsFTPdetcryptoSSL-Scriptpourcr%C3%A9eruncompteutilisateur">Script pour créer un compte utilisateur</a></strong></li>
</ol>
<h3><a name="ComptesFTPvirtuel%28sansutilisateurlocal%29sousUbuntuavecvsFTPdetcryptoSSL-Scriptpourcr%C3%A9eruncompteutilisateur"></a>Script pour créer un compte utilisateur</h3>
<ol>
<li>Créer le fichier

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># vi /usr/sbin/evo-vsftpd-user</span></pre></td></tr></table></div>

</li>
<li>Coller le contenu

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/bash</span>
<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #660033;">-z</span> $<span style="color: #000000;">1</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
  <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Aucun argument usager fourni&quot;</span>
  <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;usage: sudo evo-vsftpd-user foo&quot;</span>
  <span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">1</span>;
<span style="color: #000000; font-weight: bold;">fi</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$(whoami)</span>&quot;</span> <span style="color: #000000; font-weight: bold;">!</span>= <span style="color: #ff0000;">'root'</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
  <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Vous n'avez pas les permisions utilisateur requises.&quot;</span>
  <span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">1</span>;
<span style="color: #000000; font-weight: bold;">fi</span>
&nbsp;
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Création d'un nouvel usager dans /etc/vsftpd.passwd ... &quot;</span>
htpasswd <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>vsftpd.passwd $<span style="color: #000000;">1</span>
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot; ... OK &quot;</span>
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-n</span> <span style="color: #ff0000;">&quot; * Création du dossier /home/ibottin/FTP/$1 ... &quot;</span>
<span style="color: #c20cb9; font-weight: bold;">mkdir</span> <span style="color: #000000; font-weight: bold;">/</span>home<span style="color: #000000; font-weight: bold;">/</span>ibottin<span style="color: #000000; font-weight: bold;">/</span>FTP<span style="color: #000000; font-weight: bold;">/</span>$<span style="color: #000000;">1</span>
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot; OK&quot;</span>
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-n</span> <span style="color: #ff0000;">&quot; * Changement des permissions du dossier ... &quot;</span>
<span style="color: #c20cb9; font-weight: bold;">chown</span> <span style="color: #660033;">-R</span> <span style="color: #c20cb9; font-weight: bold;">ftp</span>:<span style="color: #c20cb9; font-weight: bold;">ftp</span> <span style="color: #000000; font-weight: bold;">/</span>home<span style="color: #000000; font-weight: bold;">/</span>ibottin<span style="color: #000000; font-weight: bold;">/</span>FTP<span style="color: #000000; font-weight: bold;">/</span>$<span style="color: #000000;">1</span>
<span style="color: #c20cb9; font-weight: bold;">chmod</span> <span style="color: #660033;">-R</span> <span style="color: #000000;">740</span> <span style="color: #000000; font-weight: bold;">/</span>home<span style="color: #000000; font-weight: bold;">/</span>ibottin<span style="color: #000000; font-weight: bold;">/</span>FTP<span style="color: #000000; font-weight: bold;">/</span>$<span style="color: #000000;">1</span>
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot; OK&quot;</span>
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Terminé!&quot;</span></pre></td></tr></table></div>

</li>
<li>Rendre exécutable

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># chmod +x /usr/sbin/evo-vsftpd-user</span></pre></td></tr></table></div>

</li>
</ol>
<h3><a name="ComptesFTPvirtuel%28sansutilisateurlocal%29sousUbuntuavecvsFTPdetcryptoSSL-Tester"></a>Tester</h3>
<ol>
<li>Installer le paquet pour tester
<div class="code panel" style="border-width: 1px;">
<div class="codeContent panelContent">

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># aptitude install ftp-ssl</span></pre></td></tr></table></div>

</div>
</div>
</li>
<li>Tester

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># ftp-ssl someserver.net 6123</span>
Connected to someserver.net.
<span style="color: #000000;">220</span> Un nom Quelconque FTP
Name <span style="color: #7a0874; font-weight: bold;">&#40;</span>someserver.net:renoirboulanger<span style="color: #7a0874; font-weight: bold;">&#41;</span>: ftpuser
<span style="color: #000000;">234</span> Proceed with negotiation.
<span style="color: #7a0874; font-weight: bold;">&#91;</span>SSL Cipher DES-XXXX-SHA<span style="color: #7a0874; font-weight: bold;">&#93;</span>
<span style="color: #000000;">331</span> Please specify the password.
Password:
<span style="color: #000000;">230</span> Login successful.
Remote system <span style="color: #7a0874; font-weight: bold;">type</span> is UNIX.
Using binary mode to transfer files.
<span style="color: #c20cb9; font-weight: bold;">ftp</span><span style="color: #000000; font-weight: bold;">&amp;</span>gt;</pre></td></tr></table></div>

<p><strong>Note</strong> [SSL Cipher DES-XXXX-SHA] est ce qu&#8217;on attend <img src='http://renoirboulanger.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </li>
</ol>
<h3><a name="ComptesFTPvirtuel%28sansutilisateurlocal%29sousUbuntuavecvsFTPdetcryptoSSL-Pourd%C3%A9boguer"></a>Pour déboguer</h3>
<p>Le feedback est assez difficile a avoir de la part de vsftpd, mais pour en voir plus:</p>
<ol>
<li>Pour le debug

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># vi /etc/vsftpd.conf</span>
~
<span style="color: #666666; font-style: italic;"># for debuging</span>
<span style="color: #007800;">log_ftp_protocol</span>=YES</pre></td></tr></table></div>

</li>
</ol>
<h3><a name="ComptesFTPvirtuel%28sansutilisateurlocal%29sousUbuntuavecvsFTPdetcryptoSSL-Ressources"></a>Ressources</h3>
<ul>
<li><a href="http://wjholden.com/vsftpd-help.html">vsftpd help</a></li>
<li><a href="http://vsftpd.beasts.org/vsftpd_conf.html">vsftpd.conf manpages</a></li>
<li><a href="http://my.afterdawn.com/ketola/blog_entry.cfm/1262/vsftpd_ssl_and_iptables">vsftpd SSL and iptables</a></li>
<li><a href="http://www.ubuntututorials.net/installing-vsftpd-using-text-file-for-virtual-users/">Installing vsftpd using text file for virtual users</a></li>
<li><a href="http://www.cyberciti.biz/tips/configure-vsfptd-secure-connections-via-ssl-tls.html">Vsftpd SSL / TLS FTP Server Configuration</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://renoirboulanger.com/blog/2010/04/procedure-pour-creer-un-serveur-ftp-securise-ssl-force-avec-usager-virtuels-sous-ubuntu-linux-avec-vsftpd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>La semaine Des logiciels libres à Montréal «MonDev»</title>
		<link>http://renoirboulanger.com/blog/2010/04/la-semaine-des-logiciels-libres-a-montreal-mondev/</link>
		<comments>http://renoirboulanger.com/blog/2010/04/la-semaine-des-logiciels-libres-a-montreal-mondev/#comments</comments>
		<pubDate>Thu, 15 Apr 2010 17:30:06 +0000</pubDate>
		<dc:creator>Renoir Boulanger</dc:creator>
				<category><![CDATA[Actualites]]></category>
		<category><![CDATA[Open-Source]]></category>
		<category><![CDATA[Technologies]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[devlab]]></category>
		<category><![CDATA[evenements]]></category>
		<category><![CDATA[mondev]]></category>
		<category><![CDATA[p52]]></category>

		<guid isPermaLink="false">http://renoirboulanger.com/?p=2064</guid>
		<description><![CDATA[La semaine Des logiciels libres à Montréal «MonDev»Durant la semaine du 24 au 28 Mai 2010 aura lieu la semaine des logiciels libres MonDev. Pour cette semaine particulière nous allons vous guider sur les activités geek de la semaine.
Au menu: Rencontrer les membres de la communauté des logiciels libres à Montréal, notamment: les gens de [...]]]></description>
			<content:encoded><![CDATA[<a href='http://renoirboulanger.com/blog/2010/04/la-semaine-des-logiciels-libres-a-montreal-mondev/' class='retweet '  style='display:block;margin:10px 0px;' >La semaine Des logiciels libres à Montréal «MonDev»</a><div id="attachment_2094" class="wp-caption alignright" style="width: 280px"><img class="size-full wp-image-2094 " title="MonDev" src="http://renoirboulanger.com/wp-content/uploads/2010/03/mondev_logo.png" alt="MonDev" width="270" height="159" /><p class="wp-caption-text">Montreal Open Source Week - La semaine des Logiciels Libres de Montréal MonDev</p></div>
<p>Durant la semaine du 24 au 28 Mai 2010 aura lieu la semaine des logiciels libres <a href="http://mondev.org">MonDev</a>. Pour cette semaine particulière nous allons vous guider sur les activités <em>geek</em> de la semaine.</p>
<p>Au menu: Rencontrer les membres de la communauté des logiciels libres à Montréal, notamment: les gens de PHPQuébec, et de TikiWiki.</p>
<p>Le but principal de levenement est de créer un podium pour les logiciels libres durant. Nous avons décide de faire l&#8217;événement durant la semaine du Webcom Montréal 2010 parceque beaucoup de gens viendront de loin pour voir le Webcom et le Make Web Not War et on sent qu&#8217;on pourrait faire d&#8217;autres événements qui pourraient nous intéresser autant que nos visiteurs.</p>
<p><span id="more-2064"></span></p>
<h3>Traduction de l&#8217;annonce officielle du MonDev</h3>
<p>J&#8217;ai traduit l&#8217;annonce officielle et je voulait la partager ici:</p>
<blockquote><p>La semaine consacrée aux Logiciels «Open Source» (Libres) MonDev, se  veut être une célébration de la technologie des Logiciels Libres et communautaires de toute la région de Montréal.</p>
<p>Joignez-vous à la fête en participant à nos événements, pour ne citer que ceux ci :</p>
<ul>
<li>Le <a href="http://webcom-montreal.com/">Webcom 2010 de Montréal</a></li>
<li>L&#8217;événement «<a href="http://webnotwar.ca/">Make Web Not War</a>» de Microsoft</li>
</ul>
<p>L&#8217;idéologie des Logiciels Libres est une philosophie et une pratique qui est en train de révolutionner le développement logiciel dans le monde.</p>
<p>En encourageant les partenariats locaux et internationaux, les développeurs de Logiciels Libres sont à la fondation des logiciels libres de qualité qui peuvent être constamment mis à jour et partagées par et pour la communauté. Pour les innovateurs de nombreux logiciels,<br />
les Logiciels Libres représentent le futur du développement de logiciels.</p>
<p>Grâce aux Logiciels Libres les communautés, villes et pays du monde ont la chance d&#8217;évoluer, d&#8217;apprendre, de collaborer et d&#8217;innover sans les restrictions des environnements fermés.</p>
<p>Montréal est un centre important de l&#8217;activité mondiale du Logiciel Libre et abrite de nombreux développeurs, et entreprises qui partagent cette idéologie. La semaine réunira des leaders de l&#8217;industrie, des enseignants et des étudiants de partout dans le monde pour une semaine complète. Plusieurs ateliers et séminaires seront prévus.</p>
<p><strong>source</strong>: Texte descriptif fait par <a href="http://dropthedigibomb.com/">DigiBomb</a>, traduit par <a href="http://renoirboulanger.com/">Renoir Boulanger</a> pour <a href="http://mondev.org">MonDev.org</a></p></blockquote>
<h3>A la recherche de présentations pour le MonDev</h3>
<p>Au MonDev, nous sommes actuellement à la recherche de volontaires pour faire une présentation dans un format similaire au Ignite.</p>
<blockquote><p>Chaque participant a 5 minutes pour présenter son sujet avec 20 écrans a 20 secondes par écrans.</p></blockquote>
<p>Avec comme thématique les logiciels libres.</p>
<h3>Pour participer!</h3>
<p>L&#8217;équipe d&#8217;organisation du MonDev offre un horraire qui vous permet d&#8217;aller autant au Make Web Not War 2010 et au WebCom que d&#8217;autres événements connexes.</p>
<ul>
<li><strong><a href="http://mondev.org/general/schedule/">Consulter l&#8217;horraire des activités de la semaine &gt;</a></strong></li>
<li><strong><a href="http://mondev.org/submit/">Soumettre votre sujet pour les présentations pour le MonDev &gt;</a></strong></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://renoirboulanger.com/blog/2010/04/la-semaine-des-logiciels-libres-a-montreal-mondev/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Trois Geeks cherchent un nouveau Loyer sur Montréal</title>
		<link>http://renoirboulanger.com/blog/2010/04/trois-geeks-cherchent-un-nouveau-loyer-sur-montreal/</link>
		<comments>http://renoirboulanger.com/blog/2010/04/trois-geeks-cherchent-un-nouveau-loyer-sur-montreal/#comments</comments>
		<pubDate>Mon, 05 Apr 2010 19:26:08 +0000</pubDate>
		<dc:creator>Renoir Boulanger</dc:creator>
				<category><![CDATA[Actualites]]></category>
		<category><![CDATA[Tranche de vie]]></category>
		<category><![CDATA[#fb]]></category>
		<category><![CDATA[#in]]></category>
		<category><![CDATA[p52]]></category>
		<category><![CDATA[Projets]]></category>

		<guid isPermaLink="false">http://renoirboulanger.com/?p=2067</guid>
		<description><![CDATA[Trois Geeks cherchent un nouveau Loyer sur MontréalÇa y est nous en sommes rendus là. Ça fait un bout qu&#8217;on est dans ce petit 5 1/2 et nous voulons voir si ce serait pas mieux ailleurs.
C&#8217;est super cool avoir un salon de la mort avec toutes nos choses installés pour travailler, nous voulons voir si [...]]]></description>
			<content:encoded><![CDATA[<a href='http://renoirboulanger.com/blog/2010/04/trois-geeks-cherchent-un-nouveau-loyer-sur-montreal/' class='retweet '  style='display:block;margin:10px 0px;' >Trois Geeks cherchent un nouveau Loyer sur Montréal</a><div id="attachment_2068" class="wp-caption alignright" style="width: 322px"><a href="http://renoirboulanger.com/wp-content/uploads/2010/04/david-sones-snailhome.jpg" rel="lightbox[2067]"><img class="size-full wp-image-2068  " title="Un escargot avec sa maison" src="http://renoirboulanger.com/wp-content/uploads/2010/04/david-sones-snailhome.jpg" alt="" width="312" height="396" /></a><p class="wp-caption-text">Un escargot avec sa maison par David Sones</p></div>
<p>Ça y est nous en sommes rendus là. Ça fait un bout qu&#8217;on est dans ce petit 5 1/2 et nous voulons voir si ce serait pas mieux ailleurs.</p>
<p>C&#8217;est super cool avoir un salon de la mort avec toutes nos choses installés pour travailler, nous voulons voir si il n&#8217;y aurait pas plus grand et plus central.</p>
<h3>Ce qu&#8217;on cherche</h3>
<p>Si vous avez des «plugs» pour un logement pour trois hommes, qui aurait:</p>
<ul>
<li>Trois grandes chambres</li>
<li>Beaucoup de fenêtres</li>
<li>Près du Centre-ville, ou sur le Plateau</li>
<li>Endroits de stationement réservés possible</li>
<li>Espace Laveuse-Sécheuse</li>
</ul>
<h3>Pour qui?</h3>
<p>Nous trois, les Geeks: <a href="http://stephanchampagne.com/">Stéphan</a>, <a href="http://etiennelachance.com/">Etienne</a>, et <a href="http://renoirboulanger.com/about/">moi</a>.</p>
<h3>Vos suggestions</h3>
<p><a href="http://renoirboulanger.com/me-joindre/">Contactez moi via le formulaire</a> et je ferai le suivi avec chacun d&#8217;entre vous.</p>
]]></content:encoded>
			<wfw:commentRss>http://renoirboulanger.com/blog/2010/04/trois-geeks-cherchent-un-nouveau-loyer-sur-montreal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Êtes-vous victime d&#8217;espionnage via votre profil dans les médias sociaux</title>
		<link>http://renoirboulanger.com/blog/2010/03/etes-vous-victime-despionnage-via-votre-profil-dans-les-medias-sociaux/</link>
		<comments>http://renoirboulanger.com/blog/2010/03/etes-vous-victime-despionnage-via-votre-profil-dans-les-medias-sociaux/#comments</comments>
		<pubDate>Mon, 22 Mar 2010 10:11:35 +0000</pubDate>
		<dc:creator>Renoir Boulanger</dc:creator>
				<category><![CDATA[Actualites]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[#fb]]></category>
		<category><![CDATA[#in]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[fraude]]></category>
		<category><![CDATA[p52]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://renoirboulanger.com/?p=2038</guid>
		<description><![CDATA[Êtes-vous victime d&#8217;espionnage via votre profil dans les médias sociauxJ&#8217;ai reçu hier une invitation d&#8217;amitié sur Facebook. Un prénom féminin que je ne me rappelle pas avoir connu. Pas de photos, ou presque. Au début je me suis dit que c&#8217;était une amie d&#8217;une amie. Car elle avait des amis communs aux miens.
J&#8217;ai quand même [...]]]></description>
			<content:encoded><![CDATA[<a href='http://renoirboulanger.com/blog/2010/03/etes-vous-victime-despionnage-via-votre-profil-dans-les-medias-sociaux/' class='retweet '  style='display:block;margin:10px 0px;' >Êtes-vous victime d&#8217;espionnage via votre profil dans les médias sociaux</a><div id="attachment_2040" class="wp-caption alignright" style="width: 385px"><a href="http://renoirboulanger.com/wp-content/uploads/2010/03/spy_vs_spy_counterserveilla.jpg" rel="lightbox[2038]"><img class="size-full wp-image-2040" title="Spy Vs. Spy" src="http://renoirboulanger.com/wp-content/uploads/2010/03/spy_vs_spy_counterserveilla.jpg" alt="Spy Vs. Spy" width="375" height="230" /></a><small><a href="http://en.wikipedia.org/wiki/Spy_vs._Spy">Lien wikipedia</a></small><p class="wp-caption-text">Crédit: Spy Vs. Spy © Antonio Prohías</p></div>
<p>J&#8217;ai reçu hier une invitation d&#8217;amitié sur Facebook. Un prénom féminin que je ne me rappelle pas avoir connu. Pas de photos, ou presque. Au début je me suis dit que c&#8217;était une amie d&#8217;une amie. Car elle avait des amis communs aux miens.</p>
<p>J&#8217;ai quand même été curieux de savoir qui voulait m&#8217;ajouter et discuter avec elle.. vous savez, des retrouvailles!</p>
<p>C&#8217;est là que des clochettes se sont mises a sonner. Ça sent le profil bidon.</p>
<p>Ce qui est brillant de ce subterfuge c&#8217;est qu&#8217;une fois le profil bidon a des «amis», il peut «écouter» ce qui se dit et profiter des permissions de facebook &#8220;Allow friends of friends&#8221; qui peut permettre a BEAUCOUP de personne. C&#8217;est donc l&#8217;idéal, le profil bidon eut profiter de toutes les informations générés par les actions et pouvoir envoyer du «<a href="http://fr.wikipedia.org/wiki/Spam">spam</a>».</p>
<p>L&#8217;idée de ce billet est de partager avec vous les pistes que je suis généralement pour détecter qu&#8217;il s&#8217;agit d&#8217;une interaction électronique bidon pour sous-tirer des informations confidentielles.</p>
<p>Il faut comprendre que tout ceci n&#8217;est pas limité qu&#8217;a Facebook. Il s&#8217;agit ici encore d&#8217;une des plusieurs attrapes-nigauds qui sont tendus sur le web.</p>
<p><span id="more-2038"></span></p>
<h3>Pourquoi?</h3>
<p>Je sais que c&#8217;est chose courrante car étant un homme célibataire dans   la trentaine je suis une cible convoitée des annonceurs frauduleux de   sites de rencontre à toutes les sauces. J&#8217;ai déjà même vu des vrais faux   profils qui t&#8217;invitent a un site XYZ pour aller y discuter.  En   m&#8217;envoyant un courriel.  Vraiment, on nous prend pour des cons.</p>
<p>Les raisons peuvent être multiples. Collectionner les adresses courriel et les noms. Avoir des données sur les habitudes et pouvoir y associer un courriel puis ensuite pouvoir y cibler des campagnes de marketing douteuses. Un seul acheteur sur mille&#8230; lorsqu&#8217;on essaie avec des millions de personnes ça peut être payant.</p>
<p>Ce qu&#8217;ils peuvent en tirer?</p>
<p>Si je continue sur le cas de facebook, les espions peuvent en tirer  beaucoup de contenus! Ce qui peut vous en tirer c&#8217;est rapidement c&#8217;est d&#8217;entretenir dans «Amis uniquement».</p>
<p>Les paramètres de facebook se sont beaucoup améliorés justement a cet effet, il faut simplement prendre le temps de le faire.</p>
<h3>Comment détecter?</h3>
<p>Voici quelques unes de mes pistes&#8230;</p>
<h4>Sur facebook</h4>
<ol>
<li>Une fille/gars sexy que tu n&#8217;a jamais connu tente de te contacter pour discuter</li>
<li>Aucune réelle activité dans son mur</li>
<li>Aucun résultats de jeux</li>
<li>Aucun statut</li>
<li>Une photo de très haute qualité et la seule de son profil. Aucune photo plus ou moins amateur.</li>
</ol>
<h4>En général</h4>
<ol>
<li><strong>Écrit dans une langue douteuse avec des «m0t5 su bs7iu é5» (mots substitués)</strong><br />
Quoi qu&#8217;aujourd&#8217;hui c&#8217;est beaucoup moins fréquent.</li>
<li><strong>Vous correspondez uniquement en français et la communication est clairement remplie de fautes ou dans une autre langue.</strong><br />
Celle là elle est facile!</li>
<li><strong>Un courriel ou une communication qui vous invite a communiquer «plus facilement» sur un autre site qui est inconnu. </strong><br />
Celui la je pourrai en parler longtemps. Surtout que le plus facile c&#8217;est le téléphone ou le courriel. Si une personne vous rejoint par courriel&#8230; pourquoi retourner sur un site communiquer?</li>
<li><strong>Le courriel ressemble réellement a une invitation d&#8217;un site que vous utilisez</strong> (Phishing)<br />
Il arrive parfois de recevoir des invitations a se connecter au compte en banque d&#8217;une banque X connue mais que je sais pertinemment que je n&#8217;ai aucun avoirs.</li>
</ol>
<div id="attachment_2052" class="wp-caption alignright" style="width: 188px"><img class="size-full wp-image-2052  " title="Dialogue Facebook, Accès au Parametres de confidentialité" src="http://renoirboulanger.com/wp-content/uploads/2010/03/facebook_dialog_security_compteparametres.png" alt="Dialogue Facebook, Accès au Parametres de confidentialité" width="178" height="215" /><p class="wp-caption-text">Dialogue Facebook, Accès au Parametres de confidentialité</p></div>
<div id="attachment_2051" class="wp-caption alignright" style="width: 169px"><img class="size-full wp-image-2051 " title="Dialogue Facebook, bouton Amis uniquement" src="http://renoirboulanger.com/wp-content/uploads/2010/03/facebook_dialog_security_amis.png" alt="Dialogue Facebook, bouton Amis uniquement" width="159" height="39" /><p class="wp-caption-text">Dialogue Facebook, bouton Amis uniquement</p></div>
<p>Je crois avoir fait le tour de mes indices.</p>
<h3>Comment éviter de se faire attraper?</h3>
<p>Il n&#8217;y a pas de recettes  miracle. Personnellement le simple fait de se tenir informé des  méthodes qu&#8217;ils utilisent.</p>
<h3>Suggestions, indices?</h3>
<p>Si vous avez des idées, indices, suggestions, faites moi le savoir dans le <a href="http://renoirboulanger.com/blog/2010/03/etes-vous-victime-despionnage-via-votre-profil-dans-les-medias-sociaux#comments">fil de commentaires</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://renoirboulanger.com/blog/2010/03/etes-vous-victime-despionnage-via-votre-profil-dans-les-medias-sociaux/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>La première de Ignite Montréal</title>
		<link>http://renoirboulanger.com/blog/2010/03/la-premiere-de-ignite-montreal/</link>
		<comments>http://renoirboulanger.com/blog/2010/03/la-premiere-de-ignite-montreal/#comments</comments>
		<pubDate>Wed, 03 Mar 2010 12:41:27 +0000</pubDate>
		<dc:creator>Renoir Boulanger</dc:creator>
				<category><![CDATA[Actualites]]></category>
		<category><![CDATA[GeekNight]]></category>
		<category><![CDATA[evenements]]></category>
		<category><![CDATA[ignitemtl]]></category>
		<category><![CDATA[p52]]></category>
		<category><![CDATA[social]]></category>

		<guid isPermaLink="false">http://renoirboulanger.com/?p=1943</guid>
		<description><![CDATA[La première de Ignite Montréal
Mardi 2 Mars 2010 avait lieu la première soirée de Ignite Montréal. Il s&#8217;agit dune soirée ou les participants ont 5 minutes pour nous parler d&#8217;un sujet avec comme seul appui un micro et des diapositives avec 15 secondes par diapo. L&#8217;événement de Montreal est lune parmi plusieurs organises dans le [...]]]></description>
			<content:encoded><![CDATA[<a href='http://renoirboulanger.com/blog/2010/03/la-premiere-de-ignite-montreal/' class='retweet '  style='display:block;margin:10px 0px;' >La première de Ignite Montréal</a><div style="float:right;padding:0px 0px 15px 15px;"><img src="http://renoirboulanger.com/wp-content/uploads/2010/03/logo.png" alt="Ignite Montréal." title="Ignite Montréal." width="260" height="200" class="alignnone size-full wp-image-1945" style="border:none" /></div>
<p>Mardi 2 Mars 2010 avait lieu la première soirée de <a href="http://www.ignitemontreal.com/">Ignite Montréal</a>. Il s&#8217;agit dune soirée ou les participants ont 5 minutes pour nous parler d&#8217;un sujet avec comme seul appui un micro et des diapositives avec 15 secondes par diapo. L&#8217;événement de Montreal est lune parmi plusieurs organises dans le monde par O&#8217;Reily Radar lors de la semaine #giw &#8220;<span lang="en">Global Ignite Week</span>&#8220;.</p>
<p>Le défi de traduit ainsi: <q>&#8220;Éclaire nous, mais fait ça vite&#8221;</q></p>
<p>A la première vue je m&#8217;attendais a <em>un autre événement</em> de blogeurs et d&#8217;entendre parler que de web2.0 et médias sociaux: Je n&#8217;avai pas fait mes devoirs car la site avait fourni la liste des participants.</p>
<p>J&#8217;ai été très agreablement surpris et intéresse par la multitude de sujets.</p>
<p>En fait je ne l&#8217;ai pas réalisé avant mon entrée dans la salle de <em>Sala Rossa</em> j&#8217;ai vu sur scène <a href="http://www.facebook.com/profile.php?id=5156506753">Annie Dussault </a> qui parlait de comment faire un <em><a href="http://en.wikipedia.org/wiki/Quinzhee">Quin-zhee</a></em> (un abri fait en neige). Elle venait tout juste de commencer sur scène. J&#8217;ai été frappé dès lors que ce soir on ne parlerait pas que du web(!!).</p>
<p>J&#8217;était surpris de voir Annie sur scène car je l&#8217;ai déjà rencontré dans un tout autre contexte. C&#8217;était une formation <em>[Scoute]</em> au <a href="http://www.scoutsmm.qc.ca">District du Montréal Métropolitain</a>.</p>
<p><object width="425" height="350"><param name="movie" value="7fzt7JSc4aM"></param><param name="wmode" value="transparent" ></param><embed src="http://www.youtube.com/v/7fzt7JSc4aM" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object></p>
<p>&nbsp;</p>
<h3>Les sujets couverts</h3>
<p>Il y avait ce soir la <a href="http://twitter.com/junkbop">Jonathan Karpfen</a> qui parlait des interfaces utilisateurs comment replacer Qui, quoi, quand, comment aux bons endroits. Il a surpris la salle avec un simple cercle sur fond blanc en disant: «<em>The Nipple is the only intuitive user-interface</em>».<br />
<blockquote style="font-size:190%;float:left;width:140px;padding-right:20px;color:#777;text-align:right;" lang="en">The Nipple is the only intuitive user-interface <br /><span style="font-size:50%">&mdash; <a href="http://twitter.com/junkbop" style="color:#555;">Jonathan Karpfen</a></span></p></blockquote>
<p><a href="http://twitter.com/maxfinder">Max Finder</a> qui expliquait comment a son avis le modèle des université est pas si merveilleux que ça et ce qu&#8217;il y a appris.</p>
<p>Il y en a eu <a href="http://www.ignitemontreal.com/2010/02/24/ignite-montreal-speakers/">plusieurs autres</a> qui étaient tous très intéressants dans leur sujets.</p>
<p>&nbsp;</p>
<h3>Mon coup de cœur</h3>
<p><a href="http://twitter.com/sylaucoin">Sylvie Aucoin</a> qui a partagé avec nous son expérience de vie assez particulière car elle a vécu plus de 466 jours sans domicile fixe. Elle nous a expliqué comment se débrouiller dans la rue pour y survivre.</p>
<p><object width="425" height="350"><param name="movie" value="H5TaqO-n0lQ"></param><param name="wmode" value="transparent" ></param><embed src="http://www.youtube.com/v/H5TaqO-n0lQ" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object></p>
<h3>Ignite, c&#8217;est quoi?</h3>
<p>Ce fut une soirée mémorable et une belle découverte. L&#8217;événement <em>Ignite Montréal</em> fait partie d&#8217;un événement global qui se déroule sur les six continents dans 65 villes du monde. Nous avons passé une très bonne soirée et nous comptons assister aux prochaines.</p>
<p>&nbsp;</p>
<h3>Sur la même soirée</h3>
<ul>
<li><a href="http://communities.canada.com/MONTREALGAZETTE/blogs/tech/archive/2010/03/03/now-i-know-how-to-survive-on-the-streets.aspx">Article dans The Gazette</a></li>
<li><a href="http://twitter.com/ignitemtl/ignite-1-speakers">Liste Twitter des speakers</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://renoirboulanger.com/blog/2010/03/la-premiere-de-ignite-montreal/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Crash Course sur les environnements Java</title>
		<link>http://renoirboulanger.com/blog/2010/02/crash-course-sur-les-environnements-java/</link>
		<comments>http://renoirboulanger.com/blog/2010/02/crash-course-sur-les-environnements-java/#comments</comments>
		<pubDate>Thu, 25 Feb 2010 17:13:15 +0000</pubDate>
		<dc:creator>Renoir Boulanger</dc:creator>
				<category><![CDATA[Technologies]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[p52]]></category>
		<category><![CDATA[Tutoriels]]></category>
		<category><![CDATA[Vulgarisation]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://renoirboulanger.com/?p=1927</guid>
		<description><![CDATA[Crash Course sur les environnements JavaJe suis actuellement en mode &#8220;Documentation&#8221; et je me suis dit que le web pourrait profiter d&#8217;un résumé, en français, du Jargon de l&#8217;univers Java.
Je ne suis pas un développeur Java mais j&#8217;ai eu a administrer des serveurs pendant 4 ans, et j&#8217;en fais encore aujourd&#8217;hui. Ce document résume ma [...]]]></description>
			<content:encoded><![CDATA[<a href='http://renoirboulanger.com/blog/2010/02/crash-course-sur-les-environnements-java/' class='retweet '  style='display:block;margin:10px 0px;' >Crash Course sur les environnements Java</a><p>Je suis actuellement en mode &#8220;Documentation&#8221; et je me suis dit que le web pourrait profiter d&#8217;un résumé, en français, du Jargon de l&#8217;univers Java.</p>
<p>Je ne suis pas un développeur Java mais j&#8217;ai eu a administrer des serveurs pendant 4 ans, et j&#8217;en fais encore aujourd&#8217;hui. Ce document résume ma compréhension des usages. Si vous avez des suggestions ou vous voulez me corriger, dites-moi le <a href="http://renoirboulanger.com/blog/2010/02/crash-course-sur-les-environnements-java#comments">dans les commentaires</a> et j&#8217;ajusterai mon billet.</p>
<p>&nbsp;</p>
<h3>Les versions</h3>
<p>La majeure différence entre les Java réside dans leur version et ce qui y est distribué avec. La différence majeure réside entre</p>
<ul>
<li><strong>JDK </strong>(Java Development Kit),</li>
<li><strong>JRE </strong>(Java Runtime Environement), et finalement il existe aussi la</li>
<li><strong>JME </strong>(Java Mobile Edition) pour les devices mobile.</li>
</ul>
<p>C’est un peu comme une distribution Windows XP Professionnel ou Windows XP Media Centre.</p>
<p>Il existe plusieurs distributeurs d’environnement Java, notamment : <strong>IBM</strong>, <strong>SUN</strong>, <strong>OpenJdk</strong>. La norme et elles sont toutes basés sur la JVM de SUN Microsystems. <em>L’inventeur </em>de Java.</p>
<p>L’Avantage majeur de Java est le fait qu’il existe des distributions pour toutes les plateformes : Windows, Mac, Linux, Solaris, FreeBSD, etc.</p>
<p>&nbsp;</p>
<h3>Termes fréquemment utilisés</h3>
<ul>
<li>« <strong>JVM </strong>» (Java Virtual Machine) est en fait l’appellation utilisée pour parler de ce qui est exécuté. Ce qui est ci-haut mentionné exécutent toutes des JVM… avec des classes (<em>jar</em>) différentes.</li>
<li>« <strong>Jar </strong>» est en fait, grosso-modo, une archive zippée d’un dossier de classe.</li>
<li>« <strong>Class </strong>» une classe compilée Java.
	</li>
<li>« Container » est en fait ce qu’on appelle un Serveur applicatif. Bref, un serveur http qui roule les classes Java.</li>
<li>« <strong>J2EE </strong>» est un accronyme qui peut être vue comme une spécification technique (penser ISO) fournie par SUN pour les standards d’environnement d’exécution (« <em><strong>Container </strong></em>»).</li>
</ul>
<p>&nbsp;</p>
<h3>Serveur Applicatif</h3>
<p>Il en existe plusieurs. La norme avec les logiciels suivant la tendance Open-Source utilisent la version Apache du container J2EE appelé Tomcat. Atlassian utilise Tomcat dans ses version « self hosted » distribués.</p>
</p>
<p>Il en existe d’autres comme Glassfish de Sun Microsystem, WebObjects de Apple, Tomcat de Apache Foundation, JBoss de RedHat, WebSphere de IBM, et bien d’autres.</p>
</p>
<p>&nbsp;</p>
<h3>Une classe</h3>
<p>C&#8217;est quoi?.  C&#8217;est du code java compilé.</p>
<p>La hiérarchie est faite en fonction du « <em>namespacing </em>» inspiré des standards du DNS. Une classe spécifique Java pour un WebService SOAP pour traduire du français au <em>Klingon</em> pourrait être appelé : i.e. com.renoirboulanger.startrek.klingon.soap.jar.</p>
<p>&nbsp;</p>
<h3>Suggestions</h3>
<p>Je pense avoir fait le tour du sujet. Dites-moi dans <a href="http://renoirboulanger.com/blog/2010/02/crash-course-sur-les-environnements-java#comments">les commentaires</a> si j&#8217;ai oublié quelque chose d&#8217;important.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://renoirboulanger.com/blog/2010/02/crash-course-sur-les-environnements-java/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Plugin MODx pour générer automatiquement les balises ABBR et autres pour chaque page</title>
		<link>http://renoirboulanger.com/blog/2010/02/plugin-modx-pour-generer-automatiquement-les-balises-abbr-et-autres-pour-chaque-page/</link>
		<comments>http://renoirboulanger.com/blog/2010/02/plugin-modx-pour-generer-automatiquement-les-balises-abbr-et-autres-pour-chaque-page/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 14:49:14 +0000</pubDate>
		<dc:creator>Renoir Boulanger</dc:creator>
				<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[Accessibilité]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[Integration]]></category>
		<category><![CDATA[modx]]></category>
		<category><![CDATA[p52]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://renoirboulanger.com/?p=1850</guid>
		<description><![CDATA[Plugin MODx pour générer automatiquement les balises ABBR et autres pour chaque page
Il s&#8217;agit d&#8217;un plugin que j&#8217;ai fait, en PHP 4 il y a deux ans pour MODx 0.9.6.3, pour un site web et je pense qu&#8217;il vaut la peine que je partage le code avec la communauté.
Le plugin sert a entourer des mots [...]]]></description>
			<content:encoded><![CDATA[<a href='http://renoirboulanger.com/blog/2010/02/plugin-modx-pour-generer-automatiquement-les-balises-abbr-et-autres-pour-chaque-page/' class='retweet '  style='display:block;margin:10px 0px;' >Plugin MODx pour générer automatiquement les balises ABBR et autres pour chaque page</a><div style="width:230px;float:right;"><img src="http://renoirboulanger.com/wp-content/uploads/2010/01/modx_logo.png" alt="" title="MODx" width="230" height="64" style="border:none;float:right;margin-top:10px;margin-right:10px;" /></div>
<p>Il s&#8217;agit d&#8217;un plugin que j&#8217;ai fait, en <abbr title="PHP Hypertext Pre-Processor Languagte version 4." lang="en">PHP 4</abbr> il y a deux ans pour <a href="http://modxcms.com/download/">MODx 0.9.6.3</a>, pour un site web et je pense qu&#8217;il vaut la peine que je partage le code avec la communauté.</p>
<p>Le plugin sert a entourer des mots définis dans un fichier <abbr title="Coma Separated Values." lang="en">CSV</abbr> (séparé par des virgules) dans le contenu qui est retourné par le CMS. </p>
<p>&nbsp;</p>
<h3>LA SITUATION</h3>
<p>Lorsque je travaillait sur ce site web, mon employeur et mon collègue nous étions donné comme objectif de paufiner l&#8217;<a href="http://www.google.ca/search?hl=fr&#038;safe=off&#038;client=firefox-a&#038;rls=org.mozilla:en-US:official&#038;hs=8Lp&#038;defl=fr&#038;q=define:Ergonomie&#038;ei=6PF0S7SiDcH08QbV2tnzCQ&#038;sa=X&#038;oi=glossary_definition&#038;ct=title&#038;ved=0CAcQkAE">Ergonomie</a> et l&#8217;<a href="http://www.google.ca/search?hl=fr&#038;safe=off&#038;client=firefox-a&#038;rls=org.mozilla:en-US:official&#038;hs=GhU&#038;defl=fr&#038;q=define:Accessibilit%C3%A9&#038;ei=A_J0S6LQBNDj8QaLp6z0CQ&#038;sa=X&#038;oi=glossary_definition&#038;ct=title&#038;ved=0CAcQkAE">Accessibilité</a> du contenu. Ce qui est dommage c&#8217;est qu&#8217;il n&#8217;a jamais été évalué par <a href="http://www.accessibiliteweb.com/">AccessibilitéWeb</a>. J&#8217;ai pourtant reçu la formation pour évaluer les sites&#8230; mais je préfère, personnellement, programmer des applications.</p>
<p>&nbsp;</p>
<p><span id="more-1850"></span></p>
<h3>LES CRITÈRES QUE CE PLUGIN REMPLIT</h3>
<p>Lors de la réalisation du site je n&#8217;ai pas noté les points d&#8217;évaluation du <abbr title="Web Content Accessibility Guidelines version 1." lang="en">WCAG 1.0</abbr> que cet utilitaire remplit, mais en gros, d&#8217;un point de vue <em>utilisabilité</em> :</p>
<ul>
<li>L&#8217;édimestre n&#8217;a pas a écrire à la main les balises ABBR, DFN, et ACRONYM, le plugin le fait tout seul;</li>
<li>La liste est dans un fichier statique, ce qui rend facile, pour l&#8217;édimestre, d&#8217;ajouter de nouvelles définitions;</li>
<li>Pouvoir automatiser le remplacement des abréviations dans des balises valides;</li>
</ul>
<p>Cette liste ne parle pas des critères d&#8217;évaluations mais si vous voulez en savoir plus au sujet de l&#8217;Accessibilité; je vous recommande chaudement de visiter la «<a href="http://accessibiliteweb.org/bdc/directives/documents-reference/">Base de conaissances</a>» de la fondation <a href="http://accessibiliteweb.org/">AccessibilitéWeb.org</a> qui a fait un IMMENSE EFFORT de vulgariation et de collaboration a l&#8217;élaboration du <abbr title="Web Content Accessibility Guidelines version 2." lang="en">WCAG 2.0</abbr> et de sa version française.</p>
<p>&nbsp;</p>
<h3>EXEMPLE</h3>
<p>Plutôt que d&#8217;écrire des paragraphes pour expliquer comment fonctionne le plugin, je vous propose de voir par un exemple</p>
<p>Le document <tt><abbr title="Coma Separated Values." lang="en">CSV</abbr></tt> a plusieurs lignes similaires à&#8230;</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="html" style="font-family:monospace;">fr;dfn;FAQ;Foire Aux Questions</pre></td></tr></table></div>

<p>Avec le contenu de la page il remplacera les occurences dans le document HTML généré (même après la cache):</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="html" style="font-family:monospace;">(...) venez lire &lt;strong&gt;la FAQ&lt;/strong&gt; (...)</pre></td></tr></table></div>

<p>En le transformant ainsi&#8230;</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="html" style="font-family:monospace;">(...) venez lire &lt;strong&gt;la &lt;dfn title=&quot;Foire Aux Questions&quot;&gt;FAQ&lt;/dfn&gt;&lt;/strong&gt; (...)</pre></td></tr></table></div>

<p>Le plugin est configuré pour faire cette transformation pour tout les mots définis dans le CSV au moment du rendu de la page chez le client (trigger MODx &#8220;<tt>OnWebPagePrerender</tt>&#8220;) ce qui évite d&#8217;avoir des définitions empilés.</p>
<p>&nbsp;</p>
<h3>UTILISER LE PLUGIN</h3>
<div style="background-color:#FFEEEE;border:1px solid #666600;color:#660000;margin:20px;padding:20px 30px;text-align:center;">
<h4>Avertissement!<br />
</h4>
<p>Le plugin a été fait à l&#8217;époque de <a href="http://modxcms.com/download/">MODx 0.9.6.x</a> (regardez tout au bas). Il risque de bien fonctionner dans cette version mais n&#8217;est pas assuré de fonctionner dans la version stable présente. Vous aurez été avertis!</p>
<p>Si vous voulez que j&#8217;en fasse une adaptation, <a href="http://renoirboulanger.com/2010/02/plugin-modx-pour-generer-automatiquement-les-balises-abbr-et-autres-pour-chaque-page/#vote"><strong>laissez une note a ce billet</strong></a>!.</p>
</div>
<p>On ne peut s&#8217;attendre à simplement installer le plugin et que tout fonctionne. Voici les prérequis pour pouvoir utiliser le plugin</p>
<ul>
<li>Au niveau 0 (enfant de la racine dans MODx) il y ait un répertoire servant à spécifier la langue de ses enfants.</li>
<li><a href="http://renoirboulanger.com/wp-content/uploads/2010/02/ContentAbbrGenerator/ContentAbbrGenerator.txt"><strong>ContentAbbrGenerator</strong></a> (le plugin en question)<br />
Un plugin de base qui était fourni avec la version 0.9.6.x qui fournit le numéro ID de la page parent absolu</li>
<li>Il faut 2 Snippet de code (fonctions PHP spécifique a MODx) pour utiliser mon plugin
<ul>
<li><a href="http://renoirboulanger.com/wp-content/uploads/2010/02/ContentAbbrGenerator/Lang.txt">Lang</a><br />
Sert, justement a aller chercher le ID de la page ci-haut mentionnée.</li>
<li><a href="http://renoirboulanger.com/wp-content/uploads/2010/02/ContentAbbrGenerator/UltimateParent.txt">UltimateParent</a><br />
Un plugin de base qui était fourni avec la version 0.9.6.x qui fournit le numéro ID de la page parent absolu</li>
</ul>
</li>
<li><a href="http://renoirboulanger.com/wp-content/uploads/2010/02/ContentAbbrGenerator/abbreviations.txt">abbreviations.txt</a><br />
Le fichier CSV qui contient les valeurs pour le remplacement des balises. Le contenu de ce fichier peut être une page dans MODx (si <a href="http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html">mod_rewrite</a> est activé) mais il doit être définitivement être disponible à l&#8217;adresse fournie dans le Snippet <a href="http://renoirboulanger.com/wp-content/uploads/2010/02/ContentAbbrGenerator/ContentAbbrGenerator.txt">ContentAbbrGenerator</a> définie par la variable de plugin &#8220;<tt>cagPluginAttrOverrideFileLoc</tt>&#8220;</li>
</ul>
<p>&nbsp;</p>
<h3>TÉLÉCHARGER ET INSTALLER</h3>
<p>Suivre les instructions dans chaque fichier de l&#8217;<strong><a href="http://renoirboulanger.com/wp-content/uploads/2010/02/ContentAbbrGenerator.tar.gz">Archive</a></strong></p>
<p>&nbsp;</p>
<h3>SOURCES ET  <em>CRÉDITS</em></h3>
<p>J&#8217;ai pris soin dans le code de laisser les notes des auteurs qui m&#8217;ont inspiré avec les pages qui parlent de ce que j&#8217;ai utilisé pour produire le plugin. Je n&#8217;ai rien inventé en soi, j&#8217;ai simplement produit un plugin pour remplir le besoin que j&#8217;avait</p>
<p>&nbsp;</p>
<h3>NOTE</h3>
<p>Vous avez le droit et la liberté d&#8217;utiliser le code que je rend disponible pour téléchargement car je n&#8217;ai pas mise sous licence. Considérez-le comme un don</p>
<p>&nbsp;</p>
<h3><a name="vote"></a>A VOS COMMENTAIRES&#8230;</h3>
<p>J&#8217;ai déjà considéré commencer a modifier ce plugin pour le rendre fonctionnel dans WordPress mais j&#8217;ai d&#8217;autres priorités. Alors, si vous avez un intérêt à ce que je produise un plugin pour WordPress ou MODx (pour la version courrante) laissez moi un commentaire!</p>
]]></content:encoded>
			<wfw:commentRss>http://renoirboulanger.com/blog/2010/02/plugin-modx-pour-generer-automatiquement-les-balises-abbr-et-autres-pour-chaque-page/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Réalisation d&#8217;une application d&#8217;échange de cadeau avec RED L&#8217;agence le «club échangiste» [2009]</title>
		<link>http://renoirboulanger.com/blog/2010/02/realisation-dune-application-dechange-de-cadeau-avec-red-lagence-le-%c2%abclub-echangiste%c2%bb-2009/</link>
		<comments>http://renoirboulanger.com/blog/2010/02/realisation-dune-application-dechange-de-cadeau-avec-red-lagence-le-%c2%abclub-echangiste%c2%bb-2009/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 18:11:24 +0000</pubDate>
		<dc:creator>Renoir Boulanger</dc:creator>
				<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[p52]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[symfony]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://renoirboulanger.com/?p=1772</guid>
		<description><![CDATA[Réalisation d&#8217;une application d&#8217;échange de cadeau avec RED L&#8217;agence le «club échangiste» [2009]

Il s&#8217;agit d&#8217;une réalisation que j&#8217;ai effectuée en deux semaines pour RED  L&#8217;agence. L&#8217;idée vient de François Sauvé lors d&#8217;une  rencontre pour un autre projet. Il m&#8217;a dit: «J&#8217;ai une idée de fou. Je ne  sais pas si on pourrait [...]]]></description>
			<content:encoded><![CDATA[<a href='http://renoirboulanger.com/blog/2010/02/realisation-dune-application-dechange-de-cadeau-avec-red-lagence-le-%c2%abclub-echangiste%c2%bb-2009/' class='retweet '  style='display:block;margin:10px 0px;' >Réalisation d&#8217;une application d&#8217;échange de cadeau avec RED L&#8217;agence le «club échangiste» [2009]</a><p>
<div style="float:right"><img src="http://renoirboulanger.com/wp-content/uploads/2010/02/echangistes_mini.png" alt="" title="RED propose de finir l'année dans un Club échangiste" width="413" height="343" class="aligncenter size-full wp-image-1777" /></div>
<p>Il s&#8217;agit d&#8217;une réalisation que j&#8217;ai effectuée en deux semaines pour <a href="http://www.agencered.ca/">RED  L&#8217;agence</a>. L&#8217;idée vient de François Sauvé lors d&#8217;une  rencontre pour un autre projet. Il m&#8217;a dit: «J&#8217;ai une idée de fou. Je ne  sais pas si on pourrait faire ça rapidement mais&#8230;».</p>
<p>C&#8217;est le  genre de situation que j&#8217;aime!  Une question, la possibilité de me laisser aller, et hop!</p>
<p><a href="http://www.agencered.ca/">RED</a> voulait faire offrir un cadeau à chacun de ses clients privilégiés d&#8217;une façon hors de l&#8217;ordinaire. Les participants étaient invités a visionner leur cadeau par une petite carte de noël reçue par la poste (<a rel="lightbox[1772]" title="Carte postale invitation devant" href="http://renoirboulanger.com/wp-content/uploads/2010/02/carte_postale_1_front.jpg" rel="lightbox[1772]">devant</a>, <a rel="lightbox[1772]" title="Carte postale invitation, dos" href="http://renoirboulanger.com/wp-content/uploads/2010/02/carte_postale_1_back.jpg" rel="lightbox[1772]">dos</a>) avec une <a href="http://echangiste.agencered.ca/">adresse web</a> et un code.</p>
<p>Le concept graphique était, selon moi, bien rendu. Un club échangiste avec les lumières tamisés, rien d&#8217;offensant mais tellement bien choisi pour le jeu.</p>
<p>Le site web devait permettre aux participants de voir leur cadeau et de pouvoir «Participer au club échangiste» en volant le cadeau d&#8217;un autre participant. Chaque participant qui se faisait voler son cadeau reçevait un courriel qui lui annonçait qu&#8217;il s&#8217;était fait voler et qu&#8217;il pouvait aller le récupérer.</p>
<p><span id="more-1772"></span></p>
<p>Les échanges pouvaient avoir lieu jusqu&#8217;au 16 décembre 2009 à 23:59:59. Ensuite une page affichait pour dire que l&#8217;échange était terminé.</p>
<p>Le lendemain même, <a href="http://www.agencered.ca/">RED</a> a préparé tout les cadeaux et les a envoyés avec une petite carte postale (<a rel="lightbox[1772]" title="Carte postale avec cadeau, devant" href="http://renoirboulanger.com/wp-content/uploads/2010/02/carte_postale_2_front.jpg" rel="lightbox[1772]">devant, </a><a rel="lightbox[1772]" title="Carte postale avec cadeau, dos" href="http://renoirboulanger.com/wp-content/uploads/2010/02/carte_postale_2_back.jpg" rel="lightbox[1772]">dos</a>) et partait les cadeaux de chaque récipiendaire vers leur résidence.</p>
<p>&nbsp;</p>
<h3>PARTAGE DES TÂCHES</h3>
<p>Je n&#8217;ai, évidemment, pas tout fait ça tout seul. En gros, je me suis occupé de l&#8217;application tandis que RED a fait tout le reste.</p>
<h4><a href="http://www.agencered.ca/">RED L&#8217;agence</a></h4>
<p><a href="http://www.agencered.ca/">RED</a> à fait une grosse partie du travail dans ce projet: Le graphisme et le concept de tout le projet, l&#8217;intégration HTML, le Javascript, les deux cartes, les photos de chaque cadeaux, chaque description</p>
<h4>Ma participation</h4>
<p>J&#8217;ai planifié, rédigé les besoins techniques, les cas d&#8217;utilisations et programmé en utilisant <em>symfony framework (v1.2 en PHP)</em>. <a href="http://stephanchampagne.com/">Stéphan Champagne</a> m&#8217;a accompagné pour ce qui concerne la normalisation de la base de donnée et les controleurs. Grâce à lui j&#8217;ai pu produire dans les temps une grande charge de travail a moi seul.</p>
<p>Ce projet arrivait dans un bon timing car j&#8217;était dans une passe où je ne voulait que coder pour passer ma <a href="http://renoirboulanger.com/blog/2009/09/devenir-zend-certified-engineer-avec-php5/">certification ZCE</a> (que je n&#8217;ai toujours pas). Je cherchait des petits projets pour jouer avec des frameworks PHP. Je crois que ce projet fut une réussite.</p>
<p>&nbsp;</p>
<h3>AU FINAL</h3>
<p>Il y a eu <strong>plus d&#8217;une centaine d&#8217;échanges</strong> et beaucoup de plaisir pour les participants. J&#8217;ai su, ce week-end, que le projet <strong>club échangiste</strong> est en nomination au 17<sup>e</sup> <a href="http://www.grenier.qc.ca/grenier-or/">concours annuel «<strong>Le Grenier d&#8217;Or</strong>»</a> pour le monde des communications.</p>
<p><strong>Mise à jour du lendemain des <em>Grenier d&#8217;Or</em></strong>: Durant la soirée, le projet a été mentionné lauréat plusieurs fois. Le projet a remporté un <strong>Certificat d&#8217;Excellence</strong> dans la catégorie <strong>JEU ET INTERACTIVITÉ</strong>.</p>
<p>&nbsp;</p>
<h3>PHOTOS</h3>

<a href='http://renoirboulanger.com/blog/2010/02/realisation-dune-application-dechange-de-cadeau-avec-red-lagence-le-%c2%abclub-echangiste%c2%bb-2009/echangistes_mini/' title='RED propose de finir l&#039;Année dans un Club échangiste'><img width="150" height="150" src="http://renoirboulanger.com/wp-content/uploads/2010/02/echangistes_mini-150x150.png" class="attachment-thumbnail" alt="" title="RED propose de finir l&#039;Année dans un Club échangiste" /></a>
<a href='http://renoirboulanger.com/blog/2010/02/realisation-dune-application-dechange-de-cadeau-avec-red-lagence-le-%c2%abclub-echangiste%c2%bb-2009/scr_echange2009_accueil/' title='La page d&#039;accueil'><img width="150" height="150" src="http://renoirboulanger.com/wp-content/uploads/2010/02/scr_echange2009_Accueil-150x150.png" class="attachment-thumbnail" alt="CLUB ÉCHANGISTE, entrez votre code." title="La page d&#039;accueil" /></a>
<a href='http://renoirboulanger.com/blog/2010/02/realisation-dune-application-dechange-de-cadeau-avec-red-lagence-le-%c2%abclub-echangiste%c2%bb-2009/scr_echange2009_gifts/' title='La page principale, la liste des cadeaux'><img width="150" height="150" src="http://renoirboulanger.com/wp-content/uploads/2010/02/scr_echange2009_Gifts-150x150.png" class="attachment-thumbnail" alt="" title="La page principale, la liste des cadeaux" /></a>
<a href='http://renoirboulanger.com/blog/2010/02/realisation-dune-application-dechange-de-cadeau-avec-red-lagence-le-%c2%abclub-echangiste%c2%bb-2009/scr_echange2009_confirm/' title='Confirmation d&#039;un échange'><img width="150" height="150" src="http://renoirboulanger.com/wp-content/uploads/2010/02/scr_echange2009_Confirm-150x150.png" class="attachment-thumbnail" alt="Voulez-vous vraiment échanger votre cadeau avec celui de Francois S. Ensuite, il vous restera 9 echanges. voulez-vous continuer? OUI NON" title="Confirmation d&#039;un échange" /></a>
<a href='http://renoirboulanger.com/blog/2010/02/realisation-dune-application-dechange-de-cadeau-avec-red-lagence-le-%c2%abclub-echangiste%c2%bb-2009/scr_echange2009_ferme/' title='Page de fermeture de l&#039;échange'><img width="150" height="150" src="http://renoirboulanger.com/wp-content/uploads/2010/02/scr_echange2009_Ferme-150x150.png" class="attachment-thumbnail" alt="" title="Page de fermeture de l&#039;échange" /></a>
<a href='http://renoirboulanger.com/blog/2010/02/realisation-dune-application-dechange-de-cadeau-avec-red-lagence-le-%c2%abclub-echangiste%c2%bb-2009/carte_postale_1_front/' title='Carte postale invitation devant'><img width="150" height="150" src="http://renoirboulanger.com/wp-content/uploads/2010/02/carte_postale_1_front-150x150.jpg" class="attachment-thumbnail" alt="" title="Carte postale invitation devant" /></a>
<a href='http://renoirboulanger.com/blog/2010/02/realisation-dune-application-dechange-de-cadeau-avec-red-lagence-le-%c2%abclub-echangiste%c2%bb-2009/carte_postale_1_back/' title='Carte postale invitation, dos'><img width="150" height="150" src="http://renoirboulanger.com/wp-content/uploads/2010/02/carte_postale_1_back-150x150.jpg" class="attachment-thumbnail" alt="" title="Carte postale invitation, dos" /></a>
<a href='http://renoirboulanger.com/blog/2010/02/realisation-dune-application-dechange-de-cadeau-avec-red-lagence-le-%c2%abclub-echangiste%c2%bb-2009/carte_postale_2_front/' title='Carte postale avec cadeau, devant'><img width="150" height="150" src="http://renoirboulanger.com/wp-content/uploads/2010/02/carte_postale_2_front-150x150.jpg" class="attachment-thumbnail" alt="" title="Carte postale avec cadeau, devant" /></a>
<a href='http://renoirboulanger.com/blog/2010/02/realisation-dune-application-dechange-de-cadeau-avec-red-lagence-le-%c2%abclub-echangiste%c2%bb-2009/carte_postale_2_back/' title='Carte postale avec cadeau, dos'><img width="150" height="150" src="http://renoirboulanger.com/wp-content/uploads/2010/02/carte_postale_2_back-150x150.jpg" class="attachment-thumbnail" alt="" title="Carte postale avec cadeau, dos" /></a>

]]></content:encoded>
			<wfw:commentRss>http://renoirboulanger.com/blog/2010/02/realisation-dune-application-dechange-de-cadeau-avec-red-lagence-le-%c2%abclub-echangiste%c2%bb-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

