<?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>JoPa.Fr &#187; Evènements</title>
	<atom:link href="http://www.jopa.fr/index.php/category/evenements/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jopa.fr</link>
	<description>001100010BIDOUILLE11101010111100010LIBRE1000100111100101</description>
	<lastBuildDate>Tue, 10 Jan 2012 21:59:31 +0000</lastBuildDate>
	<language>fr</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Debian &#8211;  Le Cahier de l’admin Debian a besoin de vous pour s’exporter</title>
		<link>http://www.jopa.fr/index.php/2011/09/30/debian-le-cahier-de-ladmin-debian-a-besoin-de-vous-pour-sexporter/</link>
		<comments>http://www.jopa.fr/index.php/2011/09/30/debian-le-cahier-de-ladmin-debian-a-besoin-de-vous-pour-sexporter/#comments</comments>
		<pubDate>Fri, 30 Sep 2011 12:25:22 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Divers]]></category>
		<category><![CDATA[Evènements]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[Logiciels Libres]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=2681</guid>
		<description><![CDATA[Je me fais le relais de Linuxfr.org, en espérant que ce peu de bruit puisse amener quelques contributions complémentaires. À quelques semaines de la sortie du Cahier de l’admin Debian Squeeze, Roland Mas et moi‐même venons de lancer une campagne de financement pour réaliser la traduction anglaise de ce livre, mais aussi pour publier cette traduction sous licence libre ! [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><a href="http://www.jopa.fr/wp-content/uploads/2011/09/d-a-h-ulule-banner_png_640x360_crop_upscale_q85.jpg"><img class="aligncenter size-full wp-image-2682" title="d-a-h-ulule-banner_png_640x360_crop_upscale_q85" src="http://www.jopa.fr/wp-content/uploads/2011/09/d-a-h-ulule-banner_png_640x360_crop_upscale_q85.jpg" alt="" width="512" height="288" /></a></p>
<p style="text-align: justify;">Je me fais le relais de<a href="http://linuxfr.org/news/le-cahier-de-l%E2%80%99admin-debian-a-besoin-de-vous-pour-s%E2%80%99exporter"> Linuxfr.org</a>, en espérant que ce peu de bruit puisse amener quelques contributions complémentaires.</p>
<blockquote>
<p style="text-align: justify;">À quelques semaines de la sortie du <em>Cahier de l’admin Debian Squeeze</em>, Roland Mas et moi‐même venons de lancer une campagne de financement pour réaliser la traduction anglaise de ce livre, mais aussi pour <strong>publier cette traduction sous licence libre</strong> !</p>
<p style="text-align: justify;">Vous pouvez soutenir ce projet en commandant un exemplaire du livre à paraître (aussi bien la version française qu’anglaise). Selon le montant du soutien, vous avez le choix entre de nombreuses récompenses.</p>
<p style="text-align: justify;">Cerise sur le gâteau, si vous soutenez le projet en cliquant sur <a href="http://debian-handbook.info/go/ulule-fr-debian/">ce lien</a>, environ <strong>12 % de l’argent donné sera reversé au projet Debian</strong>.</p>
<p>&nbsp;</p></blockquote>
<p>Plus d&#8217;informations sur <a href="http://linuxfr.org/news/le-cahier-de-l%E2%80%99admin-debian-a-besoin-de-vous-pour-s%E2%80%99exporter"> linuxfr.org,</a></p>
<p>Sinon, c&#8217;est par là :</p>
<ul>
<li><a href="http://fr.ulule.com/debian-handbook/">Campagne de financement,</a></li>
<li><a href="http://debian-handbook.info/">Site officiel du projet.</a></li>
</ul>
<p style="text-align: center;"><a href="http://www.jopa.fr/wp-content/uploads/2011/09/DebianSqueeze.png"><img class="aligncenter size-full wp-image-2690" title="DebianSqueeze" src="http://www.jopa.fr/wp-content/uploads/2011/09/DebianSqueeze.png" alt="" width="150" height="171" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2011/09/30/debian-le-cahier-de-ladmin-debian-a-besoin-de-vous-pour-sexporter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Happy Sysadmin Day</title>
		<link>http://www.jopa.fr/index.php/2010/07/30/happy-sysadmin-day/</link>
		<comments>http://www.jopa.fr/index.php/2010/07/30/happy-sysadmin-day/#comments</comments>
		<pubDate>Thu, 29 Jul 2010 22:00:34 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Evènements]]></category>
		<category><![CDATA[Serveur]]></category>
		<category><![CDATA[Système]]></category>
		<category><![CDATA[Vidéo]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=2256</guid>
		<description><![CDATA[Le dernier vendredi du mois de juillet est un jour spécial pour les administrateurs systèmes&#8230; Un peu comme la Saint-Valentin pour une jeune adolescente éprise de son premier jules, mais en beaucoup moins&#8230; rose&#8230; Vraiment ? J&#8217;exagère ? Rassurez-vous, ce n&#8217;est pas le jour où ils déclarent leur flamme à leurs machines - ça, c&#8217;est [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://www.jopa.fr/wp-content/uploads/2010/07/tux_party3.jpg"><img class="size-full wp-image-2354  aligncenter" title="tux_party3" src="http://www.jopa.fr/wp-content/uploads/2010/07/tux_party3.jpg" alt="" width="524" height="396" /></a></p>
<p style="text-align: justify;">Le dernier vendredi du mois de juillet est un jour spécial pour les administrateurs systèmes&#8230; Un peu comme la <em>Saint-Valentin</em> pour une jeune adolescente éprise de son premier jules, mais en beaucoup moins&#8230; rose&#8230; Vraiment ? J&#8217;exagère ?</p>
<p style="text-align: justify;">Rassurez-vous, ce n&#8217;est pas le jour où ils déclarent leur flamme à leurs machines <em>- ça, c&#8217;est fait depuis bien longtemps -</em> mais le jour où vous pouvez leur faire preuve d&#8217;attention et de reconnaissance. Un peu comme <em>Thanksgiving</em>, mais&#8230; sans la dinde&#8230;</p>
<p style="text-align: justify;">Donc, aujourd&#8217;hui,  n&#8217;hésitez pas à aller saluer votre administrateur système <em>- vous savez, le gars mal rasé , avec des t-shirts bizarres, derrière ses quatre écrans dans le petit bureau du fond -</em> et à le remercier pour tout le travail qu&#8217;il fait&#8230; Si vous n&#8217;avez qu&#8217;une vague idée de ses fonctions, croyez moi, il fait beaucoup pour vous !</p>
<p style="text-align: justify;">Alors, pourquoi ne pas lui payer une bière, lui apporter des croissants ou lui faire une bise sur le front ?</p>
<p style="text-align: justify;">Pour ma part, je voudrais souhaiter un joyeux &laquo;&nbsp;<a href="http://www.sysadminday.com/" target="_blank">Sysadmin Day</a>&nbsp;&raquo; à tous ceux et celles qui s&#8217;occupent si bien, jour et nuit, de nos machines. Une attention plus particulière à tous ceux qui n&#8217;ont toujours pas trouvé l&#8217;intérêt de lâcher le clavier d&#8217;une main pour utiliser une souris&#8230;</p>
<p style="text-align: justify;">C&#8217;est aussi l&#8217;occasion de revoir une vielle vidéo :</p>
<p style="text-align: justify;">
<p style="text-align: center;">[There is a video that cannot be displayed in this feed. <a href="http://www.jopa.fr/index.php/2010/07/30/happy-sysadmin-day/">Visit the blog entry to see the video.]</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2010/07/30/happy-sysadmin-day/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>On se twitte et on se fait une bouffe ?</title>
		<link>http://www.jopa.fr/index.php/2009/07/25/twitter_jopa_fr/</link>
		<comments>http://www.jopa.fr/index.php/2009/07/25/twitter_jopa_fr/#comments</comments>
		<pubDate>Sat, 25 Jul 2009 12:33:33 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Evènements]]></category>
		<category><![CDATA[Messagerie]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=1522</guid>
		<description><![CDATA[De nos jours, les technologies permettant de communiquer ou de diffuser de l&#8217;information ne manquent pas : Web, Mail, Newsgroups, Irc, forums, fils RSS, SMS, messageries instantanées et chats en tout genre, &#8230; et j&#8217;en passe ! S&#8217;ajoute aux concepts déjà existants, une vague du nom de &#171;&#160;Twitter&#160;&#187; qui déferle sur les médias depuis 2007. [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><a href="http://www.twitter.com/jopafr"><img class="alignleft size-full wp-image-1532" title="twitter_jopa" src="http://www.jopa.fr/wp-content/uploads/2009/07/twitter_jopa.jpg" alt="twitter_jopa" width="237" height="190" /></a>De nos jours, les technologies permettant de communiquer ou de diffuser de l&#8217;information ne manquent pas : Web, Mail, Newsgroups, Irc, forums, fils RSS, SMS, messageries instantanées et chats en tout genre, &#8230; et j&#8217;en passe !</p>
<p style="text-align: justify;">S&#8217;ajoute aux concepts déjà existants, une vague du nom de &laquo;&nbsp;Twitter&nbsp;&raquo; qui déferle sur les médias depuis 2007.</p>
<p>Pour ceux qui seraient restés loin de ce spot, Twitter est, par définition (<a title="http://fr.wikipedia.org/wiki/Twitter" href="http://fr.wikipedia.org/wiki/Twitter">Source Wikipedia</a>) :</p>
<blockquote>
<p style="text-align: justify;">Un outil de réseau social et de <a title="http://fr.wikipedia.org/wiki/Microblogging" href="http://fr.wikipedia.org/wiki/Microblogging">microblogging </a>qui permet à l&#8217;utilisateur d&#8217;envoyer gratuitement des messages, appelés des <em>tweets</em> (gazouillis en français), de 140 caractères maximum par Internet, par messagerie instantanée ou par SMS.</p>
<p style="text-align: justify;">
</blockquote>
<p style="text-align: justify;">Hum ! Alors, qu&#8217;apporte <em>Twitter </em>par rapport aux outils existants ? Pourquoi un tel succès ? Je suis bien obligé d&#8217;avouer que, malgré mon expérience d&#8217;informaticien chevronné et mon engouement pour les nouvelles technologies, je me sens  légèrement dépassé ! Par contre, ce que j&#8217;ai bien compris, c&#8217;est que si tu ne <em>twittes </em>pas, tu n&#8217;es tout simplement pas dans le coup&#8230;</p>
<p style="text-align: justify;">Je suis donc très heureux de vous annoncer, que <em>Jopa.fr</em> se modernise <img src='http://www.jopa.fr/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />   :  vous pouvez désormais me suivre sur Twitter !</p>
<p style="text-align: center;"><a href="http://www.twitter.com/jopafr"><img class="size-full wp-image-1535 aligncenter" title="follow_joa" src="http://www.jopa.fr/wp-content/uploads/2009/07/follow_joa.gif" alt="follow_joa" width="184" height="41" /></a></p>
<p style="text-align: justify;">Allez ! La semaine prochaine, je me mets sur FaceBook !</p>
<p style="text-align: justify;">
<p style="text-align: justify;">
<p style="text-align: justify;">
]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2009/07/25/twitter_jopa_fr/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Eclipse-PDT sur Ubuntu (AMD-64)</title>
		<link>http://www.jopa.fr/index.php/2009/04/19/eclipse-pdt-sur-ubuntu-amd-64/</link>
		<comments>http://www.jopa.fr/index.php/2009/04/19/eclipse-pdt-sur-ubuntu-amd-64/#comments</comments>
		<pubDate>Sun, 19 Apr 2009 10:33:33 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Configurations]]></category>
		<category><![CDATA[Divers]]></category>
		<category><![CDATA[Evènements]]></category>
		<category><![CDATA[Planet-Libre]]></category>
		<category><![CDATA[Développement]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=1259</guid>
		<description><![CDATA[Je suis habitué à développer mes petits projets php grâce à mon éditeur préféré Vi (Vim), via des connexions ssh sur mes serveurs distants &#8211; Ah ben oui M&#8217;sieur ! C&#8217;est de la vielle école ça &#8230;d&#8217;la vielle école !  &#8211; Certains projets prenant de l&#8217;importance, ça commence à devenir vraiment sportif de jongler d&#8217;un [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><img class="alignleft size-medium wp-image-1262" title="capture-eclipse-platform" src="http://www.jopa.fr/wp-content/uploads/2009/04/capture-eclipse-platform-300x194.png" alt="capture-eclipse-platform" width="300" height="194" />Je suis habitué à développer mes petits projets <em>php</em> grâce à mon éditeur préféré Vi (<em>Vim</em>), via des connexions <em>ssh</em> sur mes serveurs distants &#8211; Ah ben oui M&#8217;sieur ! C&#8217;est de la vielle école ça &#8230;d&#8217;la vielle école !  &#8211; Certains projets prenant de l&#8217;importance, ça commence à devenir vraiment sportif de jongler d&#8217;un fichier à l&#8217;autre et quasi impossible d&#8217;avoir un aperçu global de l&#8217;architecture. J&#8217;ai finalement décidé de franchir le pas et de passer sous Eclipse (Eclipse-PDT plus exactement).</p>
<p style="text-align: justify;">Je me suis prestement rendu sur le site officiel (<a href="http://www.eclipse.org/pdt/">http://www.eclipse.org/pdt/</a>) et j&#8217;ai malheureusement constaté que le framework PDT n&#8217;était pas disponible dans les téléchargements, pour l&#8217;architecture <em>AMD-64</em>&#8230;Pas d&#8217;bol !</p>
<p style="text-align: justify;">Heureusement, la version développement (<em>ganymede</em> de son petit nom), semble permettre l&#8217;installation de <em>PDT</em> sous forme de plug-in, directement depuis son interface, y compris pour les architectures 64 bits&#8230;.Je vais détailler par la suite la marche suivie pour arriver au but !</p>
<p style="text-align: justify;"><span id="more-1259"></span></p>
<h2 style="text-align: justify;">Java</h2>
<p style="text-align: justify;">Il me faut commencer par installer le <em>JRE</em> de <em>Sun</em>. Et oui&#8230;<em>Eclipse</em>, c&#8217;est Java avant tout !<br />
Il est possible d&#8217;utiliser l&#8217;installation binaire disponible chez <em>Sun</em> :<a title="http://java.com/en/download/linux_manual.jsp?locale=en&amp;host=java.com:80" href="http://java.com/en/download/linux_manual.jsp?locale=en&amp;host=java.com:80"> http://java.com/en/download/linux_manual.jsp?locale=en&amp;host=java.com:80</a>, ou tout simplement la commande <em>aptitude</em> d&#8217;<em>Ubuntu</em> :</p>
<p style="text-align: justify;"><span style="color: #800000;">$ sudo aptitude install sun-java6-jre</span></p>
<p style="text-align: justify;">Si plusieurs environnement java sont installés, il est nécessaire de spécifier l&#8217;environnement actif par défaut</p>
<p style="text-align: justify;"><span style="color: #800000;">$ sudo update-java-alternatives -l<br />
java-1.5.0-sun 53 /usr/lib/jvm/java-1.5.0-sun<br />
java-6-openjdk 1061 /usr/lib/jvm/java-6-openjdk<br />
java-6-sun 63 /usr/lib/jvm/java-6-sun<br />
java-gcj 1042 /usr/lib/jvm/java-gcj</span></p>
<p style="text-align: justify;"><span style="color: #800000;">$ sudo update-java-alternatives -s java-6-sun</span></p>
<h2 style="text-align: justify;"><em>Eclipse</em> IDE</h2>
<p style="text-align: justify;">La version 64 bits est téléchargeable ici : <a title="http://www.eclipse.org/downloads/" href="http://www.eclipse.org/downloads/">http://www.eclipse.org/downloads/</a>.</p>
<p style="text-align: justify;">Il suffit de télécharger et décompresser l&#8217;archive à l&#8217;emplacement voulu (<em>/usr/local/eclipse </em>par exemple) et le tour est joué.</p>
<p style="text-align: justify;"><span style="color: #800000;">$ cd /usr/local<br />
$ sudo tar -xvzf ~/eclipse-jee-ganymede-SR2-linux-gtk-x86_64.tar.gz</span></p>
<p style="text-align: justify;">Si tout est bon, l&#8217;exécutable présent à la racine du répertoire devrait lancer l&#8217;application.</p>
<p style="text-align: justify;"><span style="color: #800000;">$ /usr/local/eclipse/eclipse &amp;</span></p>
<p style="text-align: justify;"><span style="color: #800000;"><img class="aligncenter size-large wp-image-1268" title="capture-java-ee-http-12700150118-wse-wsexplorer-wsexplorerjsporgeclipsewstwsexplorer0-eclipse-platform1" src="http://www.jopa.fr/wp-content/uploads/2009/04/capture-java-ee-http-12700150118-wse-wsexplorer-wsexplorerjsporgeclipsewstwsexplorer0-eclipse-platform1-1024x700.png" alt="capture-java-ee-http-12700150118-wse-wsexplorer-wsexplorerjsporgeclipsewstwsexplorer0-eclipse-platform1" width="496" height="338" /><br />
</span></p>
<p style="text-align: justify;">Ben c&#8217;est super tout ça ! Me voici doté  d&#8217;un bel environnement de développement <em>java</em>&#8230;Mais M&#8217;sieur, M&#8217;sieur, c&#8217;est du <em>php</em> que je veux faire moi !</p>
<h2 style="text-align: justify;">Et pour PHP alors ?</h2>
<p style="text-align: justify;">La suite n&#8217;est pas plus compliquée, l&#8217;installation d&#8217;<em>add-ons </em>se fait par le menu &laquo;&nbsp;<em>Help-&gt;Software Update-&gt; Avaible Software</em>&laquo;&nbsp;.  Les boutons <em>Add Sites</em> et<em> Manage Sites</em> vont me permettre d&#8217;ajouter des sites de téléchargement supplémentaires.</p>
<p style="text-align: justify;">Pour faire fonctionner <em>PDT</em>, il me faut d&#8217;abord installer la dernière version du &laquo;&nbsp;<em>Dynamic Language Toolkit</em>&nbsp;&raquo; (DLK pour les intimes). Pour cela, j&#8217;ajoute le site :</p>
<p style="text-align: justify;"><span style="color: #800000;">http://download.eclipse.org/technology/dltk/updates-dev/1.0/</span></p>
<p style="text-align: justify;">et installe : <em><span style="color: #800000;">Dynamic Languages Toolkit &#8211; Core Frameworks (Incubation)</span> </em>par la liste des logiciels disponibles depuis ce site.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-1275" title="capture-software-updates-and-add-ons2" src="http://www.jopa.fr/wp-content/uploads/2009/04/capture-software-updates-and-add-ons2.png" alt="capture-software-updates-and-add-ons2" width="538" height="368" /></p>
<p style="text-align: left;">Finalement, j&#8217;utilise la même méthode pour installer PDT :</p>
<ul>
<li>Ajout du site :<span style="color: #800000;"><em> http://phpeclipse.sourceforge.net/update/stable/1.2.x/</em></span>,</li>
<li>Installation de  :<span style="color: #800000;"><em> PHPEclipse</em></span>.</li>
</ul>
<p style="text-align: left;"><img class="aligncenter size-full wp-image-1276" title="capture-software-updates-and-add-ons-1" src="http://www.jopa.fr/wp-content/uploads/2009/04/capture-software-updates-and-add-ons-1.png" alt="capture-software-updates-and-add-ons-1" width="538" height="368" /></p>
<p style="text-align: justify;">Après redémarrage, le chargement de l&#8217;environnement <em>PHP</em> se fait via le menu &laquo;&nbsp;<em>Windows-&gt;Open Perspectives</em>&laquo;&nbsp;.</p>
<p style="text-align: center;"><img class="aligncenter size-large wp-image-1278" title="capture-java-ee-bourse-include-class_pf_entree_incphp-eclipse-platform" src="http://www.jopa.fr/wp-content/uploads/2009/04/capture-java-ee-bourse-include-class_pf_entree_incphp-eclipse-platform-1024x621.png" alt="capture-java-ee-bourse-include-class_pf_entree_incphp-eclipse-platform" width="540" height="328" /></p>
<p style="text-align: left;">
<p style="text-align: justify;">D&#8217;autres plugins bien sympathiques existent, notemment en matière de déboggage, d&#8217;accès à des projets, serveurs ou répertoires distants, etc&#8230; Ceci feront peut-être l&#8217;objet d&#8217;un prochain billet.</p>
<p style="text-align: left;">
<p style="text-align: justify;">
<p style="text-align: justify;">
<p style="text-align: justify;">
<p style="text-align: justify;">
<p style="text-align: justify;">
<p style="text-align: justify;">
]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2009/04/19/eclipse-pdt-sur-ubuntu-amd-64/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Debian 5.0 : Lenny is stable</title>
		<link>http://www.jopa.fr/index.php/2009/02/16/debian-5-lenny-is-stable/</link>
		<comments>http://www.jopa.fr/index.php/2009/02/16/debian-5-lenny-is-stable/#comments</comments>
		<pubDate>Mon, 16 Feb 2009 18:22:10 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Evènements]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Logiciels Libres]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=1180</guid>
		<description><![CDATA[Si vous trainez par ici, vous le savez probablement déjà&#8230; La nouvelle a déjà fait le tour des blogs : Pour la Saint-Valentin, la communauté Debian à offert à Lenny son status de &#171;&#160;stable&#160;&#187;.  ( La Saint-Valentin,  c&#8217;est le 14 février&#8230; ça, vous ne le savez pas forcément ! )&#8230; www.debian.org Mazeltov !!! Une toute [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><img class="alignleft size-full wp-image-1191" title="lennysqueeze" src="http://www.jopa.fr/wp-content/uploads/2009/02/lennysqueeze.jpg" alt="lennysqueeze" width="244" height="114" />Si vous trainez par ici, vous le savez probablement déjà&#8230; La nouvelle a déjà fait le tour des blogs : Pour la Saint-Valentin, la communauté <em>Debian </em>à offert à <em>Lenny </em>son status de &laquo;&nbsp;stable&nbsp;&raquo;.  ( La Saint-Valentin,  c&#8217;est le 14 février&#8230; ça, vous ne le savez pas forcément ! )&#8230;</p>
<p style="text-align: center;"><a title="http://www.debian.org/" href="http://www.debian.org/">www.debian.org</a></p>
<p style="text-align: justify;">
<p style="text-align: center;">Mazeltov !!! Une toute nouvelle testing du nom de <em>Squeeze </em>est née&#8230;</p>
<p style="text-align: justify;">
<p style="text-align: justify;">
<p style="text-align: center;"><a title="http://www.debian.org/" href="http://www.debian.org/"><br />
</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2009/02/16/debian-5-lenny-is-stable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installation d&#8217;un serveur mail brique par brique&#8230; (OpenLDAP, Postfix, Cyrus-imap, TLS, SASL, Spamassassin, Amavis, etc&#8230;)</title>
		<link>http://www.jopa.fr/index.php/2009/02/03/installation-dun-serveur-mail-brique-par-brique-openldap-postfix-cyrus-imap-tls-sasl-spamassassin-amavis-etc/</link>
		<comments>http://www.jopa.fr/index.php/2009/02/03/installation-dun-serveur-mail-brique-par-brique-openldap-postfix-cyrus-imap-tls-sasl-spamassassin-amavis-etc/#comments</comments>
		<pubDate>Tue, 03 Feb 2009 22:22:40 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Configurations]]></category>
		<category><![CDATA[Divers]]></category>
		<category><![CDATA[Evènements]]></category>
		<category><![CDATA[Planet-Libre]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[Mail]]></category>
		<category><![CDATA[Messagerie]]></category>
		<category><![CDATA[Serveur]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=1064</guid>
		<description><![CDATA[Postfix, Cyrus, OpenLdap, Spamassassin, Amavis, etc&#8230; sont des logiciels qui ont largement fait leurs preuves et qui, assemblés, constituent un serveur de mails robuste et performant. Je me suis amusé, le week-end dernier, à assembler et configurer tous ces composants sur une distribution Debian Etch pour construire un tel serveur, en ajoutant en prime un [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><img class="alignleft size-full wp-image-1110" title="mysza1" src="http://www.jopa.fr/wp-content/uploads/2009/02/mysza1.gif" alt="mysza1" width="130" height="91" /></p>
<p style="text-align: justify;"><em>Postfix, Cyrus, OpenLdap, Spamassassin, Amavis, etc&#8230; </em>sont des logiciels qui ont largement fait leurs preuves et qui, assemblés, constituent un serveur de mails robuste et performant. Je me suis amusé, le week-end dernier, à assembler et configurer tous ces composants sur une distribution <em>Debian Etch </em>pour construire un tel serveur<em>, </em>en ajoutant en prime un poil de sécurité grâce à SASL et TLS.  La tâche est loin d&#8217;être insurmontable, à condition de prendre les choses méthodiquement et calmement. Dans le bon ordre, les briques s&#8217;assemblent à merveille et c&#8217;est un vrai bonheur à construire.</p>
<p style="text-align: justify;">Nous allons voir, dans cet article, la mise en place d&#8217;une telle solution. Comme pour les précédents articles dédiés à <a title="http://www.jopa.fr/index.php/2008/12/14/groupwares-1ere-partie-installation-de-zimbra/" href="http://www.jopa.fr/index.php/2008/12/14/groupwares-1ere-partie-installation-de-zimbra/">Zimbra</a> et <a title="http://www.jopa.fr/index.php/2009/01/31/installation_obm_minig/" href="http://www.jopa.fr/index.php/2009/01/31/installation_obm_minig/">OBM</a>, nous allons réutiliser ma machine &laquo;&nbsp;labo&nbsp;&raquo; fraichement réinstallée avec une Debian Etch, tout ce qu&#8217;il y a de plus  classique.</p>
<p style="text-align: justify;"><span style="color: #0000ff;">Note du 28 Juillet 2009 : Mise à jour de l&#8217;article pour Debian Lenny.</span></p>
<p style="text-align: justify;"><span id="more-1064"></span></p>
<h1 style="text-align: justify;">1ère brique : Le serveur LDAP</h1>
<p style="text-align: justify;">Nous allons commencer par installer et configurer un petit annuaire LDAP de test. Il est bien entendu tout à fait possible de se baser sur un annuaire existant. Nous n&#8217;employerons  par la suite que 3 champs de la classe InetOrgPerson pour authentifier les utilisateurs et orienter la distribution du courrier. A savoir : uid, userPassword et mail. Il également possible d&#8217;utiliser d&#8217;autres champs en adaptant la configuration.</p>
<p style="text-align: justify;">Allez ! C&#8217;est parti !</p>
<p style="text-align: justify;"><span style="color: #800000;"><em># aptitude install slapd ldap-utils</em></span></p>
<p style="text-align: justify;">Le fichier de configuration de openLDAP est<em> /etc/ldap/slapd.conf.</em> Après l&#8217;installation, il devrait avoir la tête suivante :</p>
<h2 style="text-align: justify;">/etc/ldap/slapd.conf</h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code18'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106418"><td class="code" id="p1064code18"><pre class="ini" style="font-family:monospace;"># Allow LDAPv2 binds
allow bind_v2
&nbsp;
# Schema and objectClass definitions
include         /etc/ldap/schema/core.schema
include         /etc/ldap/schema/cosine.schema
include         /etc/ldap/schema/nis.schema
include         /etc/ldap/schema/inetorgperson.schema
&nbsp;
# Where the pid file is put. The init.d script
# will not stop the server if you change this.
pidfile         /var/run/slapd/slapd.pid
&nbsp;
# List of arguments that were passed to the server
argsfile        /var/run/slapd/slapd.args
&nbsp;
# Read slapd.conf<span style="">&#40;</span><span style="">5</span><span style="">&#41;</span> for possible values
loglevel        <span style="">0</span>
&nbsp;
# Where the dynamically loaded modules are stored
modulepath      /usr/lib/ldap
moduleload      back_bdb
&nbsp;
# The maximum number of entries that is returned for a search operation
sizelimit <span style="">500</span>
&nbsp;
# The tool-threads parameter sets the actual amount of cpu's that is used
# for indexing.
tool-threads <span style="">1</span>
&nbsp;
#######################################################################
# Specific Backend Directives for bdb:
# Backend specific directives apply to this backend until another
# 'backend' directive occurs
backend         bdb
checkpoint <span style="">512</span> <span style="">30</span>
&nbsp;
#######################################################################
# Specific Directives for database #<span style="">1</span>, of type bdb:
# Database specific directives apply to this databasse until another
# 'database' directive occurs
database        bdb
&nbsp;
# The base of your directory in database #<span style="">1</span>
suffix          <span style="color: #933;">&quot;dc=linet,dc=jopa,dc=fr&quot;</span>
&nbsp;
# Where the database file are physically stored for database #<span style="">1</span>
directory       <span style="color: #933;">&quot;/var/lib/ldap&quot;</span>
&nbsp;
# For the Debian package we use 2MB as default but be sure to update this
# value if you have plenty of RAM
dbconfig set_cachesize <span style="">0</span> <span style="">2097152</span> <span style="">0</span>
&nbsp;
# Number of objects that can be locked at the same time.
dbconfig set_lk_max_objects <span style="">1500</span>
# Number of locks <span style="">&#40;</span>both requested and granted<span style="">&#41;</span>
dbconfig set_lk_max_locks <span style="">1500</span>
# Number of lockers
dbconfig set_lk_max_lockers <span style="">1500</span>
&nbsp;
# Indexing options for database #<span style="">1</span>
index           objectClass eq
&nbsp;
# Save the time that the entry gets modified, for database #<span style="">1</span>
lastmod         on
&nbsp;
# The userPassword by default can be changed
# by the entry owning it if they are authenticated.
# Others should not be able to see it, except the
# admin entry below
# These access lines apply to database #<span style="">1</span> only
access to attrs<span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">userPassword,shadowLastChange</span>
        by dn<span style="color: #000066; font-weight:bold;">=</span><span style="color: #933;">&quot;cn=admin,dc=linet,dc=jopa,dc=fr&quot;</span> write
        by anonymous auth
        by self write
        by * none
&nbsp;
# Ensure read access to the base for things like
# supportedSASLMechanisms.  Without this you may
# have problems with SASL not knowing what
# mechanisms are available and the like.
# Note that this is covered by the 'access to *'
# ACL below too but if you change that as people
# are wont to do you'll still need this if you
# want SASL <span style="">&#40;</span>and possible other things<span style="">&#41;</span> to work
# happily.
access to dn.base<span style="color: #000066; font-weight:bold;">=</span><span style="color: #933;">&quot;&quot;</span> by * read
&nbsp;
# The admin dn has full write access, everyone else
# can read everything.
access to *
        by dn<span style="color: #000066; font-weight:bold;">=</span><span style="color: #933;">&quot;cn=admin,dc=linet,dc=jopa,dc=fr&quot;</span> write
        by * none
#        by * read</pre></td></tr></table></div>

<p style="text-align: justify;">Il est plus &laquo;&nbsp;sécure&nbsp;&raquo; de supprimer l&#8217;autorisation de lecture pour les utilisateurs non authentifiés en remplaçant &laquo;&nbsp;by * read&nbsp;&raquo; par &laquo;&nbsp;by * none&nbsp;&raquo; dans la dernière ACL.</p>
<p style="text-align: justify;">Pour la partie cliente du serveur ldap (utile pour <em>ldapsearch</em> par exemple), c&#8217;est le fichier <em>/etc/ldap/ldap.conf.</em></p>
<h2 style="text-align: justify;">/etc/ldap/ldap.conf</h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code19'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106419"><td class="code" id="p1064code19"><pre class="ini" style="font-family:monospace;"># $OpenLDAP: pkg/ldap/libraries/libldap/ldap.conf,v <span style="">1.9</span> <span style="">2000</span>/09/04 <span style="">19</span>:<span style="">57</span>:01 kurt Exp $
#
# LDAP Defaults
#
# See ldap.conf<span style="">&#40;</span><span style="">5</span><span style="">&#41;</span> for details
# This file should be world readable but not world writable.
BASE    dc<span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">linet, dc=jopa, dc=fr</span>
URI     ldap://localhost
#SIZELIMIT      <span style="">12</span>
#TIMELIMIT      <span style="">15</span>
#DEREF          never</pre></td></tr></table></div>

<p style="text-align: justify;">Le serveur LDAP étant opérationnel, nous ajoutons quelques utilisateurs à l&#8217;annuaire. Créons un petit fichier LDIF contenant 4 utilisateurs. L&#8217;utilisateur Cyrus servira plus tard pour administrer les boites Imap.</p>
<h2 style="text-align: justify;">Utilisateurs.ldif</h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code20'); return false;">View Code</a> LDIF</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106420"><td class="code" id="p1064code20"><pre class="ldif" style="font-family:monospace;">dn: uid=cyrus,dc=linet,dc=jopa,dc=fr
uid: cyrus
cn: Administrateur Cyrus
sn: Cyrus
userPassword: MonMotDePasseSecret
objectClass: inetOrgPerson
&nbsp;
dn: uid=joel,dc=linet,dc=jopa,dc=fr
uid: joel
cn: Joël PASTRE
sn: PASTRE
mail:joel@linet.jopa.fr
userPassword: LeMotDePasseDeJoel
objectClass: inetOrgPerson
&nbsp;
dn: uid=jean,dc=linet,dc=jopa,dc=fr
uid: jean
cn: Jean DUPONT
sn: DUPONT
mail:jean@linet.jopa.fr
userPassword: LeMotDePasseDeJean
objectClass: inetOrgPerson
&nbsp;
dn: uid=jojo,dc=linet,dc=jopa,dc=fr
uid: jojo
cn: jojo LAAAPIN
sn: LAAAPIN
mail:jojo@linet.jopa.fr
userPassword: laaaaaaaapin
objectClass: inetOrgPerson</pre></td></tr></table></div>

<p style="text-align: justify;">On ajoute tout ça à l&#8217;annuaire :</p>
<p style="text-align: justify;"><span style="color: #800000;"># ldapadd -x -f utilisateurs.ldif -D &laquo;&nbsp;cn=admin,dc=linet,dc=jopa,dc=fr&nbsp;&raquo; -w MotDePasseAdminLDAP<br />
adding new entry &laquo;&nbsp;uid=cyrus,dc=linet,dc=jopa,dc=fr&nbsp;&raquo;</span> <span style="color: #800000;"><br />
adding new entry &laquo;&nbsp;uid=joel,dc=linet,dc=jopa,dc=fr&nbsp;&raquo;</span> <span style="color: #800000;"><br />
adding new entry &laquo;&nbsp;uid=jean,dc=linet,dc=jopa,dc=fr&nbsp;&raquo;</span><br />
<span style="color: #800000;">adding new entry &laquo;&nbsp;uid=jojo,dc=linet,dc=jopa,dc=fr&nbsp;&raquo;</span></p>
<p style="text-align: justify;">Voilà pour l&#8217;annuaire&#8230; penchons nous maintenant sur l&#8217;authentification&#8230;</p>
<h1 style="text-align: justify;">2ème brique : SASL</h1>
<p style="text-align: justify;"><span style="color: #800000;"># aptitude install sasl2-bin</span></p>
<p style="text-align: justify;">Le fichier : <em>/etc/saslauthd.conf </em>(à créer de toute pièce) va permettre à <em>saslauthd</em> d&#8217;utiliser l&#8217;annuaire <em>ldap</em> comme base d&#8217;utilisateurs et de mots de passe.</p>
<h2 style="text-align: justify;">/etc/saslauthd.conf</h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code21'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106421"><td class="code" id="p1064code21"><pre class="ini" style="font-family:monospace;"># SERVEUR LDAP
LDAP_SERVERS: ldap://localhost
&nbsp;
# DOMAINE
LDAP_DEFAULT_DOMAIN: linet.jopa.fr
&nbsp;
LDAP_TIMEOUT: <span style="">10</span>
LDAP_TIME_LIMIT: <span style="">10</span>
LDAP_CACHE_TTL: <span style="">30</span>
LDAP_CACHE_MEM: <span style="">32768</span>
&nbsp;
# VERSION LDAP
LDAP_VERSION: <span style="">3</span>
&nbsp;
# SASL Pour l'accès au serveur
LDAP_USE_SASL: no
&nbsp;
# Méthode d'authentification <span style="">&#40;</span>bind / custom / fastbind<span style="">&#41;</span>
LDAP_AUTH_METHOD: bind
&nbsp;
# Utilisateur utilisé pour la connexion - Si vide <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> Anonyme</span>
LDAP_BIND_DN: cn<span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">admin,dc=linet,dc=jopa,dc=fr</span>
# Et le mot de passe
LDAP_BIND_PW: MotDePasseAdminLDAP
&nbsp;
# Base de départ de la recherche
LDAP_SEARCH_BASE: dc<span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">linet,dc=jopa,dc=fr</span>
# Et profondeur <span style="">&#40;</span>sub / one / base <span style="">&#41;</span>
LDAP_SCOPE: sub
&nbsp;
# Filtre de recherche : uid dans notre cas
LDAP_FILTER: uid<span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">%u</span>
# Et nom du champ contenant le mot de passe
LDAP_PASSWORD_ATTR: userPassword</pre></td></tr></table></div>

<p style="text-align: justify;"><strong><br />
</strong></p>
<p style="text-align: justify;"><strong>Attention : Ce fichier est créé par défaut en lecture pour tout le monde sous Debian. Il est impératif de changer ses droit pour n&#8217;autoriser la lecture qu&#8217;à l&#8217;utilisateur root.</strong></p>
<p style="text-align: justify;"><span style="color: #800000;"># chmod 600 /etc/saslauthd.conf</span></p>
<p style="text-align: justify;">L&#8217;activation de l&#8217;authentification <em>sasl</em> et l&#8217;utilisation de se fichier se font par modification de <em>/etc/default/saslauthd</em>.</p>
<p style="text-align: justify;">Il faut bien penser à activer le démon (<em>START=yes</em>) et spécifier la méthode d&#8217;authentification utilisée par <em>saslauthd</em> (ldap dans mon cas).</p>
<h2 style="text-align: justify;">/etc/default/saslauthd</h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code22'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106422"><td class="code" id="p1064code22"><pre class="ini" style="font-family:monospace;">#
# Settings for saslauthd daemon
#
# Should saslauthd run automatically on startup? <span style="">&#40;</span>default: no<span style="">&#41;</span>
## ICI : démarrage automatique du démon
<span style="color: #000099;">START</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">yes</span>
&nbsp;
# Which authentication mechanisms should saslauthd use? <span style="">&#40;</span>default: pam<span style="">&#41;</span>
#
# Available options in this Debian package:
# getpwent  -- use the getpwent<span style="">&#40;</span><span style="">&#41;</span> library function
# kerberos5 -- use Kerberos <span style="">5</span>
# pam       -- use PAM
# rimap     -- use a remote IMAP server
# shadow    -- use the local shadow password file
# sasldb    -- use the local sasldb database file
# ldap      -- use LDAP <span style="">&#40;</span>configuration is in /etc/saslauthd.conf<span style="">&#41;</span>
#
# Only one option may be used at a time. See the saslauthd man page
# for more information.
#
# Example: MECHANISMS<span style="color: #000066; font-weight:bold;">=</span><span style="color: #933;">&quot;pam&quot;</span>
# ICI : Méthode d'authentification et Paramètre : Fichier saslauthd.conf
<span style="color: #000099;">MECHANISMS</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #933;">&quot;ldap&quot;</span>
<span style="color: #000099;">PARAMS</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #933;">&quot;-O /etc/saslauthd.conf&quot;</span>
&nbsp;
# Additional options for this mechanism. <span style="">&#40;</span>default: none<span style="">&#41;</span>
# See the saslauthd man page for information about mech-specific options.
<span style="color: #000099;">MECH_OPTIONS</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #933;">&quot;&quot;</span>
&nbsp;
# How many saslauthd processes should we run? <span style="">&#40;</span>default: <span style="">5</span><span style="">&#41;</span>
# A value of <span style="">0</span> will fork a new process for each connection.
<span style="color: #000099;">THREADS</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">5</span>
# Other options <span style="">&#40;</span>default: -c<span style="">&#41;</span>
# See the saslauthd man page for information about these options.
#
# Example for postfix users: <span style="color: #933;">&quot;-c -m /var/spool/postfix/var/run/saslauthd&quot;</span>
# Note: See /usr/share/doc/sasl2-bin/README.Debian
&nbsp;
# Nécessaire pour le chroot de Postfix <span style="">&#40;</span>par defaut sous Debian<span style="">&#41;</span>
<span style="color: #000099;">OPTIONS</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #933;">&quot;-c -m /var/spool/postfix/var/run/saslauthd&quot;</span></pre></td></tr></table></div>

<p style="text-align: justify;">Démarrage du démon saslauthd:</p>
<p style="text-align: justify;"><span style="color: #800000;"># /etc/init.d/saslauthd start</span></p>
<p style="text-align: justify;">Et test :</p>
<p style="text-align: justify;"><span style="color: #800000;"> #  testsaslauthd -u jean -p LeMotDePasseDeJean<br />
0: OK &laquo;&nbsp;Success.&nbsp;&raquo;</span></p>
<p style="text-align: justify;"><span style="color: #800000;">#  testsaslauthd -u jojo -p laaaaaaaapin<br />
0: OK &laquo;&nbsp;Success.&nbsp;&raquo;</span></p>
<p style="text-align: justify;">Bon ! Une de plus !!!</p>
<h1 style="text-align: justify;">3ème brique : Cyrus</h1>
<p style="text-align: justify;">Nous voilà capable d&#8217;authentifier nos utilisateurs,  nous allons pouvoir leur créer des boites imap  (et pop accessoirement). Installons donc <em>cyrus-imap</em>, ses outils d&#8217;administrations, sa doc et tous les paquets nécessaires à l&#8217;authentifications sasl.</p>
<p style="text-align: justify;"><span style="color: #800000;"># aptitude install cyrus-admin-2.2 cyrus-clients-2.2 cyrus-imapd-2.2 cyrus-pop3d-2.2 cyrus-sasl2-doc cyrus-doc-2.2<br />
# aptitude install libauthen-sasl-cyrus-perl libcyrus-imap-perl22 libsasl2-2  libauthen-sasl-perl libsasl2-modules</span></p>
<p style="text-align: justify;">Le fichier de configuration principal est <em>/etc/imapd.conf </em>. Il y a juste quelques bricoles à changer :</p>
<h2 style="text-align: justify;">/etc/imapd.conf</h2>
<ul>
<li><span style="color: #008000;">admins: cyrus </span> ( à décommenter : Nom de l&#8217;administrateur du serveur imapd&#8230; Si si ! C&#8217;est bien l&#8217;utilisateur cyrus que nous avons inséré dans l&#8217;annuaire),</li>
<li><span style="color: #008000;">sasl_pwcheck_method: saslauthd</span> (à modifier pour préciser la méthode de gestion des mots de passe),</li>
<li><span style="color: #008000;">sasl_mech_list : PLAIN </span> (à décommenter).</li>
</ul>
<p style="text-align: justify;"><span style="color: #800000;"># /etc/init.d/cyrus2.2 restart</span></p>
<p style="text-align: justify;">Si tout est bon, la commande : <span style="color: #800000;">cyradm &#8211;user cyrus localhost</span> devrait permettre la connexion au shell d&#8217;administration imap et la création des boites. Afin de garantir un nommage unique et cohérent, nous utiliserons tout simplement comme nom, l&#8217;<em>uid</em> de leur propriétaire.</p>
<p style="text-align: justify;"><span style="color: #800000;"># cyradm &#8211;user cyrus localhost<br />
Password:<br />
localhost&gt; cm user.joel<br />
localhost&gt; cm user.jean<br />
localhost&gt; cm user.jojo<br />
localhost&gt; lm<br />
user.jean (HasNoChildren)  user.jojo (HasNoChildren)<br />
user.joel (HasNoChildren)<br />
localhost&gt; quit</span></p>
<p style="text-align: justify;">Ca&#8230;.C&#8217;est fait.. Il est dès à présent possible de se connecter au serveur Imap avec un client de messagerie. Bon d&#8217;accord, l&#8217;intérêt est très limité vu qu&#8217;aucun agent de distribution n&#8217;est configuré; si ce n&#8217;est pour valider le travail réalisé jusque là&#8230;</p>
<p style="text-align: justify;"><img class="aligncenter size-full wp-image-1092" title="capture-parametres-des-comptes" src="http://www.jopa.fr/wp-content/uploads/2009/02/capture-parametres-des-comptes.png" alt="capture-parametres-des-comptes" width="546" height="569" /></p>
<p style="text-align: justify;">
<p style="text-align: justify;">Il manque encore une brique à notre projet de maçonnerie afin de pouvoir envoyer et reçevoir des mails : C&#8217;est <em>Postfix</em> bien entendu&#8230;</p>
<h1 style="text-align: justify;">4ème brique : Postfix</h1>
<p style="text-align: justify;"><em>Postfix </em>va identifier les destinataires de mails reçus en interrogeant directement l&#8217;annuaire <em>LDAP</em>.</p>
<p style="text-align: justify;">Comme nous voulons que nos utilisateurs nomades puissent envoyer des mails via ce serveur, même s&#8217;ils sont à l&#8217;extérieur de mon réseau privé, nous les authentifierons sur le serveur smtp grâce à <em>saslauthd</em> &#8230; une fois de plus.</p>
<p style="text-align: justify;"><span style="color: #800000;"># aptitude install postfix postfix-tls postfix-ldap</span></p>
<p style="text-align: justify;">Sur une install Debian toute neuve, aptitude détecte un conflit avec Exim4 et propose de le désinstaller. C&#8217;est bien ce qu&#8217;il faut faire !</p>
<p style="text-align: justify;">L&#8217;installateur demande le type de serveur et le domaine de courrier. Choisissons  une configuration de type &laquo;&nbsp;Site Internet&nbsp;&raquo; et dans ce cas précis, nous travaillons sur le domaine &laquo;&nbsp;linet.jopa.fr&nbsp;&raquo;. Les réponses à ces questions n&#8217;ont pas ici, une grande importance : Nous reprendrons manuellement la configuration plus loin.</p>
<p style="text-align: justify;"><img class="aligncenter size-full wp-image-1072" title="postfix" src="http://www.jopa.fr/wp-content/uploads/2009/02/postfix.png" alt="postfix" width="513" height="348" /></p>
<p style="text-align: justify;">Pour que la distribution locale du courrier soit assurée par <em>Cyrus-Imap</em>, nous devons déclarer <em>Cyrus</em> comme agent de distribution. Ceci se fait par l&#8217;intermédiaire du fichier <em>/etc/postfix/master.cf </em>en ajoutant une ligne en fin de fichier :</p>
<h2 style="text-align: justify;">/etc/postfix/master.cf</h2>
<p style="text-align: justify;"><span style="color: #008000;"><strong>cyrus</strong> unix    -       n       n       -       -       pipe    flags=R user=<strong>cyrus</strong> argv=/usr/sbin/cyrdeliver -e -m ${extension} ${user} </span></p>
<p style="text-align: justify;">Le suite se passe dans le fichier principal de configuration de postfix : <em>/etc/postfix/main.cf</em></p>
<h2 style="text-align: justify;">/etc/postfix/main.cf</h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code23'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106423"><td class="code" id="p1064code23"><pre class="ini" style="font-family:monospace;"># See /usr/share/postfix/main.cf.dist for a commented, more complete version
&nbsp;
# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
&nbsp;
<span style="color: #000099;">myorigin</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> /etc/mailname</span>
&nbsp;
<span style="color: #000099;">smtpd_banner</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> $myhostname ESMTP $mail_name <span style="">&#40;</span>Debian/GNU<span style="">&#41;</span></span>
<span style="color: #000099;">biff</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> no</span>
&nbsp;
# appending .domain is the MUA's job.
<span style="color: #000099;">append_dot_mydomain</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> no</span>
&nbsp;
# Uncomment the next line to generate <span style="color: #933;">&quot;delayed mail&quot;</span> warnings
#delay_warning_time <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> 4h</span>
&nbsp;
# PARAMETRES TLS : Configuré automatiquement par postfix-tls
<span style="color: #000099;">smtpd_tls_cert_file</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">/etc/ssl/certs/ssl-cert-snakeoil.pem</span>
<span style="color: #000099;">smtpd_tls_key_file</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">/etc/ssl/private/ssl-cert-snakeoil.key</span>
<span style="color: #000099;">smtpd_use_tls</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">yes</span>
<span style="color: #000099;">smtpd_tls_session_cache_database</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> btree:$<span style="">&#123;</span>queue_directory<span style="">&#125;</span>/smtpd_scache</span>
<span style="color: #000099;">smtp_tls_session_cache_database</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> btree:$<span style="">&#123;</span>queue_directory<span style="">&#125;</span>/smtp_scache</span>
&nbsp;
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.
&nbsp;
<span style="color: #000099;">myhostname</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> labo.linet.jopa.fr</span>
&nbsp;
# PARAMETRES LDAP
<span style="color: #000099;">mailbox_maps</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> ldap:/etc/postfix/ldap-accounts.cf</span>
<span style="color: #000099;">alias_maps</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> ldap:/etc/postfix/ldap-aliases.cf</span>
&nbsp;
<span style="color: #000099;">mydestination</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> linet.jopa.fr, labo.linet.jopa.fr, localhost.linet.jopa.fr, localhost</span>
<span style="color: #000099;">relayhost</span> <span style="color: #000066; font-weight:bold;">=</span>
&nbsp;
# On notera que seul localhost est identifié. Les autres clients devront s'authentifier
<span style="color: #000099;">mynetworks</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> 127.0.0.0/8</span>
&nbsp;
# Agent de transport local : CYRUS
<span style="color: #000099;">local_transport</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> cyrus</span>
&nbsp;
<span style="color: #000099;">recipient_delimiter</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> +</span>
&nbsp;
# Restrictions
<span style="color: #000099;">smtpd_recipient_restrictions</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> reject_unauth_pipelining,</span>
                                            reject_non_fqdn_recipient,
                                            reject_unauth_destination,
                                            permit_mynetworks,
                                            permit_sasl_authenticated
&nbsp;
<span style="color: #000099;">smtpd_sender_restrictions</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">  reject_non_fqdn_sender,</span>
                                           reject_unknown_sender_domain,
                                           reject_unauth_pipelining,
                                           permit_sasl_authenticated,
                                           permit_mynetworks
&nbsp;
# AUTHENTIFICATION SASL
<span style="color: #000099;">smtpd_sasl_auth_enable</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> yes</span>
<span style="color: #000099;">smtpd_sasl_security_options</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> noanonymous</span>
<span style="color: #000099;">smtpd_sasl_local_domain</span> <span style="color: #000066; font-weight:bold;">=</span>
&nbsp;
<span style="color: #000099;">inet_interfaces</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> all</span></pre></td></tr></table></div>

<p>Il faut particulièrement être attentif au points suivants de la configuration :</p>
<ul>
<li><em><span style="color: #008000;"> mailbox_maps = ldap:/etc/postfix/ldap-accounts.cf</span></em> et <em>alias_maps = ldap:/etc/postfix/ldap-aliases.cf </em>pour la validation des destinataires par recherche dans le ldap,</li>
<li><em><span style="color: #008000;">mynetworks = 127.0.0.0/8</span></em> pour n&#8217;autoriser que Localhost à envoyer ou recevoir des mails (permit_mynetworks), les autres seront authentifiés via<em> saslauthd</em>,</li>
<li><em><span style="color: #008000;">local_transport = cyrus</span></em> pour déclarer Cyrus comme agent de transport local,</li>
<li>et enfin,<span style="color: #008000;"><em> smtpd_sasl_auth_enable = yes</em></span> pour activer l&#8217;authentification sasl.</li>
</ul>
<p style="text-align: justify;">Pour l&#8217;accès au LDAP, nous faisons référence à deux fichiers : <em>/etc/postfix/ldap-accounts.cf</em> et <em>/etc/postfix/ldap-aliases.cf</em></p>
<h2 style="text-align: justify;"><em>/etc/postfix/ldap-accounts.cf</em></h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code24'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106424"><td class="code" id="p1064code24"><pre class="ini" style="font-family:monospace;"><span style="color: #000099;">server_host</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> localhost</span>
<span style="color: #000099;">server_port</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> 389</span>
<span style="color: #000099;">search_base</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> dc=linet, dc=jopa, dc=fr</span>
<span style="color: #000099;">query_filter</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> <span style="">&#40;</span>&amp;<span style="">&#40;</span>objectClass<span style="color: #000066; font-weight:bold;">=</span>InetOrgPerson<span style="">&#41;</span><span style="">&#40;</span>mail<span style="color: #000066; font-weight:bold;">=</span>%s<span style="">&#41;</span><span style="">&#41;</span></span>
<span style="color: #000099;">result_attribute</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> uid</span>
<span style="color: #000099;">bind</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> yes</span>
<span style="color: #000099;">bind_dn</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> cn=admin,dc=linet,dc=jopa,dc=fr</span>
<span style="color: #000099;">bind_pw</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> MotDePasseAdminLDAP</span>
<span style="color: #000099;">version</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> 3</span></pre></td></tr></table></div>

<h2 style="text-align: justify;"><em>/etc/postfix/ldap-aliases.cf</em></h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code25'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106425"><td class="code" id="p1064code25"><pre class="ini" style="font-family:monospace;"><span style="color: #000099;">server_host</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> localhost</span>
<span style="color: #000099;">server_port</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> 389</span>
<span style="color: #000099;">search_base</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> dc=linet, dc=jopa, dc=fr</span>
<span style="color: #000099;">query_filter</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> <span style="">&#40;</span>&amp;<span style="">&#40;</span>objectClass<span style="color: #000066; font-weight:bold;">=</span>InetOrgPerson<span style="">&#41;</span><span style="">&#40;</span>mail<span style="color: #000066; font-weight:bold;">=</span>%s<span style="">&#41;</span><span style="">&#41;</span></span>
<span style="color: #000099;">result_attribute</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> mail</span>
<span style="color: #000099;">bind</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> yes</span>
<span style="color: #000099;">bind_dn</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> cn=admin,dc=linet,dc=jopa,dc=fr</span>
<span style="color: #000099;">bind_pw</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> MotDePasseAdminLDAP</span>
<span style="color: #000099;">version</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> 3</span></pre></td></tr></table></div>

<p>N&#8217;oublions pas de gérer les droits de ces 2 fichiers :</p>
<p><span style="color: #800000;"># chown root:sasl ldap*.cf<br />
# chmod 640 ldap*.cf<br />
</span></p>
<p><em>L&#8217;attribut en retour ici est mail (result_attribute = mail) , mais il peut être très judicieux d&#8217;ajouter à l&#8217;annuaire LDAP un champ &laquo;&nbsp;maildrop&nbsp;&raquo; qui sera retourné ici. Ce champ donnera alors une vrai fonctionnalité d&#8217;alias, permettant de transférer tout mail à destination de l&#8217;utilisateur vers une ou plusieurs autres adresses email.</em></p>
<p><em>De plus, il faut noter que dans la configuration actuelle et sans cette notion d&#8217;alias, une boîte cyrus doit être assiciée à chaque adresse email locale. En effet, Cyrus recherche une boîte dont le nom correspond au préfixe de l&#8217;adresse email du destinataire (ce qui est avant le @en bref).<br />
</em></p>
<p style="text-align: justify;">L&#8217;authentification SASL à besoin d&#8217;un fichier : <em>/etc/postfix/sasl/smtpd.conf</em> . Attention, sous d&#8217;autres distributions, le fichier peut être cherché ailleur, généralement dans <em>/usr/lib/sasl2/ </em>ou <em>/usr/local/lib/sasl2</em>. Elle a également besoin que l&#8217;utilisateur &laquo;&nbsp;<em>postfix</em>&nbsp;&raquo; appartienne au groupe SASL.</p>
<p style="text-align: justify;"><span style="color: #800000;"># adduser postfix sasl<br />
# id postfix<br />
uid=106(postfix) gid=106(postfix) groupes=106(postfix),45(sasl)<br />
# vi /etc/postfix/sasl/smtpd.conf</span></p>
<h2 style="text-align: justify;"><em>/etc/postfix/sasl/smtpd.conf</em></h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code26'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106426"><td class="code" id="p1064code26"><pre class="ini" style="font-family:monospace;">pwcheck_method: saslauthd
mech_list: plain</pre></td></tr></table></div>

<p style="text-align: justify;">Note : Debian fait tourner Postfix dans un chroot. En cas de problème d&#8217;accès au socket SASL, il faut bien vérifier la ligne OPTIONS du fichier <em>/etc/default/saslauthd</em>.</p>
<h2 style="text-align: justify;">/etc/default/saslauthd</h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code27'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106427"><td class="code" id="p1064code27"><pre class="ini" style="font-family:monospace;">#
# Settings for saslauthd daemon
..
# Nécessaire pour le chroot de Postfix <span style="">&#40;</span>par defaut sous Debian<span style="">&#41;</span>
<span style="color: #000099;">OPTIONS</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #933;">&quot;-c -m /var/spool/postfix/var/run/saslauthd&quot;</span></pre></td></tr></table></div>

<h2 style="text-align: justify;"><em><em>/etc/postfix/master.cf</em></em></h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code28'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106428"><td class="code" id="p1064code28"><pre class="ini" style="font-family:monospace;">service type  private unpriv  chroot  wakeup  maxproc command + args
#               <span style="">&#40;</span>yes<span style="">&#41;</span>   <span style="">&#40;</span>yes<span style="">&#41;</span>   <span style="">&#40;</span>yes<span style="">&#41;</span>   <span style="">&#40;</span>never<span style="">&#41;</span> <span style="">&#40;</span><span style="">100</span><span style="">&#41;</span>
# <span style="color: #000066; font-weight:bold;">==========================================================================</span>
smtp      inet  n       -       -       -       -       smtpd
...</pre></td></tr></table></div>

<p style="text-align: justify;"><span style="color: #800000;"><br />
</span><span style="color: #800000;"> </span></p>
<p style="text-align: justify;">Allez&#8230; Là, ça prend carrément forme. Testons sans plus attendre en configurant un serveur <em>smtp </em>sur notre client de messagerie préféré :</p>
<p style="text-align: justify;"><img class="aligncenter size-full wp-image-1102" title="smtp_tls" src="http://www.jopa.fr/wp-content/uploads/2009/02/smtp_tls.jpg" alt="smtp_tls" width="336" height="282" /></p>
<p style="text-align: justify;">On peut remarquer que, après acceptation des certificats, la connexion sécurisée TLS fonctionne parfaitement. C&#8217;est biensûr dû à l&#8217;installation de <em>postfix-tls </em>qui a généré les certificats et préconfiguré <em>Postfix</em>. Cette fonctionnalité n&#8217;apporte malheureusement pas grand chose tant que la connexion <em>Imap </em>n&#8217;est pas elle aussi sécurisée, tout particulièrement dans notre cas où les noms d&#8217;utilisateurs et mots de passes sont identiques pour les deux services.</p>
<h1 style="text-align: justify;">Petit retour arrière : Cyrus-Imap (TLS)</h1>
<p style="text-align: justify;">Afin d&#8217;activer le support TLS pour Cyrus-Imap, il suffit d&#8217;éditer le fichier /etc/imapd.conf et de décommenter les deux lignes suivantes (le certificat utilisé est le même que pour postfix). L&#8217;utilisateur <em>cyrus</em> doit appartenir au groupe <em>ssl-cert</em> pour pouvoir lire la clef privée.</p>
<p style="text-align: justify;"><span style="color: #800000;"># adduser cyrus ssl-cert</span></p>
<h2 style="text-align: justify;">/etc/imapd.conf</h2>
<p style="text-align: justify;"><span style="color: #008000;">tls_cert_file: /etc/ssl/certs/ssl-cert-snakeoil.pem</span></p>
<p style="text-align: justify;"><span style="color: #008000;"> tls_key_file: /etc/ssl/private/ssl-cert-snakeoil.key</span></p>
<p style="text-align: justify;"><img class="aligncenter size-full wp-image-1103" title="imap_tls_non_sec" src="http://www.jopa.fr/wp-content/uploads/2009/02/imap_tls_non_sec.jpg" alt="imap_tls_non_sec" width="526" height="210" /></p>
<p style="text-align: justify;">
<p style="text-align: justify;">
<p style="text-align: justify;">Il est temps maintenant de prémunir notre système contre les spams et les virus.</p>
<h1 style="text-align: justify;">5ème brique : Anti-spams &#8211; GreyListing</h1>
<blockquote>
<p style="text-align: justify;">Le <strong>greylisting</strong> (le mot anglais signifie : « inscription sur liste grise ») est une technique <a title="Anti-spam" href="http://fr.wikipedia.org/wiki/Anti-spam">antipourriel</a> très simple qui consiste à rejeter temporairement un message, par émission d’un code de refus temporaire au serveur émetteur (<a class="mw-redirect" title="Mail transfer agent" href="http://fr.wikipedia.org/wiki/Mail_transfer_agent">MTA</a>). Dans la majorité des cas, les serveurs émetteurs réexpédient le courriel après quelques minutes. La plupart des serveurs émettant des <a title="Pourriel" href="http://fr.wikipedia.org/wiki/Pourriel">pourriels</a> ne prendraient pas cette peine.</p>
<p style="text-align: justify;">( <a title="http://fr.wikipedia.org/wiki/Greylisting" href="http://fr.wikipedia.org/wiki/Greylisting">http://fr.wikipedia.org/wiki/Greylisting</a> )</p>
</blockquote>
<p style="text-align: justify;">L&#8217;installation est basique, et il n&#8217;y a pas grand chose à ajouter au paramétrage par défaut.</p>
<p style="text-align: justify;"><span style="color: #800000;"># aptitude install postgrey</span></p>
<p style="text-align: justify;">La mise en service se fait par l&#8217;ajout de la  règle &laquo;&nbsp;<em>check_policy_service inet:[127.0.0.1]:60000</em>&laquo;&nbsp;  à  &laquo;&nbsp;<em>smtpd_recipient_restrictions</em>&nbsp;&raquo; dans le fichier <em>/etc/postfix/main.cf</em></p>
<h2 style="text-align: justify;"><em>/etc/postfix/main.cf</em></h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code29'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106429"><td class="code" id="p1064code29"><pre class="ini" style="font-family:monospace;"><span style="color: #000099;">smtpd_recipient_restrictions</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> reject_unauth_pipelining,</span>
permit_mynetworks,
permit_sasl_authenticated,
reject_non_fqdn_recipient,
reject_unauth_destination,
check_policy_service inet:<span style="color: #000066; font-weight:bold;"><span style="">&#91;</span>127.0.0.1<span style="">&#93;</span></span>:<span style="">60000</span></pre></td></tr></table></div>

<h1 style="text-align: justify;">6ème brique : Anti-spams / Antivirus &#8211; Amavis / SpamAssassin / Clamav</h1>
<p style="text-align: justify;">C&#8217;est <em>Amavis </em>qui va être chargé du filtrage de contenus, en s&#8217;appuyant sur <em>Spamassassin</em> contre les spams et<em> Clamav</em> contre les virus. Clamav dispose d&#8217;un outil permettant la mise à jour des signatures virales : <em>freshclam.</em> Pour avoir des mises à jour plus régulière, il suffit d&#8217;ajouter un dépot<em> debian-volatile </em>à la liste des dépôts. Par exemple :</p>
<p style="text-align: justify;"><span style="color: #800000;"># echo &laquo;&nbsp;deb http://ftp2.de.debian.org/debian-volatile lenny/volatile main contrib&nbsp;&raquo; &gt; /etc/apt/sources.list.d/volatile.list<br />
# aptitude update</span></p>
<p style="text-align: justify;">Passons à l&#8217;installation :</p>
<p style="text-align: justify;"><span style="color: #800000;"># aptitude install amavis-new clamav clamav-freshclam clamav-daemon spamassassin</span></p>
<p style="text-align: justify;">L&#8217;activation du démon <em>spamassassin</em> se fait par l&#8217;intermédiaire du fichier &laquo;&nbsp;<em>/etc/default/spamassassin</em>&nbsp;&raquo; en plaçant l&#8217;option <em>ENABLED</em> à 1</p>
<h2 style="text-align: justify;">/etc/default/spamassassin</h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code30'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106430"><td class="code" id="p1064code30"><pre class="ini" style="font-family:monospace;"># /etc/default/spamassassin
# Duncan Findlay
&nbsp;
# WARNING: please read README.spamd before using.
# There may be security risks.
&nbsp;
# Change to one to enable spamd
<span style="color: #000099;">ENABLED</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">1</span>
&nbsp;
# Options
# See man spamd for possible options. The -d option is automatically added.
&nbsp;
# SpamAssassin uses a preforking model, so be careful! You need to
# make sure --max-children is not set to anything higher than <span style="">5</span>,
# unless you know what you're doing.
&nbsp;
<span style="color: #000099;">OPTIONS</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #933;">&quot;--create-prefs --max-children 5 --helper-home-dir&quot;</span>
&nbsp;
# Pid file
# Where should spamd write its PID to file? If you use the -u or
# --username option above, this needs to be writable by that user.
# Otherwise, the init script will not be able to shut spamd down.
<span style="color: #000099;">PIDFILE</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #933;">&quot;/var/run/spamd.pid&quot;</span>
&nbsp;
# Set nice level of spamd
#NICE<span style="color: #000066; font-weight:bold;">=</span><span style="color: #933;">&quot;--nicelevel 15&quot;</span></pre></td></tr></table></div>

<p style="text-align: justify;">Il faut ensuite demander à postfix d&#8217;utiliser Amavis pour le filtrage de contenus. Revenons une fois de plus dans notre fichier &laquo;&nbsp;<em>/etc/postfix/main.cf</em>&nbsp;&raquo; pour ajouter la directive :<em>content_filter = smtp-amavis:[127.0.0.1]:10024</em></p>
<h2 style="text-align: justify;">/etc/postfix/main.cf</h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code31'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106431"><td class="code" id="p1064code31"><pre class="ini" style="font-family:monospace;"><span style="color: #000099;">content_filter</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> smtp-amavis:<span style="color: #000066; font-weight:bold;"><span style="">&#91;</span>127.0.0.1<span style="">&#93;</span></span>:10024</span>
&nbsp;
<span style="color: #000099;">smtpd_recipient_restrictions</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> reject_unauth_pipelining,</span>
permit_mynetworks,
permit_sasl_authenticated,
reject_non_fqdn_recipient,
reject_unauth_destination,
check_policy_service inet:<span style="color: #000066; font-weight:bold;"><span style="">&#91;</span>127.0.0.1<span style="">&#93;</span></span>:<span style="">60000</span>
&nbsp;
<span style="color: #000099;">smtpd_sender_restrictions</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">  permit_sasl_authenticated,</span>
permit_mynetworks,
reject_non_fqdn_sender,
reject_unknown_sender_domain,
reject_unauth_pipelining</pre></td></tr></table></div>

<p>Afin de pouvoir utiliser l&#8217;agent de transport smtp-amavis, nous devons le définir dans le fichier &laquo;&nbsp;master.cf&nbsp;&raquo; de postfix :</p>
<h2 style="text-align: justify;">/etc/postfix/master.cf</h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code32'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106432"><td class="code" id="p1064code32"><pre class="ini" style="font-family:monospace;">...
#CLAMAV-AMAVIS
smtp-amavis unix - - n - <span style="">2</span> smtp
        -o smtp_data_done_timeout<span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">1200</span>
        -o smtp_send_xforward_command<span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">yes</span>
        -o disable_dns_lookups<span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">yes</span>
127.0.0.1:<span style="">10025</span> inet n - n - - smtpd
        -o content_filter<span style="color: #000066; font-weight:bold;">=</span>
        -o local_recipient_maps<span style="color: #000066; font-weight:bold;">=</span>
        -o relay_recipient_maps<span style="color: #000066; font-weight:bold;">=</span>
        -o smtpd_restriction_classes<span style="color: #000066; font-weight:bold;">=</span>
        -o smtpd_client_restrictions<span style="color: #000066; font-weight:bold;">=</span>
        -o smtpd_helo_restrictions<span style="color: #000066; font-weight:bold;">=</span>
        -o smtpd_sender_restrictions<span style="color: #000066; font-weight:bold;">=</span>
        -o smtpd_recipient_restrictions<span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">permit_mynetworks,reject</span>
        -o mynetworks<span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">127.0.0.0/8</span>
        -o strict_rfc821_envelopes<span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">yes</span>
        -o smtpd_error_sleep_time<span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">0</span>
        -o smtpd_soft_error_limit<span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">1001</span>
        -o smtpd_hard_error_limit<span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">1000</span>
...</pre></td></tr></table></div>

<p>Pour finir avec <em>amavis</em>, un brin de configuration est nécessaire pour activer le filtrage anti-spam et anti-virus.</p>
<h2>/etc/amavis/conf.d/15-content_filter_mode</h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code33'); return false;">View Code</a> PERL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106433"><td class="code" id="p1064code33"><pre class="perl" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">use</span> strict<span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># You can modify this file to re-enable SPAM checking through spamassassin</span>
<span style="color: #666666; font-style: italic;"># and to re-enable antivirus checking.</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#</span>
<span style="color: #666666; font-style: italic;"># Default antivirus checking mode</span>
<span style="color: #666666; font-style: italic;"># Uncomment the two lines below to enable it back</span>
<span style="color: #666666; font-style: italic;">#</span>
&nbsp;
<span style="color: #0000ff;">@bypass_virus_checks_maps</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>
   <span style="color: #0000ff;">%bypass_virus_checks</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">@bypass_virus_checks_acl</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">$bypass_virus_checks_re</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#</span>
<span style="color: #666666; font-style: italic;"># Default SPAM checking mode</span>
<span style="color: #666666; font-style: italic;"># Uncomment the two lines below to enable it back</span>
<span style="color: #666666; font-style: italic;">#</span>
&nbsp;
<span style="color: #0000ff;">@bypass_spam_checks_maps</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>
   <span style="color: #0000ff;">%bypass_spam_checks</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">@bypass_spam_checks_acl</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">$bypass_spam_checks_re</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #cc66cc;">1</span><span style="color: #339933;">;</span>  <span style="color: #666666; font-style: italic;"># insure a defined return</span></pre></td></tr></table></div>

<p style="text-align: justify;">Il nous faudra, si cela n&#8217;est pas fait à l&#8217;installation, ajouter l&#8217;utilisateur <em>clamav </em>au groupe <em>amavis</em>.</p>
<p style="text-align: justify;"><span style="color: #800000;"># adduser clamav amavis</span></p>
<h1 style="text-align: justify;">7ème brique : Anti-spams (encore) &#8211; Listes RBL</h1>
<p style="text-align: justify;">Enfin, nous pouvons utiliser des blacklistes externes pour parfaire notre filtrage anti-spam. Il en existe un paquet, mais leur utilisation est similaire. Dans l&#8217;exemple, utilisons deux &laquo;&nbsp;blacklist&nbsp;&raquo; publiques en fin de filtrage : <em>dul.dnsbl.sorbs.net</em> et  <em>zen.spamhaus.org</em>. Il faut encore une fois ajouter deux règles &laquo;&nbsp;<em>smtpd_recipient_restrictions</em>&nbsp;&raquo; au fichier <em>/etc/postfix/main.cf</em></p>
<h2 style="text-align: justify;"><em><em>/etc/postfix/main.cf</em></em></h2>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p1064code34'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p106434"><td class="code" id="p1064code34"><pre class="ini" style="font-family:monospace;"><span style="color: #000099;">smtpd_recipient_restrictions</span> <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> reject_unauth_pipelining,</span>
permit_mynetworks,
permit_sasl_authenticated,
reject_non_fqdn_recipient,
reject_unauth_destination,
check_policy_service inet:<span style="color: #000066; font-weight:bold;"><span style="">&#91;</span>127.0.0.1<span style="">&#93;</span></span>:<span style="">60000</span>,
reject_rbl_client dul.dnsbl.sorbs.net,
reject_rbl_client zen.spamhaus.org</pre></td></tr></table></div>

<p style="text-align: justify;">Voilà pour cet article. Même s&#8217;il reste pas mal d&#8217;améliorations possibles, d&#8217;optimisations et fonctionnalités supplémentaires à ajouter, on va dire que c&#8217;est un bon début.</p>
<h1 style="text-align: justify;">Sources :</h1>
<ul>
<li><a title="http://flurdy.com/docs/postfix/#config-secure-auth" href="http://flurdy.com/docs/postfix/#config-secure-auth"><span class="postbody"><span style="font-style: italic;">http://flurdy.com/docs/postfix/#config-secure-auth</span></span></a></li>
<li><span class="postbody"><span style="font-style: italic;">http://www.luxpopuli.fr/Internet/Postfix-Cyrus-IMAP-SSL-LDAP/Cyrus-IMAP-authentification-LDAP</span></span></li>
<li><span class="postbody"><span style="font-style: italic;"><a title="http://www.bizeul.net/" href="http://www.bizeul.net/">http://www.bizeul.net/</a><br />
</span></span></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2009/02/03/installation-dun-serveur-mail-brique-par-brique-openldap-postfix-cyrus-imap-tls-sasl-spamassassin-amavis-etc/feed/</wfw:commentRss>
		<slash:comments>45</slash:comments>
		</item>
		<item>
		<title>Youpi ! La Fonera 2 est enfin disponible&#8230;</title>
		<link>http://www.jopa.fr/index.php/2008/10/11/youpi-la-fonera-2-est-enfin-disponible/</link>
		<comments>http://www.jopa.fr/index.php/2008/10/11/youpi-la-fonera-2-est-enfin-disponible/#comments</comments>
		<pubDate>Sat, 11 Oct 2008 09:01:16 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Evènements]]></category>
		<category><![CDATA[Fonera]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=531</guid>
		<description><![CDATA[Le super routeur wifi est disponible en version béta (principalement destiné aux développeurs) sur  la Boutique FON. Cette petite boîte diffère de la Fonera+ par l&#8217;ajout d&#8217;un port maître USB 2 et une mémoire flash augmentée à 32 Mo. Ce petit joujou est au prix de 39,95 € HT (comptez environs 50 € avec les [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><a href="http://www.jopa.fr/wp-content/uploads/2008/10/getfile1.jpg"><img class="alignleft size-full wp-image-533" title="getfile1" src="http://www.jopa.fr/wp-content/uploads/2008/10/getfile1.jpg" alt="" width="170" height="180" /></a>Le super routeur wifi est disponible en version béta (principalement destiné aux développeurs) sur  <a title="https://shop.fon.com/FonShop/shop/FR/ShopController?view=product&amp;product=PRD-020" href="https://shop.fon.com/FonShop/shop/FR/ShopController?view=product&amp;product=PRD-020">la Boutique FON</a>. Cette petite boîte diffère de la Fonera+ par l&#8217;ajout d&#8217;un port maître USB 2 et une mémoire flash augmentée à 32 Mo.</p>
<p style="text-align: justify;">Ce petit joujou est au prix de 39,95 € HT (comptez environs 50 € avec les taxes et le port).</p>
<p style="text-align: justify;">En espérant que les délais de livraison ne soient pas trop longs !</p>
<p style="text-align: center;"><a href="http://www.jopa.fr/wp-content/uploads/2008/10/getfile2.jpg"><img class="size-full wp-image-534 aligncenter" title="getfile2" src="http://www.jopa.fr/wp-content/uploads/2008/10/getfile2.jpg" alt="" width="170" height="180" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2008/10/11/youpi-la-fonera-2-est-enfin-disponible/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Hardy Heron version bêta  &#8211; Sortie imminente</title>
		<link>http://www.jopa.fr/index.php/2008/03/20/hardy-heron-version-beta-sortie-imminente/</link>
		<comments>http://www.jopa.fr/index.php/2008/03/20/hardy-heron-version-beta-sortie-imminente/#comments</comments>
		<pubDate>Wed, 19 Mar 2008 23:00:04 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Evènements]]></category>
		<category><![CDATA[Distribution]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/index.php/2008/03/20/hardy-heron-version-beta-sortie-imminente/</guid>
		<description><![CDATA[La version LTS 8.04 bêta d&#8217;Ubuntu, baptisée &#171;&#160;Hardy Heron&#160;&#187; devrait voir le jour&#8230; aujourd&#8217;hui ! Parmi ses grandes nouveautés, un petit relooking, le serveur X.org en version 7.3 , une meilleure gestion des disques, des dossiers utilisateurs et des partages réseau (via Samba), une procédure simplifiée pour l&#8217;installation des logiciels tierces, un démarrage et un [...]]]></description>
			<content:encoded><![CDATA[<p align="justify"><img src="http://www.jopa.fr/wp-content/uploads/2008/03/hardyheron.png" alt="Hardy Heron" align="left" /></p>
<p align="justify">La version LTS 8.04 <strong>bêta</strong> d&#8217;Ubuntu, baptisée &laquo;&nbsp;Hardy Heron&nbsp;&raquo; devrait voir le jour&#8230; aujourd&#8217;hui ! Parmi ses grandes nouveautés, un petit relooking, le serveur X.org en version 7.3 ,  une meilleure gestion des disques, des dossiers utilisateurs et des partages réseau (via Samba),  une procédure simplifiée pour l&#8217;installation des logiciels tierces, un démarrage et un arrêt plus rapide et un super support techniques.</p>
<p align="justify">
<p align="justify">Si vous vous sentez l&#8217;âme aventurière, vous allez pouvoir mettre à jour ou installer cette version; Il s&#8217;agit tout de même d&#8217;une version bêta, donc si vous recherchez plus la stabilité, il faudra encore attendre fin Avril.</p>
<p align="justify">
<p align="justify">
<p align="justify"><span id="more-28"></span></p>
<p>Pour mettre à jour, lancez tout simplement update-manager avec l&#8217;option <strong>-d</strong></p>
<p>(<em>ou &#8211;devel-release</em>)</p>
<blockquote><p>$ update-manager -d</p></blockquote>
<p align="justify"><img src="http://www.jopa.fr/wp-content/uploads/2008/03/fulldesk_svg__v3_3-m.jpg" alt="Hardy" width="487" height="366" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2008/03/20/hardy-heron-version-beta-sortie-imminente/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

