<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://www.queret.net/blog/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>Yoann's Blog</title>
  <link>http://www.queret.net/blog/</link>
  <atom:link href="http://www.queret.net/blog/feed/rss2" rel="self" type="application/rss+xml"/>
  <description></description>
  <language>fr</language>
  <pubDate>Wed, 28 Jul 2010 00:58:11 +0200</pubDate>
  <copyright></copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Des icones gratuites &amp; de bonne qualité graphique</title>
    <link>http://www.queret.net/blog/post/2010/03/30/Des-icones-gratuites-de-bonne-qualit%C3%A9-graphique</link>
    <guid isPermaLink="false">urn:md5:89625c6eec4957e2602b425a048d91bd</guid>
    <pubDate>Tue, 30 Mar 2010 16:07:00 +0200</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>C0d3</category>
            
    <description>    &lt;p&gt;Si vous recherchez des packs d'icônes (systèmes, web, ...) de bonne qualité graphique, je vous conseil la visite du site IconArchive&amp;nbsp;:&lt;/p&gt;


&lt;p&gt;Vous y trouverez de tout, des GPS, des voitures, mais bien sur toutes les icones &quot;informatiques&quot;, disque dur, memoire, etc ...&lt;/p&gt;



&lt;p&gt;&lt;a href=&quot;http://www.iconarchive.com/&quot; hreflang=&quot;en&quot;&gt;http://www.iconarchive.com/&lt;/a&gt;&lt;/p&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2010/03/30/Des-icones-gratuites-de-bonne-qualit%C3%A9-graphique#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2010/03/30/Des-icones-gratuites-de-bonne-qualit%C3%A9-graphique#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/165</wfw:commentRss>
      </item>
    
  <item>
    <title>AstriEurop : salon Européen des solutions Asterisk - 14-15-16 Avril 2010, espace Champerret, PARIS</title>
    <link>http://www.queret.net/blog/post/2010/03/26/AstriEurop-%3A-salon-Europ%C3%A9en-des-solutions-Asterisk-14-15-16-Avril-2010</link>
    <guid isPermaLink="false">urn:md5:e2dd1ba6a479ac0f0945dece6ed1852a</guid>
    <pubDate>Fri, 26 Mar 2010 16:14:00 +0100</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>VOIP Asterisk &amp; Telephonie</category>
        <category>asterisk</category><category>astrieurop</category><category>salon</category>    
    <description>    &lt;p&gt;AstriEurop, Le salon Européen des solutions Asterisk ce deroulera les 14-15-16 Avril prochain à l'espace Champerret à PARIS.&lt;/p&gt;


&lt;p&gt;&lt;ins&gt;Au rendez-vous :&lt;/ins&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;17 conférences dédiées à l'Open Source Asterisk&lt;/li&gt;
&lt;li&gt;19 ateliers pour découvrir les produits et services du marché&lt;/li&gt;
&lt;li&gt;Pas moins de 30 sociétés acteurs du marché seront représentées&lt;/li&gt;
&lt;li&gt;DIGIUM est le Premier sponsor - stand et démonstrations.&lt;/li&gt;
&lt;li&gt;Les partenaires&amp;nbsp;:
&lt;ul&gt;
&lt;li&gt;AASTRA Platinum sponsor&lt;/li&gt;
&lt;li&gt;WISP-e Gold sponsor&lt;/li&gt;
&lt;li&gt;SANGOMA Silver sponsor&lt;/li&gt;
&lt;li&gt;ALLNET Sponsor.&lt;/li&gt;
&lt;li&gt;etc ...&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;2 auteurs d'ouvrages sur Asterisk seront présents pour une séance de dédicace&amp;nbsp;:
&lt;ul&gt;
&lt;li&gt;mercredi 14 avril à 16h00 - Philippe Sultan - &quot;Asterisk - La téléphonie d'entreprise libre&quot;&lt;/li&gt;
&lt;li&gt;jeudi 15 avril à 16h00 - Sébastien DÉON - &quot;VoIP et ToIP, Asterisk&quot;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Plus d'info sur http://www.astrieurop.com&lt;/p&gt;


&lt;p&gt;PS&amp;nbsp;: L'accès au salon est gratuit (demandez votre badge sur le site d'astrieurop)&lt;/p&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2010/03/26/AstriEurop-%3A-salon-Europ%C3%A9en-des-solutions-Asterisk-14-15-16-Avril-2010#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2010/03/26/AstriEurop-%3A-salon-Europ%C3%A9en-des-solutions-Asterisk-14-15-16-Avril-2010#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/164</wfw:commentRss>
      </item>
    
  <item>
    <title>Le site de l'UMP de Rodez piraté</title>
    <link>http://www.queret.net/blog/post/2010/03/06/Le-site-de-l-UMP-de-Rodez-pirat%C3%A9</link>
    <guid isPermaLink="false">urn:md5:5cc4c3c15bfbacea7b233970d7e541f5</guid>
    <pubDate>Sat, 06 Mar 2010 12:41:00 +0100</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>General</category>
            
    <description>    &lt;p&gt;Hacked by eymz &amp;amp; WaZo ... one more timz&lt;/p&gt;


&lt;p&gt;Le site de l'ump de rodez (et visiblement quelques site du gouvernement) se sont fait piraté (le 25 Février2010 ??).&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://www.queret.net/blog/public/images/news/2010/ump-rodez.png&quot;&gt;&lt;img src=&quot;http://www.queret.net/blog/public/images/news/2010/.ump-rodez_m.jpg&quot; alt=&quot;ump-rodez.png&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;ump-rodez.png, mar. 2010&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2010/03/06/Le-site-de-l-UMP-de-Rodez-pirat%C3%A9#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2010/03/06/Le-site-de-l-UMP-de-Rodez-pirat%C3%A9#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/163</wfw:commentRss>
      </item>
    
  <item>
    <title>Indisponibilité des services hebergés (web, mail, etc ...) cette apres midi</title>
    <link>http://www.queret.net/blog/post/2010/03/05/Indisponibilite-des-services-cette-apres-midi</link>
    <guid isPermaLink="false">urn:md5:efb343153be169e68b0003b497bda385</guid>
    <pubDate>Fri, 05 Mar 2010 20:37:00 +0100</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>General</category>
        <category>coupure electrique</category><category>data-center</category><category>telehouse</category><category>telehouse2</category>    
    <description>    &lt;p&gt;Suite à 2 coupures de courant sur le data-center de telehouse 2 (bld Voltaire) de la Zone EST du 1er étage, tous les services hébergés sur nos serveurs ont été indisponibles à plusieurs reprises cette après midi.&lt;/p&gt;


&lt;p&gt;Même si nos serveurs hébergeant les différents services ne sont pas sur le site de telehouse2, nous en somme cependant totalement depend pour ce qui est de la connectivité et plus particulièrement la connectivité IPV6 qui n'arrive que pas TH2.&lt;/p&gt;


&lt;p&gt;Pour vous donner une idée de lampleur qu'une coupure de courant peut provoquer, voici le &quot;weather map&quot; du réseau de nerim pendant la première coupure ou l'on peut voir que tous les liens arrivant sur le site de Voltaire (telehouse2) sont donc down.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://www.queret.net/blog/public/images/news/2010/71777215.png&quot;&gt;&lt;img src=&quot;http://www.queret.net/blog/public/images/news/2010/.71777215_m.jpg&quot; alt=&quot;Nerim coupure 20100305&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;Nerim coupure 20100305, mar. 2010&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;&lt;em&gt;Il faudra expliqué aux electriciens de Telehouse que faire du &quot;green&quot; ce n'est pas couper le courant :-)&lt;/em&gt;&lt;/p&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2010/03/05/Indisponibilite-des-services-cette-apres-midi#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2010/03/05/Indisponibilite-des-services-cette-apres-midi#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/162</wfw:commentRss>
      </item>
    
  <item>
    <title>Chrooter une session SSH utilisateur</title>
    <link>http://www.queret.net/blog/post/2010/03/03/Chrooter-une-session-SSH-utilisateur</link>
    <guid isPermaLink="false">urn:md5:96a544e2a08188bccd3020aa6a0ec3f3</guid>
    <pubDate>Thu, 04 Mar 2010 09:30:00 +0100</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>L1nuX and c0</category>
        <category>chroot</category><category>debian</category><category>lenny</category><category>make_chroot_jail.sh</category><category>ssh</category>    
    <description>&lt;p&gt;Vous souhaitez donner un accès SSH à vos utilisateurs, mais dans un environnement que vous maitrisez, dont vous pouvez limiter les commandes accessibles, mais aussi et surtout les mettres dans une &quot;cage&quot; (C'est dire qu'ils ne verront pas l'integralité du système de fichier, mais uniquement l'endroit où ils sont chrooter).&lt;/p&gt;    &lt;p&gt;&lt;ins&gt;&lt;strong&gt;Installation du serveur ssh&lt;/strong&gt;&lt;/ins&gt; (si ce n'est pas déjà fait)&lt;/p&gt;

&lt;pre&gt; apt-get install ssh openssh-server&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Configuration du serveur ssh&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Editer le fichier /etc/ssh/sshd_config&lt;/p&gt;

&lt;pre&gt; vim /etc/ssh/sshd_config&lt;/pre&gt;

&lt;p&gt;Vérifier que la ligne ci-dessous est bien présente&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; Subsystem sftp /usr/lib/openssh/sftp-server&lt;/pre&gt;


&lt;p&gt;Ajouter le bloc ci-dessous à la fin du fichier pour chrooter l'utilisateur john:&lt;/p&gt;

&lt;pre&gt; Match User john
     ChrootDirectory /chroot
     AllowTCPForwarding no
     X11Forwarding no&lt;/pre&gt;

&lt;p&gt;On peut aussi chrooter un ensemble d'utilisateurs (les utilisateurs du groupe users par exemple)&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; Match Group users
     ChrootDirectory /chroot
     AllowTCPForwarding no
     X11Forwarding no&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Creation du dossier chroot&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;

&lt;pre&gt; mkdir /chroot&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Les librairies necessaires a bash&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;

&lt;pre&gt; ldd /bin/bash&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Installation des outils necessaire pour créer l'environnement chrooter&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;

&lt;pre&gt; apt-get install sudo debianutils coreutils&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Récupération du script permettant de créer l'environnement chrooter&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;

&lt;pre&gt; cd /usr/local/sbin
 wget http://www.fuschlberger.net/programs/ssh-scp-sftp-chroot-jail/make_chroot_jail.sh
 chmod 700 /usr/local/sbin/make_chroot_jail.sh&lt;/pre&gt;

&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Modification du script make_chroot_jail.sh&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Editer le fichier /usr/local/sbin/make_chroot_jail.sh&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; vim /usr/local/sbin/make_chroot_jail.sh&lt;/pre&gt;


&lt;p&gt;Modifier la ligne APPS correspondant aux distrib. debian en fonction des commandes que vous souhaitez authoriser&amp;nbsp;:&lt;/p&gt;


&lt;pre&gt; [...]
 elif [ &quot;$DISTRO&quot; = DEBIAN ]; then
   APPS=&quot;/bin/bash /bin/cp /usr/bin/dircolors /bin/ls /bin/mkdir /bin/mv /bin/rm /bin/rmdir /bin/sh /bin/su /usr/bin/groups /usr/bin/id /usr/bin/rsync /usr/bin/ssh /usr/bin/scp /sbin/unix_chkpwd /bin/cat /bin/more /usr/bin/find /bin/which /bin/grep /bin/tar /usr/bin/tail /usr/bin/head /usr/bin/clear /usr/bin/less /usr/bin/wc /usr/bin/vim&quot;
 [...]&lt;/pre&gt;



&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Création de l'environnement chrooter&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;

&lt;pre&gt; cd /chroot/
 make_chroot_jail.sh john /bin/bash /chroot&lt;/pre&gt;

&lt;p&gt;//repondre a YES au questions//&lt;/p&gt;


&lt;p&gt;Pour mettre a jour la liste des applications auxquelles l'utilisateur à le droits d'accèder&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; cd /chroot/
 make_chroot_jail.sh update /bin/bash /chroot&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Problème avec le $HOME&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Lorsque vous vous connectez avec votre utlisateurs john chrooter (en ssh), celui-ci a pour home /chroot/home/john/.&lt;/p&gt;


&lt;p&gt;Si vous utilisez des clefs SSH pour vous y connecter le serveur ssh trouvera bien les clefs dans /chroot/home/john/.ssh/, mais lorsque vous arrivez dans votre environnement chrooter, /chroot correspond à la racine / de votre environnement et n'est donc pas accessible. Les fichiers .bashrc ne sont alors pas pris en compte, le cd ~ ne fonctionnera pas, etc ....&lt;/p&gt;


&lt;p&gt;NOTE&amp;nbsp;: J'aurais penser qu'une fois arrivé dans l'environnement chrooter le systeme aurait utiliser le fichier /chroot/etc/passwd, mais non ...&lt;/p&gt;


&lt;p&gt;Pour résoudre ce problème&amp;nbsp;:&lt;/p&gt;


&lt;p&gt;&lt;ins&gt;Linker le home chrooter (/chroot/home/john/) de l'utilisateur vers le home non chrooter (/home/john/)&lt;/ins&gt;&lt;/p&gt;


&lt;pre&gt; rm -Rf /home/john/
 ln -s /chroot/home/john/ /home/john/&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;Changer le home dans /etc/passwd&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Le script make_chroot_jail.sh modifie egalement le fichier /etc/passwd en transformant /home/john/ en /chroot/home/john/. (Notre $HOME est /chroot/home/john/ alors qu'il devrait être /home/john/ en environnement chrooter)&lt;/p&gt;


&lt;p&gt;Il faut donc editer le fichier /etc/passwd et changer le home de l'utilisateur john&lt;/p&gt;

&lt;pre&gt; /chroot/home/john/&lt;/pre&gt;

&lt;p&gt;par&lt;/p&gt;

&lt;pre&gt; /home/john/&lt;/pre&gt;



&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Lier un repertoire a notre environnement chrooter&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Il peut être necessaire de donner accès depuis un environnement chrooter a une arboresence n'etant pas dans l'environnement chrooter. Par exemple l'arboresence /data/, pour cela nous utiliserons mount comme suis&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; mkdir /chroot/data/
 mount --bind /data/ /chroot/data/&lt;/pre&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2010/03/03/Chrooter-une-session-SSH-utilisateur#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2010/03/03/Chrooter-une-session-SSH-utilisateur#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/161</wfw:commentRss>
      </item>
    
  <item>
    <title>Debian Lenny &amp; Cacti : Vos graph cacti, plus jolies !</title>
    <link>http://www.queret.net/blog/post/2009/12/15/Vos-graph-cacti%2C-pluis-jolies-%21</link>
    <guid isPermaLink="false">urn:md5:4c580eb5bdfee3081a74485f68cf3e3f</guid>
    <pubDate>Wed, 03 Mar 2010 12:13:00 +0100</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>L1nuX and c0</category>
            
    <description>    &lt;p&gt;&lt;ins&gt;&lt;strong&gt;Installater les fonts defoma&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;

&lt;pre&gt; aptitude install defoma&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Configurer l'utilisation des fonts dans l'interface d'admin. de cacti&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Settings -&amp;gt; onglet Visual&lt;/p&gt;


&lt;p&gt;&lt;ins&gt;Changer la taille des fonts ainsi que la police d'ecriture :&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://www.queret.net/blog/public/images/news/cacti-visual-optimize.png&quot;&gt;&lt;img src=&quot;http://www.queret.net/blog/public/images/news/.cacti-visual-optimize_m.jpg&quot; alt=&quot;cacti-visual-optimize.png&quot; title=&quot;cacti-visual-optimize.png, déc. 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Une font avec un rendu sympa&amp;nbsp;: /var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType/DejaVuSans.ttf&lt;/p&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2009/12/15/Vos-graph-cacti%2C-pluis-jolies-%21#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/12/15/Vos-graph-cacti%2C-pluis-jolies-%21#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/160</wfw:commentRss>
      </item>
    
  <item>
    <title>Un flux RSS pour les alertes enlevements</title>
    <link>http://www.queret.net/blog/post/2009/11/17/Un-flux-RSS-pour-les-alertes-enlevements</link>
    <guid isPermaLink="false">urn:md5:44100181912951a55d07c669a764eae8</guid>
    <pubDate>Tue, 17 Nov 2009 22:40:00 +0100</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>General</category>
        <category>alerte</category><category>enlevement</category><category>flux</category><category>rss</category><category>xml</category>    
    <description>    &lt;p&gt;L'information n'est pas recente, et le service est disponible depuis mars 2009, mais vu que la plupart des lecteurs de ce blog possède un site perso, un blog, ... je sort ce billet un peu comme une piqure de rappel :-)&lt;/p&gt;


&lt;p&gt;Depuis le 22 Mars 2009, le ministère de la Justice et particulièrement le site &lt;a href=&quot;http://www.alerte-enlevement.gouv.fr/&quot; hreflang=&quot;fr&quot;&gt;http://www.alerte-enlevement.gouv.fr/&lt;/a&gt; propose un flux XML afin que nous puissions relayer l'information en cas d'alerte sur nos sites.&lt;/p&gt;


&lt;p&gt;Si vous ne l'avez pas encore fait sur votre site/blog, vous &lt;del&gt;pouvez&lt;/del&gt; devez rajouter cef flux XML ( &lt;a href=&quot;http://www.justice.gouv.fr/rss/alerte_enlevement.xml&quot; hreflang=&quot;fr&quot;&gt;http://www.justice.gouv.fr/rss/alerte_enlevement.xml&lt;/a&gt; ), qui en temps normal (et on l'espère pour la plupart du temps) reste vide et donc rien ne s'affiche sur votre site/blog. Mais en cas d'alerte, vous relayer automatiquement le message.&lt;/p&gt;



&lt;p&gt;C'était le billet de bon citoyen :-p&lt;/p&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2009/11/17/Un-flux-RSS-pour-les-alertes-enlevements#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/11/17/Un-flux-RSS-pour-les-alertes-enlevements#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/158</wfw:commentRss>
      </item>
    
  <item>
    <title>Gérer une authorité de certification (CA) complète avec OpenSSL (SSL/TLS)</title>
    <link>http://www.queret.net/blog/post/2009/08/22/G%C3%A9rer-une-authorit%C3%A9-de-certification-%28CA%29-compl%C3%A8te-avec-OpenSSL</link>
    <guid isPermaLink="false">urn:md5:61166d44dc02d501129f5451ec8cd79d</guid>
    <pubDate>Wed, 02 Sep 2009 23:50:00 +0200</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>L1nuX and c0</category>
        <category>ca</category><category>cert</category><category>openssl</category><category>pkcs</category><category>ssl</category>    
    <description>&lt;p&gt;Quand vous allez sur un site e-commerce celui-ci se doit d'être sécurisé (HTTPS).&lt;/p&gt;


&lt;p&gt;Cette sécurisation s'effectue grace à TLS (ou SSL - Par abus de langage, on parle de SSL pour désigner indifféremment SSL ou TLS.) qui a pour objectifs&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;l'authentification du serveur&lt;/li&gt;
&lt;li&gt;la confidentialité des données échangées&lt;/li&gt;
&lt;li&gt;l'intégrité des données échangées&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cela peut s'appliquer a des services aussi diverses que variés (POP, SMTP, IMAP, Jabber, FTP, VPN, ...) et ne se limite en aucun cas à HTTP. Sur le model OSI, ces services sont sur la couche 7 - applicative, tandis que SSL/TLS est sur la couche 5 - session.&lt;/p&gt;


&lt;p&gt;Transport Layer Security (TLS), anciennement nommé Secure Socket Layer (SSL), est un protocole de sécurisation des échanges sur Internet, développé à l'origine par Netscape (SSL version 2 et SSL version 3). Il a été renommé en Transport Layer Security (TLS) par l'IETF suite au rachat du brevet de Netscape par l'IETF en 2001.&lt;/p&gt;


&lt;p&gt;&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;Je vous explique dans la suite de ce billet la mise en place d'une authorité de certification complete, qui va vous permettre de générer des certificats serveurs (http, ftp, pop, .., vpn, ..) &amp;amp; clients, de les signés, mais également de les revoquer.&lt;/p&gt;    &lt;p&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/p&gt;


&lt;h2&gt;Installation d'openssl&lt;/h2&gt;

&lt;pre&gt; apt-get install openssl&lt;/pre&gt;


&lt;p&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/p&gt;


&lt;h2&gt;Préparation de l'arborescence et du fichier de configuration d'openssl&lt;/h2&gt;


&lt;p&gt;La premiere chose à faire est de créer une arborescence pour les fichiers de l'authorité de certification, ici /root/CA/&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; mkdir -p /root/CA/queret.net/{certs,crl,newcerts,private}
 touch /root/CA/queret.net/index.txt
 echo &quot;01&quot; &amp;gt; /root/CA/queret.net/serial
 echo &quot;01&quot; &amp;gt; /root/CA/queret.net/crlnumber&lt;/pre&gt;


&lt;p&gt;Il nous faut maintenant configurer OpenSSL pour qu'il connaisse notre arboresence comme celle d'une AC. Nous allons copier le fichier openssl.cnf présent dans /etc/ssl/ dans notre arboresence avant de le modifier.&lt;/p&gt;

&lt;pre&gt; cp /etc/ssl/openssl.cnf /root/CA/queret.net/&lt;/pre&gt;


&lt;p&gt;Vous devez changer&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; * dir             = /root/CA/queret.net&lt;/pre&gt;


&lt;p&gt;Le fichier de configuration est divisé en sections, qui commencent par [ nom_de_la_section ]&lt;/p&gt;


&lt;p&gt;Une AC est définie dans une section, le nom de l'AC dans le contexte d'OpenSSL est défini par le nom de cette section. La section particulière [ ca ] permet de définir l'AC par défault.&lt;/p&gt;


&lt;p&gt;Le fichier de configuration contient un exemple ([ CA_default ]) qu'on va utiliser comme base pour l'exemple&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Voir le fichier &lt;a href=&quot;http://www.queret.net/blog/public/documents/openssl.cnf&quot;&gt;openssl.cnf&lt;/a&gt; complet.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/p&gt;


&lt;h2&gt;Création de l'authorité de certification (CA)&lt;/h2&gt;


&lt;p&gt;Il nous faut créer la bi-clé auto-signé pour l'AC&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; cd /root/CA/queret.net
 openssl req -config /root/CA/queret.net/openssl.cnf -x509 -newkey rsa:1024 -days 3650 -keyout private/cakey.pem -out cacert.pem&lt;/pre&gt;


&lt;pre&gt; Generating a 1024 bit RSA private key
 ..........................&lt;ins&gt;&lt;/ins&gt;++
 ...........&lt;ins&gt;&lt;/ins&gt;++
 writing new private key to 'private/cakey.pem'
 Enter PEM pass phrase: xxxxxxx
 Verifying - Enter PEM pass phrase: xxxxxxx
 &lt;del&gt;&lt;/del&gt;-
 You are about to be asked to enter information that will be incorporated
 into your certificate request.
 What you are about to enter is what is called a Distinguished Name or a DN.
 There are quite a few fields but you can leave some blank
 For some fields there will be a default value,
 If you enter '.', the field will be left blank.
 &lt;del&gt;&lt;/del&gt;-
 Country Name (2 letter code) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/FR&quot; title=&quot;FR&quot;&gt;FR&lt;/a&gt;:
 State or Province Name (full name) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/Ile-de-France&quot; title=&quot;Ile-de-France&quot;&gt;Ile-de-France&lt;/a&gt;:
 Locality Name (eg, city) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/Paris&quot; title=&quot;Paris&quot;&gt;Paris&lt;/a&gt;:
 Organization Name (eg, company) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/Queret dot Net&quot; title=&quot;Queret dot Net&quot;&gt;Queret dot Net&lt;/a&gt;:
 Organizational Unit Name (eg, section) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/&quot;&gt;&lt;/a&gt;:
 Common Name (eg, YOUR name) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/&quot;&gt;&lt;/a&gt;:Queret dot Net AC
 Email Address &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/&quot;&gt;&lt;/a&gt;:yoann@queret.net&lt;/pre&gt;


&lt;p&gt;Pour assurer la sécurité de la clé privée de l'AC, on restreint les permissions&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; chmod -R 600 /root/CA/queret.net/private&lt;/pre&gt;


&lt;p&gt;L'AC est maintenant configurée, on peut commencer à signer des demandes de certificats.&lt;/p&gt;


&lt;p&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/p&gt;


&lt;h2&gt;Génération d'un certificat serveur&lt;/h2&gt;


&lt;p&gt;On commence par générer une demande de certificat (un certificat non-signé).&lt;/p&gt;


&lt;pre&gt; openssl req -config /root/CA/queret.net/openssl.cnf -newkey rsa:1024 -keyout queret.net.key -out queret.net.req&lt;/pre&gt;


&lt;pre&gt; Generating a 1024 bit RSA private key
 .........&lt;ins&gt;&lt;/ins&gt;++
 ...........................................................&lt;ins&gt;&lt;/ins&gt;++
 writing new private key to 'queret.net.key'
 Enter PEM pass phrase:
 Verifying - Enter PEM pass phrase:
 phrase is too short, needs to be at least 4 chars
 Enter PEM pass phrase: xxxxx
 Verifying - Enter PEM pass phrase: xxxxx
 &lt;del&gt;&lt;/del&gt;-
 You are about to be asked to enter information that will be incorporated
 into your certificate request.
 What you are about to enter is what is called a Distinguished Name or a DN.
 There are quite a few fields but you can leave some blank
 For some fields there will be a default value,
 If you enter '.', the field will be left blank.
 &lt;del&gt;&lt;/del&gt;-
 Country Name (2 letter code) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/FR&quot; title=&quot;FR&quot;&gt;FR&lt;/a&gt;:
 State or Province Name (full name) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/Ile-de-France&quot; title=&quot;Ile-de-France&quot;&gt;Ile-de-France&lt;/a&gt;:
 Locality Name (eg, city) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/Paris&quot; title=&quot;Paris&quot;&gt;Paris&lt;/a&gt;:
 Organization Name (eg, company) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/Queret dot Net&quot; title=&quot;Queret dot Net&quot;&gt;Queret dot Net&lt;/a&gt;:
 Organizational Unit Name (eg, section) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/&quot;&gt;&lt;/a&gt;:
 Common Name (eg, YOUR name) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/&quot;&gt;&lt;/a&gt;:*.queret.net
 Email Address &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/&quot;&gt;&lt;/a&gt;:yoann@queret.net
 
 Please enter the following 'extra' attributes
 to be sent with your certificate request
 A challenge password &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/&quot;&gt;&lt;/a&gt;:
 An optional company name &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/&quot;&gt;&lt;/a&gt;:&lt;/pre&gt;



&lt;p&gt;il faut émettre, et signer le certificat à partir de la demande précédente&amp;nbsp;:&lt;/p&gt;


&lt;pre&gt; openssl ca -config /root/CA/queret.net/openssl.cnf -in queret.net.req -out queret.net.pem&lt;/pre&gt;


&lt;pre&gt; Using configuration from /root/CA/queret.net/openssl.cnf
 Enter pass phrase for /root/CA/queret.net/private/cakey.pem:
 Check that the request matches the signature
 Signature ok
 Certificate Details:
         Serial Number: 1 (0x1)
         Validity
             Not Before: Aug 17 19:17:10 2009 GMT
             Not After : Aug 17 19:17:10 2010 GMT
         Subject:
             countryName               = FR
             stateOrProvinceName       = Ile-de-France
             organizationName          = Queret dot Net
             commonName                = *.queret.net
             emailAddress              = yoann@queret.net
         X509v3 extensions:
             X509v3 Basic Constraints: 
                 CA:FALSE
             Netscape Comment: 
                 OpenSSL Generated Certificate
             X509v3 Subject Key Identifier: 
                 B4:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:BD
             X509v3 Authority Key Identifier: 
                 keyid:BB:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:7C
 
 Certificate is to be certified until Aug 17 19:17:10 2010 GMT (365 days)
 Sign the certificate? &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/y/n&quot; title=&quot;y/n&quot;&gt;y/n&lt;/a&gt;:y
 
 
 1 out of 1 certificate requests certified, commit? &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/y/n&quot; title=&quot;y/n&quot;&gt;y/n&lt;/a&gt;y
 Write out database with 1 new entries
 Data Base Updated&lt;/pre&gt;




&lt;p&gt;Pour eviter que vos services (apache, postfix, courier, ..) nous demande de saisir la passphrase a chaque lancement (penser au logrotate qui reload apache), il faut supprimer la passphrase de la clef&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; mv queret.net.key queret.net-secret.key
 openssl rsa -in queret.net-secret.key -out queret.net.key&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Utilisation du certificat avec apache&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Je vous conseil de placer les fichiers dans /etc/apache2/ssl/&lt;/p&gt;

&lt;pre&gt; mkdir /etc/apache2/ssl/
 cp queret.net.pem /etc/apache2/ssl/
 cp queret.net.key /etc/apache2/ssl/
 cp cacert.pem /etc/apache2/ssl/&lt;/pre&gt;


&lt;p&gt;Ainsi vous pourrez utiliser dans la config. de apache&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; SSLEngine on
 SSLCertificateFile    /etc/apache2/ssl/queret.net.crt
 SSLCertificateKeyFile    /etc/apache2/ssl/queret.net.key
 SSLCertificateChainFile /etc/apache2/ssl/ca.crt
 SSLCACertificateFile    /etc/apache2/ssl/ca.crt
 SSLVerifyClient None&lt;/pre&gt;


&lt;p&gt;Vous pouvez egalement fournir à vos visiteurs le fichier /root/CA/queret.net/cacert.pem en le renommant en ca.crt. En ouvrant ce fichier avec un navigateur le visiteur ce verrant demander si il souhaite ajouter cette authorité aux authorité de confiance. Ansi il n'aura plus de message d'avertissement.&lt;/p&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Utilisation du certificat avec postfix (serveur SMTP)&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;On ne va pas rentrer ici dans les details sur le comment configurer postfix pour utiliser les certificats, juste les directives appelant les fichiers&amp;nbsp;:&lt;/p&gt;


&lt;pre&gt; smtpd_tls_cert_file=/etc/postfix/ssl/queret.net.crt
 smtpd_tls_key_file=/etc/postfix/ssl/queret.net.key
 smtpd_tls_CAfile = /etc/postfix/ssl/ca.crt
 
 smtp_tls_cert_file = /etc/postfix/ssl/queret.net.crt
 smtp_tls_key_file = /etc/postfix/ssl/queret.net.key
 smtp_tls_CAfile = /etc/postfix/ssl/ca.ctr&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Utilisation du certificat avec courier (serveur POP/IMAP)&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Courrier (imapd ou pop3d) necessite d'avoir le certificat et la clef dans un seul fichier PEM que vous devrez construire comme suit&amp;nbsp;:&lt;/p&gt;


&lt;pre&gt; &lt;del&gt;&lt;/del&gt;-BEGIN CERTIFICATE&lt;del&gt;&lt;/del&gt;-
 &amp;lt;ici le contenu du fichier queret.net.crt&amp;gt;
 &lt;del&gt;&lt;/del&gt;-END CERTIFICATE&lt;del&gt;&lt;/del&gt;-
 &lt;del&gt;&lt;/del&gt;-BEGIN RSA PRIVATE KEY&lt;del&gt;&lt;/del&gt;-
 &amp;lt;ici le contenu du fichier queret.net.key&amp;gt;
 &lt;del&gt;&lt;/del&gt;-END RSA PRIVATE KEY&lt;del&gt;&lt;/del&gt;-&lt;/pre&gt;


&lt;p&gt;Pour pour la configuration de courier pop3d-ssl &amp;amp; imapd-ssl dans les fichiers /etc/courier/imapd-ssl &amp;amp; /etc/courier/pop3d-ssl&lt;/p&gt;


&lt;pre&gt; TLS_CERTFILE=/etc/courier/ssl/queret.net.pem
 TLS_TRUSTCERTS=/etc/courier/ssl/ca.pem&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Utilisation du certificat avec proftpd (serveur FTP)&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;pre&gt; TLSRSACertificateFile                   /etc/proftpd/ssl/queret.net.crt
 TLSRSACertificateKeyFile                /etc/proftpd/ssl/queret.net.key
 TLSCACertificateFile                     /etc/proftpd/ssl/ca.pem&lt;/pre&gt;


&lt;p&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/p&gt;


&lt;h2&gt;Générer une clef client&lt;/h2&gt;


&lt;p&gt;Il faut générer un bi-clé&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; openssl req -config /root/CA/queret.net/openssl.cnf -newkey rsa:1024 -keyout yoann.key -out yoann.req&lt;/pre&gt;


&lt;pre&gt; Generating a 1024 bit RSA private key
 .&lt;ins&gt;&lt;/ins&gt;++
 ...&lt;ins&gt;&lt;/ins&gt;++
 writing new private key to 'yoann.key'
 Enter PEM pass phrase: xxxxxx
 Verifying - Enter PEM pass phrase: xxxxxx
 &lt;del&gt;&lt;/del&gt;-
 You are about to be asked to enter information that will be incorporated
 into your certificate request.
 What you are about to enter is what is called a Distinguished Name or a DN.
 There are quite a few fields but you can leave some blank
 For some fields there will be a default value,
 If you enter '.', the field will be left blank.
 &lt;del&gt;&lt;/del&gt;-
 Country Name (2 letter code) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/FR&quot; title=&quot;FR&quot;&gt;FR&lt;/a&gt;:
 State or Province Name (full name) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/Ile-de-France&quot; title=&quot;Ile-de-France&quot;&gt;Ile-de-France&lt;/a&gt;:
 Locality Name (eg, city) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/Paris&quot; title=&quot;Paris&quot;&gt;Paris&lt;/a&gt;:
 Organization Name (eg, company) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/Queret dot Net&quot; title=&quot;Queret dot Net&quot;&gt;Queret dot Net&lt;/a&gt;:
 Organizational Unit Name (eg, section) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/&quot;&gt;&lt;/a&gt;:
 Common Name (eg, YOUR name) &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/&quot;&gt;&lt;/a&gt;:Yoann QUERET
 Email Address &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/&quot;&gt;&lt;/a&gt;:yoann@queret.net
 
 Please enter the following 'extra' attributes
 to be sent with your certificate request
 A challenge password &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/&quot;&gt;&lt;/a&gt;:
 An optional company name &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/&quot;&gt;&lt;/a&gt;:&lt;/pre&gt;



&lt;p&gt;Puis signer la demande de certificat par notre AC&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; openssl ca -config /root/CA/queret.net/openssl.cnf -in yoann.req -out yoann.pem&lt;/pre&gt;


&lt;pre&gt; Using configuration from /root/CA/queret.net/openssl.cnf
 Enter pass phrase for /root/CA/queret.net/private/cakey.pem:
 Check that the request matches the signature
 Signature ok
 Certificate Details:
         Serial Number: 2 (0x2)
         Validity
             Not Before: Aug 17 19:27:23 2009 GMT
             Not After : Aug 17 19:27:23 2010 GMT
         Subject:
             countryName               = FR
             stateOrProvinceName       = Ile-de-France
             organizationName          = Queret dot Net
             commonName                = Yoann QUERET
             emailAddress              = yoann@queret.net
         X509v3 extensions:
             X509v3 Basic Constraints: 
                 CA:FALSE
             Netscape Comment: 
                 OpenSSL Generated Certificate
             X509v3 Subject Key Identifier: 
                 DE:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:C8
             X509v3 Authority Key Identifier: 
                 keyid:BB:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:7C
 
 Certificate is to be certified until Aug 17 19:27:23 2010 GMT (365 days)
 Sign the certificate? &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/y/n&quot; title=&quot;y/n&quot;&gt;y/n&lt;/a&gt;:y
 
 
 1 out of 1 certificate requests certified, commit? &lt;a href=&quot;http://www.queret.net/blog/post/2009/08/22/y/n&quot; title=&quot;y/n&quot;&gt;y/n&lt;/a&gt;y
 Write out database with 1 new entries
 Data Base Updated&lt;/pre&gt;


&lt;p&gt;Pour pouvoir importer la clé de l'utilisateur dans un navigateur web, il faut qu'elle soit au format PKCS#12:&lt;/p&gt;


&lt;pre&gt; openssl pkcs12 -export -in yoann.pem -inkey yoann.key -out yoann.p12 -name &quot;Yoann QUERET&quot;&lt;/pre&gt;


&lt;pre&gt; Enter pass phrase for yoann.key:
 Enter Export Password:
 Verifying - Enter Export Password:&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Utilisation de la clef client avec apache&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Si vous voulez restreindre l'acces a votre site https au seul visiteurs possedant une clé PKCS#12, vous devez juste modifier la variable SSLVerifyClient à Yes dans votre configuration de apache.&lt;/p&gt;


&lt;pre&gt; SSLVerifyClient Yes&lt;/pre&gt;


&lt;p&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/p&gt;


&lt;h2&gt;Revoker un certificat&lt;/h2&gt;


&lt;p&gt;Pour révoquer un certificat, il est utile de connaître son numéro de série, car les certificats émis par l'AC sont stockés dans le répertoire /root/CA/queret.net/newcerts sous la forme &amp;lt;numéro&amp;gt;.pem. La correspondance entre les informations nominatives du certificat et le numéro de série est possible grâce à la base de donnée sauvée dans le fichier /root/CA/queret.net/index.txt.&lt;/p&gt;

&lt;pre&gt; openssl ca -config /root/CA/queret.net/openssl.cnf -revoke ./newcerts/02.pem&lt;/pre&gt;


&lt;p&gt;Il faut également générer la CRL qui va permettre au serveur Apache d'être au courant de la revocation, par exemple&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; openssl ca -config /root/CA/queret.net/openssl.cnf -gencrl -out crl.pem&lt;/pre&gt;


&lt;p&gt;Il faut penser aussi a rejouter dans la configuration de apache&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; SSLCARevocationFile /etc/apache2/ssl/crl.pem&lt;/pre&gt;


&lt;p&gt;et de copier le fichier de la CRL a cette endroit&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; cp crl.pem /etc/apache2/ssl/crl.pem&lt;/pre&gt;


&lt;p&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/p&gt;


&lt;h2&gt;Ressources&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;http://rtfm.asia/rubriques/systeme/98-apache-ssltls-mini-howto&lt;/li&gt;
&lt;li&gt;http://www.andesi.org/reseau:gestion-de-certificats-avec-openssl&lt;/li&gt;
&lt;/ul&gt;</description>
    
          <enclosure url="http://www.queret.net/blog/public/documents/openssl.cnf"
      length="9408" type="text/plain" />
    
    
          <comments>http://www.queret.net/blog/post/2009/08/22/G%C3%A9rer-une-authorit%C3%A9-de-certification-%28CA%29-compl%C3%A8te-avec-OpenSSL#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/08/22/G%C3%A9rer-une-authorit%C3%A9-de-certification-%28CA%29-compl%C3%A8te-avec-OpenSSL#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/153</wfw:commentRss>
      </item>
    
  <item>
    <title>Apache, Forcer le téléchargement de fichier</title>
    <link>http://www.queret.net/blog/post/2009/04/16/Forcer-le-telechargement-de-fichier-avec-apache</link>
    <guid isPermaLink="false">urn:md5:136c245a1b63a5351f1989df3abfc66c</guid>
    <pubDate>Thu, 27 Aug 2009 09:31:00 +0200</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>L1nuX and c0</category>
        <category>apache</category><category>Files</category><category>FilesMatch</category><category>ForceType</category>    
    <description>    &lt;p&gt;Vous avec sur votre serveur web, un repertoire http://siteweb.tld/bordel/ avec tout plein de fichiers dedans ...&lt;/p&gt;


&lt;p&gt;Vous voulez que lorsque les visiteurs clique que l'un d'entre eux (une video par exemple) ce fichier soit téléchargé plutot qu'ouvert (affiché) dans le navigateur.&lt;/p&gt;


&lt;p&gt;Pour cela, il suffit de créer un fichier .htaccess dans ce dossier /bordel/ et d'y mettre ce qui suis&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; &amp;lt;Files *&amp;gt;
   ForceType application/octet-stream
 &amp;lt;/Files&amp;gt;&lt;/pre&gt;


&lt;p&gt;Tous les fichiers seront alors téléchargé, plutôt qu'ouvert par le navigateur.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2009/04/16/Forcer-le-telechargement-de-fichier-avec-apache#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/04/16/Forcer-le-telechargement-de-fichier-avec-apache#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/141</wfw:commentRss>
      </item>
    
  <item>
    <title>Faite le curieux avec ngrep; le grep du reseau</title>
    <link>http://www.queret.net/blog/post/2009/05/14/ngrep</link>
    <guid isPermaLink="false">urn:md5:e674fa825069243d3a39ebaaa06db013</guid>
    <pubDate>Wed, 26 Aug 2009 10:00:00 +0200</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>L1nuX and c0</category>
        <category>ngrep</category><category>surveillance</category>    
    <description>&lt;p&gt;Ngrep est un outil de surveillance de paquets réseau.&lt;/p&gt;


&lt;p&gt;D'une facilité d'utilisation deconsertante, le résultat en impressionant.&lt;/p&gt;


&lt;p&gt;ATTENTION&amp;nbsp;: On vous surveille !!!&lt;/p&gt;    &lt;p&gt;&lt;ins&gt;&lt;strong&gt;Installation&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;pre&gt; aptitude install ngrep&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Exemple d'utilisation&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Mettre en clair les mots de passe et utilisateurs qui passe par eth1/tcp/port 21 (une authentification ftp en sorte ..)&lt;/p&gt;

&lt;pre&gt; ngrep -d eth1 -T &quot;USER|PASS&quot; tcp port 21&lt;/pre&gt;


&lt;p&gt;Le résultat lors d'une connexion FTP&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; interface: eth1 (193.17.192.xx/255.255.255.224)
 filter: (ip or ip6) and ( port 21 )
 match: USER|PASS
 ######
 T +4.434428 77.xx.xx.xx:39207 -&amp;gt; 193.17.192.xx:21 [AP]
 USER yoann..                                                                                                                                                                 
 ###
 T +0.014241 77.xx.xx.xx:39207 -&amp;gt; 193.17.192.xx:21 [AP]
 PASS xxxxxxxxxx..
 #############&lt;/pre&gt;


&lt;p&gt;La meme chose pour l'IMAP&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; ngrep -T &quot;login&quot; port 143&lt;/pre&gt;


&lt;p&gt;Et rien de bien plus compliqué pour le POP&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; ngrep -T &quot;USER|PASS&quot; port 110&lt;/pre&gt;



&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Ma conclusion&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Il n'y a rien de plus simple que de recupérer des logins/mots de passes sur des services non sécurisés.&lt;/p&gt;


&lt;p&gt;Sécuriser vos services critiques avec SSL/TLS&amp;nbsp;!&lt;/p&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2009/05/14/ngrep#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/05/14/ngrep#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/147</wfw:commentRss>
      </item>
    
  <item>
    <title>Asterisk + FreePBX sur Debian /Lenny/Ubuntu/... : Installation Script V.0.3.4</title>
    <link>http://www.queret.net/blog/post/2009/08/24/Asterisk-FreePBX-sur-Debian-Lenny-Ubuntu-Installation-Script-V034</link>
    <guid isPermaLink="false">urn:md5:51d19a4d70e9acd4e105260b6eb5f12a</guid>
    <pubDate>Mon, 24 Aug 2009 14:00:00 +0200</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>VOIP Asterisk &amp; Telephonie</category>
        <category>asterisk</category><category>freepbx</category><category>script</category>    
    <description>&lt;p&gt;J'aurais du vous annoncé la version 0.4 mais en attendant d'avoir un peu plus de temps pour finaliser tout ce que je veux faire pour cette version 0.4, voici la 0.3.4.&lt;/p&gt;


&lt;p&gt;Il y a quelques corrections de bug, et améliorations dans cette version 0.3.4 !!&lt;/p&gt;


&lt;pre&gt; - Passage de asterisk 1.4.22 a 1.4.26.1
 - Passage de la lipri 1.4.7 à 1.4.10.1
 - Passage des addons asterisk 1.4.7 à 1.4.9
 - Passage de dahdi linux 2.1.0.4 à 2.1.0.2
 - Passage de dahdi tools 2.1.0.2 à 2.2.0
 | La version de freepbx ne change pas (2.5.1)&lt;/pre&gt;    &lt;p&gt;&lt;ins&gt;&lt;strong&gt;Télécharger le script :&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;del&gt;Francais&amp;nbsp;: &lt;a href=&quot;http://www.queret.net/download/Asterisk_FreePBX/scripts/asterisk-freepbx_0.3.4_fr_2009-08-24.sh&quot; hreflang=&quot;fr&quot;&gt;asterisk-freepbx_0.3.4_fr_2009-08-24.sh&lt;/a&gt;&lt;/del&gt;&lt;/li&gt;
&lt;li&gt;Francais&amp;nbsp;: &lt;a href=&quot;http://www.queret.net/download/Asterisk_FreePBX/scripts/asterisk-freepbx_0.3.4_fr_2010-01-14.sh&quot; hreflang=&quot;fr&quot;&gt;asterisk-freepbx_0.3.4_fr_2010-01-14.sh&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Anglais&amp;nbsp;: no english version for 0.3.4 (from 0.4.0 this script are only in english)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Historiques de versions :&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.queret.net/download/Asterisk_FreePBX/scripts/changelog&quot; hreflang=&quot;fr&quot;&gt;Consulter l'historique des versions&lt;/a&gt; (FR)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Mailing-List VOIP :&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Afin d'être tenu au courant dès la sortie d'une nouvelle version du script, abonnez-vous à la mailing liste VOIP.
Plus d'info sur le billet&amp;nbsp;: &lt;a href=&quot;http://www.queret.net/blog/index.php/2008/07/02/121-asterisk-freepbx-mailing-liste&quot; hreflang=&quot;fr&quot;&gt;asterisk-freepbx-mailing-liste&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;&lt;strong&gt;A NE PAS OUBLIER :&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Il y a un problème avec le Flash Operator Panel (FOP) qui se ressoud très facilement en installant le module &quot; FreePBX FOP Framework&quot; depuis l'interface HTTP de votre FreePBX.&lt;/li&gt;
&lt;li&gt;Dans tous les cas après installation, la 1ere chose a faire est de mettre a jours FreePBX en allant sur l'interface HTTP, (En haut à gauche onglet Tool, puis Module Admin) cliquer sur &quot;Check for updates online&quot; puis &quot;Upgrade All&quot; puis &quot;Process&quot;.&lt;/li&gt;
&lt;/ul&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2009/08/24/Asterisk-FreePBX-sur-Debian-Lenny-Ubuntu-Installation-Script-V034#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/08/24/Asterisk-FreePBX-sur-Debian-Lenny-Ubuntu-Installation-Script-V034#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/155</wfw:commentRss>
      </item>
    
  <item>
    <title>Apache2 &amp; authentification http &amp; stockage login/mot de passe en base MySQL</title>
    <link>http://www.queret.net/blog/post/2009/08/21/Apache2-authentification-mysql</link>
    <guid isPermaLink="false">urn:md5:6ee29e904670b7127aadb9b5fc780922</guid>
    <pubDate>Mon, 24 Aug 2009 10:00:00 +0200</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>L1nuX and c0</category>
        <category>apache</category><category>auth</category><category>mysql</category>    
    <description>&lt;p&gt;L'authentification HTTP, avec le stockage des login/mot de passe dans une base mysql c'est simple ... mais pas si simple ..&lt;/p&gt;


&lt;p&gt;Historiquement, le package du module de apache permettant cette authentification etait disponible dans la version 3.0 (sarge) de Debian. Il avait completement disparu avec la version 4.0 (etch) et le revoilà maintenant de nouveau dans la version 5.0 (lenny)&lt;/p&gt;


&lt;p&gt;Voici en detail la mise en place de cette authentification.&lt;/p&gt;


&lt;p&gt;Il pourra d'ailleur être interessant d'utiliser une base de données déjà existant, afin de centraliser la gestion des identifiants.&lt;/p&gt;    &lt;p&gt;&lt;ins&gt;&lt;strong&gt;Pré-requis&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Nous avons bien sur besoin d'un serveur apache &amp;amp; d'une base de données mysql&lt;/p&gt;

&lt;pre&gt; aptitude install apache2 mysql-server&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Installation du packages&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;On install le module apache permettant l'authentification mysql&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; aptitude install libapache2-mod-auth-mysql&lt;/pre&gt;


&lt;p&gt;On active ce module&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; a2enmod auth_mysql&lt;/pre&gt;


&lt;p&gt;Recharger apache2 pour prendre en compte les changements&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; /etc/init.d/apache2 reload&lt;/pre&gt;


&lt;p&gt;Voila c'est installer !!&lt;/p&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Création de la base mysql&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;pre&gt; mysqladmin --user=root -p create httpauth&lt;/pre&gt;

&lt;p&gt;(saisir le mot de passe root mysql)&lt;/p&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Creation de l'utilisateur mysql pour l'authentification&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Nous pourrions nous connecter en root à notre base de données httpauth mais nous allons préférer créer un utilisateur mysql spécifique qui ne pourra accèder qu'a la base de données httpauth.&lt;/p&gt;


&lt;p&gt;Nous allons appeler cette utilisateur&amp;nbsp;: httpauth&lt;/p&gt;


&lt;p&gt;Remplacer ci dessous &amp;lt;password_mysql_httpauth&amp;gt; pas le mot de passe que vous souhaitez donner à l'utilisateur httpauth&lt;/p&gt;


&lt;pre&gt; mysql -u root -p mysql
 mysql&amp;gt; GRANT ALL ON httpauth.* TO httpauth@localhost IDENTIFIED BY '&amp;lt;password_mysql_httpauth&amp;gt;';
 mysql&amp;gt; flush privileges;
 mysql&amp;gt; quit;&lt;/pre&gt;


&lt;p&gt;Nous avons donc maintenant&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Une base de données&amp;nbsp;: httpauth&lt;/li&gt;
&lt;li&gt;Un utilisateur mysql&amp;nbsp;: httpauth qui ne peux accèder qu'a la base de données httpauth&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Creation de la table users&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;pre&gt; mysql -u root -p httpauth&lt;/pre&gt;


&lt;pre&gt; CREATE TABLE `users` (
 `username` varchar(25) NOT NULL default '',
 `password` varchar(25) NOT NULL default '',
 `groups` varchar(25) NOT NULL default '',
 PRIMARY KEY (`username`),
 KEY `groups` (`groups`)
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1;&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Modifier votre vhosts&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Ici je modifie le Vhosts par default, a vous de l'adapter en fonction de vos besoin.&lt;/p&gt;


&lt;p&gt;On edite le fichier /etc/apache2/sites-enabled/000-default afin d'y ajouter AuthConfig à la directive AllowOverride.&lt;/p&gt;


&lt;p&gt;Cela va nous permettre de gérer la configuration de l'authentification dans un fichier .htaccess&lt;/p&gt;


&lt;pre&gt; &amp;lt;Directory /&amp;gt;
   Options Indexes MultiViews FollowSymLinks
   AllowOverride &lt;strong&gt;AuthConfig&lt;/strong&gt; Options FileInfo Limit
 &amp;lt;/Directory&amp;gt;&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Créer le fichier .htaccess contenant la configuration de l'authentification&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Le fichier .htaccess doit être placé dans votre arboresence web (/var/www/ ?) à l'endroit où vous souhaitez qu'il y ai l'authentification.&lt;/p&gt;


&lt;pre&gt; AuthMYSQL on
 AuthMySQL_Authoritative on
 AuthMySQL_Host localhost
 AuthMySQL_User httpauth
 AuthMySQL_Password &amp;lt;mot de passe mysql&amp;gt;
 AuthMySQL_DB httpauth
 AuthMySQL_Password_Table users
 AuthMySQL_Empty_Passwords off
 AuthMySQL_Encrypted_Passwords On
 AuthMySQL_Encryption_Types Crypt_MD5 Plaintext Crypt_DES PHP_MD5
 AuthMySQL_Username_Field username
 AuthMySQL_Password_Field password
 
 AuthName &quot;private&quot;
 AuthType Basic
 AuthBasicAuthoritative Off
 
 AuthUserFile /dev/null
 
 Require valid-user&lt;/pre&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Ajout d'un utilisateur dans la base de données&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;pre&gt; mysql -u root -p httpauth
 INSERT INTO `users` VALUES ('&amp;lt;username&amp;gt;', '&amp;lt;password&amp;gt;', '&amp;lt;group&amp;gt;');&lt;/pre&gt;


&lt;p&gt;Changer &amp;lt;username&amp;gt;, &amp;lt;password&amp;gt; et &amp;lt;group&amp;gt; a votre convenance.&lt;/p&gt;


&lt;p&gt;Le mot de passe peut également être encrypté comme suis&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; INSERT INTO `users` VALUES ('&amp;lt;username&amp;gt;',ENCRYPT( '&amp;lt;password&amp;gt;'), '&amp;lt;group&amp;gt;');&lt;/pre&gt;


&lt;p&gt;Ici le group n'est pas pris en compte dans notre configuration. (Il faut encore que je face quelques tests.)&lt;/p&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2009/08/21/Apache2-authentification-mysql#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/08/21/Apache2-authentification-mysql#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/152</wfw:commentRss>
      </item>
    
  <item>
    <title>Windows : Désactiver la possibilité de sauvegarder le mot de passe des connexions VPN</title>
    <link>http://www.queret.net/blog/post/2009/08/22/Windows-%3A-D%C3%A9sactiver-la-possibilit%C3%A9-de-sauvegarder-le-mot-de-passe-des-connexions-VPN</link>
    <guid isPermaLink="false">urn:md5:8fe80a45114fdf436a989216030bc5b8</guid>
    <pubDate>Sat, 22 Aug 2009 07:00:00 +0200</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>Wind0Z</category>
        <category>disable</category><category>password</category><category>vpn</category><category>windows</category>    
    <description>&lt;p&gt;On a beau expliquer à un utilisateur d'ordinateur portable sous Windows (ceux sous linux, on des partitions crypté), qu'il ne doit pas sauvegarder ces mots de passe de messagerie et de connexion VPN (au cas où il se fera voler sont portable) ...&lt;/p&gt;


&lt;p&gt;Il le fait quand même ... ( LE faignant !! )&lt;/p&gt;


&lt;p&gt;Pour remedier efficacement à cette problématique de faignantise, le moyen encore le plus sûr, est de ne pas permettre à l'utilisateur de sauvegarder son mot de passe (désactiver la cache à cocher).&lt;/p&gt;    &lt;p&gt;&lt;ins&gt;&lt;strong&gt;Edition de la base de registre&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;A l'aide de regedit, vous devez rajouter une entrée dans la base de registre à ce niveau&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; HKLM\System\CurrentControlSet\Services\RasMan\Parameters&lt;/pre&gt;


&lt;p&gt;Ajouter une entrée Dword et appeler là &quot;DisableSavePassword&quot; et mettez la valeur à 1.&lt;/p&gt;



&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Via les scripts de demarrage :&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;Si vous utilisez des scripts de demarrage, vous pouvez rajouter un batch contenant ceci&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; reg add HKLM\System\CurrentControlSet\Services\RasMan\Parameters /v DisableSavePassword /t REG_DWORD /d 1 /f&lt;/pre&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2009/08/22/Windows-%3A-D%C3%A9sactiver-la-possibilit%C3%A9-de-sauvegarder-le-mot-de-passe-des-connexions-VPN#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/08/22/Windows-%3A-D%C3%A9sactiver-la-possibilit%C3%A9-de-sauvegarder-le-mot-de-passe-des-connexions-VPN#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/154</wfw:commentRss>
      </item>
    
  <item>
    <title>Crypter/Chiffrer une partition avec dm-crypt et luks</title>
    <link>http://www.queret.net/blog/post/2009/08/21/Crypter-Chiffrer-une-partition-avec-dm-crypt-et-luks</link>
    <guid isPermaLink="false">urn:md5:1488711579101e9c1c021cae5d204188</guid>
    <pubDate>Fri, 21 Aug 2009 22:20:00 +0200</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>L1nuX and c0</category>
        <category>cryptage</category><category>luks</category>    
    <description>&lt;p&gt;Surement un effet Hadopi, le cryptage c'est à la mode en ce momment&amp;nbsp;!&lt;/p&gt;
&lt;p&gt;Puisque les articles fleurisses dans les magazines papier &amp;amp; web, pourquoi pas ici&amp;nbsp;? :-)&lt;/p&gt;
&lt;p&gt;Je vais vous décrire dans ce billet, comment crypter une partition sur votre distribution linux préféré Debian (ou Ubuntu .. ?) à l'aide de dm-crypt et luks (Linux Unified Key Setup).&lt;/p&gt;
&lt;h3&gt;ATTENTION !!!&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Il n'est pas possible de crypter une partition existante sans en effacer les données&lt;/li&gt;
&lt;li&gt;Si vous avez des données sur la partition que vous souhaitez crypter sauvegarder les avant !!!&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;TOUTES LES DONNEES DES PARTITIONS QUE VOUS ALLEZ CRYPTER SERONT EFFACEES&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;    &lt;p&gt;&lt;ins&gt;&lt;strong&gt;LUKS&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;
&lt;p&gt;Le projet LUKS, vise à standardiser le chiffrement de systèmes de fichiers. Les partitions LUKS peuvent être accédées aussi bien sous linux que sous Windows grâce à l’outil gratuit FreeOTFE.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;http://en.wikipedia.org/wiki/Linux_Unified_Key_Setup&lt;/li&gt;
&lt;li&gt;http://en.wikipedia.org/wiki/FreeOTFE&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Préparation du système&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le kernel&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Le kernel doit être, ou avoir été, compilé avec les options suivantes&amp;nbsp;:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Pour un noyau 2.6.27, ces deux options se trouvent dans la rubrique Device drivers --&amp;gt; Multiple devices driver support (RAID and LVM).&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;CONFIG_BLK_DEV_DM (Device mapper support)&lt;/li&gt;
&lt;li&gt;CONFIG_DM_CRYPT (Crypt target support)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Pour un noyau 2.6.27, ces trois options se trouvent dans la rubrique Cryptographic API.&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;CONFIG_CRYPTO_SHA256 (SHA224 and SHA256 digest algorithm)&lt;/li&gt;
&lt;li&gt;CONFIG_CRYPTO_SHA512 (SHA384 and SHA512 digest algorithms)&lt;/li&gt;
&lt;li&gt;CONFIG_CRYPTO_AES (AES cipher algorithms)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Rassurez-vous c'est le cas sur les kernel par default au moins sur Debian 5.0 &amp;amp; Ubuntu 8.04&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Chargement des modules necessaires&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt; modprobe aes&lt;br /&gt; modprobe dm-mod&lt;br /&gt; modprobe dm_crypt&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Chargement des modules au boot de la machine&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt; echo aes &amp;gt;&amp;gt; /etc/modules&lt;br /&gt; echo dm_mod   &amp;gt;&amp;gt; /etc/modules&lt;br /&gt; echo dm_crypt &amp;gt;&amp;gt; /etc/modules&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Installation des packages necessaire&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt; aptitude install cryptsetup&lt;/pre&gt;
&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Préparation du disque&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Création de la partition à l'aide de fdisk&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt; fdisk /dev/sdb&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;pour supprimer toutes les partitions&amp;nbsp;: d (a repéter pour toutes les partitions)&lt;/li&gt;
&lt;li&gt;puis pour ajouter une nouvelle parition&amp;nbsp;: n (les valeurs par default concernant les tailles, utilise tout l'espace du disque)&lt;/li&gt;
&lt;li&gt;et enfin&amp;nbsp;: w (pour enregistrer les changements)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Supprimer toutes les données de la partition&lt;/strong&gt;
Nous allons supprimé toutes les trace des données qui sont actuellement sur la partition. Il existe des outils dit de &quot;forensic&quot; comme TCT, qui peuvent retrouver des données effacées. Une donnée sur un disque dur disparait au bout d'environ sept écritures au même endroit, il existe un outil nommé shred qui effectue se genre de chose.&lt;/p&gt;
&lt;pre&gt; shred -n 10 -v /dev/sdb1&lt;/pre&gt;
&lt;p&gt;Shred n'etant pas efficace pour la génération d'entropie (reproduit toujours la même séquence), on va donc généré de l'entropie depuis /dev/urandom&lt;/p&gt;
&lt;pre&gt; dd if=/dev/urandom of=/dev/sdb1&lt;/pre&gt;
&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Crypter le disque&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Initialisez la partition&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt; cryptsetup --verbose --verify-passphrase luksFormat /dev/sdb1&lt;/pre&gt;
&lt;p&gt;On vous demandera de saisir une passphrase qui elle seul permettra de decrypter les données de la partition.&lt;/p&gt;
&lt;p&gt;Prenez soins de bien la noter et quel soit assé compliqué.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ouvrir le nouveau volume crypté&lt;/strong&gt;
L'opération consiste à mapper notre partition (crypté) avec une partition virtuelle (dé-crypté). On vous demandera bien-sûr lors de cette opération la passphrase permettant de dé-crypté la partition.&lt;/p&gt;
&lt;pre&gt; cryptsetup luksOpen /dev/sdb1 data&lt;/pre&gt;
&lt;p&gt;La partition mapper (donc dé-crypté) ici &lt;em&gt;data&lt;/em&gt; se trouvera dans /dev/mapper/&lt;/p&gt;
&lt;p&gt;Pour vérifier que le volume est bien ouvert&amp;nbsp;:&lt;/p&gt;
&lt;pre&gt; ls -l /dev/mapper | grep data&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Création du système de fichier (ext3 dans notre exemple) sur la partition crypté&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt; mkfs.ext3 /dev/mapper/data&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Monter la partition&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt; mkdir /mnt/data/&lt;br /&gt; mount /dev/mapper/data /mnt/data/&lt;/pre&gt;
&lt;p&gt;Pour vérifier que le point de montage est bien visible&amp;nbsp;:&lt;/p&gt;
&lt;pre&gt; df -h&lt;/pre&gt;
&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Ouvrir &amp;amp; monter la partition crypté au boot de la machine&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;
&lt;h3&gt;ATTENTION !!!&lt;/h3&gt;
&lt;p&gt;Vous noterez bien que &lt;ins&gt;je ne dis pas&lt;/ins&gt; ici &lt;em&gt;Ouvrir &amp;amp; monter &lt;ins&gt;automatiquement&lt;/ins&gt;&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Si vous decidez de monter votre partition au demarrage, la passphrase vous sera demandé avant même de charger les différents services (y compris réseau &amp;amp; bien sûr ssh). Pensez-y si vous le faite sur un serveur distant !!&lt;/p&gt;
&lt;p&gt;Le fichier /etc/crypttab (à créer au besoin) décrit les périphériques de bloc chiffrés qui sont configurés au démarrage du système.
Nous y ajoutons notre partition crypté&lt;/p&gt;
&lt;pre&gt; echo &quot;data /dev/sdb1 none luks&quot; &amp;gt;&amp;gt; /etc/crypttab&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;data&amp;nbsp;: correspond à notre mapping&lt;/li&gt;
&lt;li&gt;/dev/sdb1&amp;nbsp;: correspond à la partition crypté&lt;/li&gt;
&lt;li&gt;none&amp;nbsp;: indique que nous n'utilisons pas de fichier de clef&lt;/li&gt;
&lt;li&gt;luks&amp;nbsp;: indique le type de cryptage utilisé&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Modifier le fichier /etc/fstab&amp;nbsp;:
echo &quot;/dev/mapper/data /data ext3 defaults 1 2&quot; &amp;gt;&amp;gt; /etc/fstab&lt;/p&gt;
&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Ouvrir &amp;amp; monter la partition crypté manuellement&lt;/strong&gt;&lt;/ins&gt;
Si vous utilisez une partition crypté sur un serveur, il vous faudra utiliser cette methode manuelle&amp;nbsp;:&lt;/p&gt;
&lt;pre&gt; cryptsetup luksOpen /dev/sdb1 data&lt;br /&gt; mount -a&lt;/pre&gt;
&lt;p&gt;&lt;ins&gt;&lt;strong&gt;Dé-monter &amp;amp; Fermer la partition crypté&lt;/strong&gt;&lt;/ins&gt;
On commence par demonter la partition&amp;nbsp;:&lt;/p&gt;
&lt;pre&gt; umount /mnt/data/&lt;/pre&gt;
&lt;p&gt;Puis par fermer le mapping&amp;nbsp;:&lt;/p&gt;
&lt;pre&gt; cryptsetup luksClose data&lt;/pre&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2009/08/21/Crypter-Chiffrer-une-partition-avec-dm-crypt-et-luks#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/08/21/Crypter-Chiffrer-une-partition-avec-dm-crypt-et-luks#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/151</wfw:commentRss>
      </item>
    
  <item>
    <title>Script d'installation d'asterisk + FreePBX repris et bien modifié :-)</title>
    <link>http://www.queret.net/blog/post/2009/06/04/Script-d-installation-d-asterisk-FreePBX-repris-et-bien-modifi%C3%A9-%3A-%29</link>
    <guid isPermaLink="false">urn:md5:65cb31a7278ddb9b3933e8de78642a8e</guid>
    <pubDate>Thu, 04 Jun 2009 00:29:00 +0200</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>VOIP Asterisk &amp; Telephonie</category>
            
    <description>    &lt;p&gt;En testant un peu le nouveau moteur de recherche de M$ Bing.com, je suis tombé sur le blog de Matt Chipman &lt;a href=&quot;http://www.corenetworks.com.au/&quot; hreflang=&quot;en&quot;&gt;http://www.corenetworks.com.au/&lt;/a&gt; qui publie un billet sur l'installation vraiment facile d'asterisk sur debian ce qui nous donne dans la langue de Shakespeare &lt;a href=&quot;http://www.corenetworks.com.au/?p=20&quot; hreflang=&quot;en&quot;&gt;really easy Debian Asterisk Install&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Les modifications fait par Matt sont mineurs, et les améliorations apportés seront reprisent dans la prochaine version (qui tarde vraiment à sortir, mais en ce momment, je manque vraiment de temps)&lt;/p&gt;


&lt;p&gt;Cela me fait vraiment plaisir de voir que mon petit bout de script est arrivé en australie, et est repris et optimisé.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2009/06/04/Script-d-installation-d-asterisk-FreePBX-repris-et-bien-modifi%C3%A9-%3A-%29#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/06/04/Script-d-installation-d-asterisk-FreePBX-repris-et-bien-modifi%C3%A9-%3A-%29#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/149</wfw:commentRss>
      </item>
    
  <item>
    <title>FreeBox UPnP AV : Installation de MediaTomb sous Debian/Ubuntu</title>
    <link>http://www.queret.net/blog/post/2009/05/15/FreeBox-UPnP-AV-%3A-Installation-de-MediaTomb-sous-Debian/Ubuntu</link>
    <guid isPermaLink="false">urn:md5:91b707f25909dab087de6e9a2b51ac86</guid>
    <pubDate>Fri, 15 May 2009 15:46:00 +0200</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>L1nuX and c0</category>
        <category>free</category><category>mediatomb</category><category>upnp</category>    
    <description>&lt;p&gt;Le 14 Mai 2009, Free ajoute une nouvelle fonctionnalité sur le boitier HD de la freebox.&lt;/p&gt;


&lt;p&gt;Free simplifie la diffusion des contenus numériques sur la télévision&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://iliad.fr/presse/2009/CP_140509.pdf&quot; hreflang=&quot;fr&quot;&gt;http://iliad.fr/presse/2009/CP_140509.pdf&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.universfreebox.com/article8108.html&quot; hreflang=&quot;fr&quot;&gt;http://www.universfreebox.com/article8108.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cette nouvelle fonctionnalité, vous permet d'accèder aux contenus multimédia (Videos, Images, Audio) stocker sur vos postes informatiques et cela fonctionne aussi bien sous Windows, Mac, ou Linux !!! Vous y accèder quasiement comme si vous accèder à un partage réseau samba ou nfs.&lt;/p&gt;


&lt;p&gt;Dans la suite de ce billet, je vais vous expliquer comment installer le serveur UPnP MediaTomb sur Ubuntu/Debian.&lt;/p&gt;    &lt;p&gt;L'installation de MediaTomb est vraiment très très compliqué&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; aptitude install mediatomb&lt;/pre&gt;


&lt;p&gt;Et ca configuration encore plus; puisque qu'il n'y a rien d'autre a faire. :-)&lt;/p&gt;


&lt;p&gt;Allumer maintenant votre freebox HD, appuyer sur le bouton FREE de la télécommande et aller faire un tour du coté du magnéto.
Vous devriez voir apparaitre dans les Périphériques Réseaux &quot;MediaTomb&quot;.&lt;/p&gt;


&lt;p&gt;Et là vous aller me dir, ca marche pas, y'a rien a part un dossier &quot;PC Directory&quot; vide ....&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://www.queret.net/blog/public/images/news/2009/.15052009364_m.jpg&quot; alt=&quot;15052009364.jpg&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;15052009364.jpg, mai 2009&quot; /&gt;&lt;/p&gt;



&lt;p&gt;Il faut effectivement indiquer a MediaTomb les repertoires que vous souhaitez partager. Pour cela, il faut vous rendre à l'url&amp;nbsp;: http://&amp;lt;ipv4 de votre machine&amp;gt;:49152&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://www.queret.net/blog/public/images/news/2009/.Screenshot-MEDIATOMB_-_Mozilla_Firefox1_m.jpg&quot; alt=&quot;Screenshot-MEDIATOMB_-_Mozilla_Firefox1.png&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;Screenshot-MEDIATOMB_-_Mozilla_Firefox1.png, mai 2009&quot; /&gt;&lt;/p&gt;


&lt;p&gt;On retrouve bien le dossier &quot;PC Directory&quot;&lt;/p&gt;


&lt;p&gt;Pour ajouter un contenu, cliquer sur &quot;FileSystem&quot;, vous y retrouverez toute l'arborescence de votre systeme linux.&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://www.queret.net/blog/public/images/news/2009/.Screenshot-MEDIATOMB_-_Mozilla_Firefox2_m.jpg&quot; alt=&quot;Screenshot-MEDIATOMB_-_Mozilla_Firefox2.png&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;Screenshot-MEDIATOMB_-_Mozilla_Firefox2.png, mai 2009&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Il suffit maintenant de choisir, dans la partie gauche, le dossier que vous souhaitez partager, et de cliquer sur le &quot;+&quot; en haut à droite.
MediaTomb a partir de ce momment la, va analyser tous les fichiers conteu dans l'arborescence que vous lui avez indiquer.&lt;/p&gt;


&lt;p&gt;Retourner sur la partie &quot;Database&quot;, et vous verrez apparaitre des nouveaux dossiers &quot;Audio, Photos, Video&quot; pour peut que vous ayez ces 3 type de media dans l'arborescence choisis. (Attention, MediaTomb dois faire une découverte de tous les fichiers, si vous en avez beaucoup, il apparaitrons au fil de leur traitement.)&lt;/p&gt;


&lt;p&gt;Vous retrouverez également dans &quot;PC Directory&quot; votre dossier partagé comme sur votre disque (chez moi /mnt/videos/)&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://www.queret.net/blog/public/images/news/2009/.Screenshot-MEDIATOMB_-_Mozilla_Firefox4_m.jpg&quot; alt=&quot;Screenshot-MEDIATOMB_-_Mozilla_Firefox4.png&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;Screenshot-MEDIATOMB_-_Mozilla_Firefox4.png, mai 2009&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Vous pouvez maintenant retournez sur votre FreeBOX HD, et vous verrez que vos fichiers sont accessible.&lt;/p&gt;


&lt;p&gt;&lt;strong&gt;Conclusion :&lt;/strong&gt;
Fonctionnalité sympa, mais si la freebox est capable de lire la plupart des fichiers video et images, ce n'est pas le cas pour ce qui est des fichiers audios.
Les videos sont fluides (rien a dire), pour ce qui est des images, photos, le temps de chargement est long, et la qualité (pixelisation) assez mediocre. Pour l'audio, c'est simple ca ne marche pas du tout (mp3, flac, ogg, wav la freebox n'affiche meme pas les fichiers dans le navigteur).&lt;/p&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2009/05/15/FreeBox-UPnP-AV-%3A-Installation-de-MediaTomb-sous-Debian/Ubuntu#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/05/15/FreeBox-UPnP-AV-%3A-Installation-de-MediaTomb-sous-Debian/Ubuntu#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/148</wfw:commentRss>
      </item>
    
  <item>
    <title>Introduction à l'utilisation de apache2 en repartiteur de charge / load balanceur (mod_proxy &amp; mod_proxy_balancer)</title>
    <link>http://www.queret.net/blog/post/2009/04/30/Apache2-%3A-Utiliser-apache2-%28-2.1%29-en-repartiteur-de-charge-/-load-balanceur-%28mod_proxy-mod_proxy_balancer%29</link>
    <guid isPermaLink="false">urn:md5:0fee9db1ac431216f4620862ae15bac8</guid>
    <pubDate>Thu, 30 Apr 2009 19:05:00 +0200</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>L1nuX and c0</category>
        <category>apache2</category><category>load balancing</category><category>mod_proxy</category><category>mod_proxy_balancer</category><category>mod_proxy_http</category>    
    <description>&lt;p&gt;Je vous présente dans la suite de ce billet une introduction à l'utilisation de apache2 (=&amp;gt; 2.1) en repartiteur de charge / load balanceur (mod_proxy, mod_proxy_http &amp;amp; mod_proxy_balancer).&lt;/p&gt;


&lt;p&gt;J'ai essayé de faire une approche assez didactic. (Les problématiques seraient différents sur un cas concret)&lt;/p&gt;    &lt;h2&gt;Repartiteur de charge / Load balanceur avec apache2 par l'exemple&lt;/h2&gt;


&lt;p&gt;Nous avons un site web diffusant du contenu images et videos (media) hébergé sur un serveur.&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://www.queret.net/blog/public/images/news/apache2_mod_proxy/apache2_mod_proxy_1.jpg&quot; alt=&quot;apache2_mod_proxy_1.jpg&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;apache2_mod_proxy_1.jpg, avr. 2009&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Ayant une grand quantité d'image et de medias à servir, ca consomme beaucoup de ressources processeurs et on aimerais pouvoir avoir les images, les medias, et le site web sur des machines différents.&lt;/p&gt;


&lt;p&gt;Ce site web est bien consu, car nous avons&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;un dossier /images/&lt;/li&gt;
&lt;li&gt;un dossier /media/&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Nous allons donc ici mettre en place un système de proxy, grace a apache2.&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://www.queret.net/blog/public/images/news/apache2_mod_proxy/apache2_mod_proxy_2.jpg&quot; alt=&quot;apache2_mod_proxy_2.jpg&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;apache2_mod_proxy_2.jpg, avr. 2009&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Après avoir installer une Distribution Debian 5.0 Lenny (qui dispose d'un apache2 supérieur à la version 2.1), nous allons avoir quelques configuration à effectuer.&lt;/p&gt;


&lt;p&gt;On installe le module mod_proxy de apache2&lt;/p&gt;

&lt;pre&gt; # aptitude install apache2 libapache2-mod-proxy-html&lt;/pre&gt;

&lt;p&gt;On active les modules proxy &amp;amp; proxy_http de apache2&lt;/p&gt;

&lt;pre&gt; # a2enmod proxy
 # a2enmod proxy_http&lt;/pre&gt;


&lt;p&gt;Par default les droits sur le mod_proxy est très limitatif, on edite le fichier /etc/apache2/mods-available/proxy.conf en remplacant&lt;/p&gt;

&lt;pre&gt; Deny from all&lt;/pre&gt;

&lt;p&gt;par&lt;/p&gt;

&lt;pre&gt; Allow from all&lt;/pre&gt;


&lt;p&gt;Puis nous allons editer le fichier /etc/apache2/sites-enabled/000-default et ajouter&lt;/p&gt;

&lt;pre&gt; ProxyRequests off
 ProxyPass / http://10.0.0.1/
 ProxyPass /images/ http://10.0.0.10/
 ProxyPass /medias/ http://10.0.0.20/&lt;/pre&gt;


&lt;p&gt;Après un rédemarrage de apache2 (apache2ctl restart) notre système de proxy est fonctionnel.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;http://monsite.com/ arrive bien sur le serveur web&lt;/li&gt;
&lt;li&gt;http://monsite.com/images/ arrive bien sur le serveur images&lt;/li&gt;
&lt;li&gt;http://monsite.com/medias/ arrive bien sur le serveur medias&lt;/li&gt;
&lt;/ul&gt;


&lt;h4&gt;Aie !!!&lt;/h4&gt;

&lt;p&gt;Nos images et videos sont tellement consommatrices de ressources processeurs coté serveurs, qu'il serait interessant de dupliquer les serveurs images &amp;amp; medias et de faire du loadbalancing.&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://www.queret.net/blog/public/images/news/apache2_mod_proxy/.apache2_mod_proxy_3_m.jpg&quot; alt=&quot;apache2_mod_proxy_3.jpg&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;apache2_mod_proxy_3.jpg, avr. 2009&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Il va nous falloir activer le module proxy_balancer de apache2&lt;/p&gt;

&lt;pre&gt; # a2enmod proxy_balancer&lt;/pre&gt;


&lt;p&gt;Et bien sûr adapter notre configuration dans le fichier /etc/apache2/sites-enabled/000-default&lt;/p&gt;

&lt;pre&gt; ProxyRequests off
 ProxyPass / http://10.0.0.1/
 
 &amp;lt;Proxy balancer://monClusterImages&amp;gt;
               BalancerMember http://10.0.0.10:80
               BalancerMember http://10.0.0.11:80
 &amp;lt;/Proxy&amp;gt;
 
 &amp;lt;Proxy balancer://monClusterMedias&amp;gt;
               BalancerMember http://10.0.0.20:80
               BalancerMember http://10.0.0.21:80
 &amp;lt;/Proxy&amp;gt;
 
 ProxyPass /images/ balancer://monClusterImages/
 ProxyPass /medias/ balancer://monClusterMedias/&lt;/pre&gt;


&lt;p&gt;Nous avons ici créé 2 groupes de machines (monClusterImages &amp;amp; monClusterMedias) qui sont utiliser par la suite dans la regle de ProxyPass.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;http://monsite.com/ arrive bien sur le serveur web&lt;/li&gt;
&lt;li&gt;http://monsite.com/images/ arrive bien sur l'un des deux serveurs images&lt;/li&gt;
&lt;li&gt;http://monsite.com/medias/ arrive bien sur l'un des deux serveurs medias&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Pou gérer ce load balanceur, vous pouvez rajouter a ce même fichier&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; &amp;lt;Location /balancer-manager&amp;gt;
               SetHandler balancer-manager
               Order Deny,Allow
               Deny from all
               Allow from host.monfai.net
 &amp;lt;/Location&amp;gt;&lt;/pre&gt;


&lt;p&gt;N'oubliez pas de changer le &quot;host.monfai.net&quot; par votre adresse IP, ou votre hostname ou *.votredomaine.tld.&lt;/p&gt;


&lt;p&gt;Il vous suffit maintenant de vous rendre a l'adresse http://monsite.com/balancer-manager pour voir le status de chaque serveur. Vous avez également la possibilité de &quot;Désactiver&quot; un serveur.&lt;/p&gt;



&lt;p&gt;Si un des serveurs d'un groupe de machine, ne repond plus, notre proxy sera capable de le detecter et d'envoyer les requêtes a celui encore debout ;-)&lt;/p&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2009/04/30/Apache2-%3A-Utiliser-apache2-%28-2.1%29-en-repartiteur-de-charge-/-load-balanceur-%28mod_proxy-mod_proxy_balancer%29#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/04/30/Apache2-%3A-Utiliser-apache2-%28-2.1%29-en-repartiteur-de-charge-/-load-balanceur-%28mod_proxy-mod_proxy_balancer%29#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/146</wfw:commentRss>
      </item>
    
  <item>
    <title>SSH : Sécuriser un serveur SSH</title>
    <link>http://www.queret.net/blog/post/2009/04/23/SSH-%3A-S%C3%A9curiser-un-serveur-SSH</link>
    <guid isPermaLink="false">urn:md5:81f08311a5821973f4c7ffebf94d88bf</guid>
    <pubDate>Wed, 29 Apr 2009 16:21:00 +0200</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>L1nuX and c0</category>
        <category>ssh</category><category>sshd</category>    
    <description>&lt;p&gt;Ce billet est la suite de celui sur l'utilisation des clefs publique et privée ave SSH.&lt;/p&gt;


&lt;p&gt;Nous verrons ici comment sécuriser notre serveur SSH (le daemon sshd)&lt;/p&gt;    &lt;h4&gt;PermitEmptyPasswords&lt;/h4&gt;

&lt;p&gt;Sur le serveur dans /etc/ssh/sshd_config, vous pouvez ajouter la ligne&lt;/p&gt;

&lt;pre&gt; PermitEmptyPasswords no&lt;/pre&gt;


&lt;p&gt;Ceci interdit de pouvoir ce logger avec un mot de passe vide.&lt;/p&gt;


&lt;h4&gt;PermitRootLogin&lt;/h4&gt;

&lt;p&gt;Sur le serveur dans /etc/ssh/sshd_config, vous pouvez ajouter la ligne&lt;/p&gt;

&lt;pre&gt; PermitRootLogin no&lt;/pre&gt;


&lt;p&gt;Ceci interdit de pouvoir ce logger avec l'utilisateur root. Effectivement celui-ci existe sur toutes les machines linux, et il ne resterait donc aux pirates qu'a trouver le mot de passe au lieu d'avoir a chercher un couple login + mot de passe.&lt;/p&gt;


&lt;pre&gt; PermitRootLogin without-password&lt;/pre&gt;


&lt;p&gt;Si l'utilisation du login root est requis - ex. pour un system de backup distant - vous pouvez authoriser la connexion en root uniquement par l'utilisation de clefs&lt;/p&gt;


&lt;pre&gt; PermitRootLogin forced-commands-only&lt;/pre&gt;


&lt;p&gt;Il est aussi possible de limiter l'acces root a utiliser des commandes spécifiques&lt;/p&gt;


&lt;h4&gt;Port&lt;/h4&gt;

&lt;p&gt;Aujourd'hui les pirates, scan nos serveurs, et si il trouve un port 22 (celui de SSH) à l'ecoute, ils risquent de vouloir essayer de ce connecter.
Pour cela, une solution simple est de changer le port sur lequel ecoute le daemon SSH&lt;/p&gt;


&lt;pre&gt; port 2222&lt;/pre&gt;


&lt;h4&gt;PasswordAuthentication&lt;/h4&gt;

&lt;p&gt;Sur le serveur dans /etc/ssh/sshd_config, vous pouvez ajouter la ligne&lt;/p&gt;

&lt;pre&gt; PasswordAuthentication no&lt;/pre&gt;


&lt;p&gt;Attention, ceci desactive l'authentification par mot de passe, vous ne pourrez alors utiliser que l'authentification par clefs.&lt;/p&gt;


&lt;h4&gt;Protocol&lt;/h4&gt;

&lt;p&gt;Sur le serveur dans /etc/ssh/sshd_config, vous pouvez ajouter la ligne&lt;/p&gt;

&lt;pre&gt; Protocol 2&lt;/pre&gt;


&lt;p&gt;Ceci n'authorise que l'utilisation de la version 2 de SSH. La verison 1 n'etant plus sûr.&lt;/p&gt;

&lt;h4&gt;StrictModes&lt;/h4&gt;


&lt;p&gt;Sur le serveur dans /etc/ssh/sshd_config, la ligne &quot;StrictModes yes&quot; indique que le serveur va être très pointilleux sur les droits du compte sur lequel on se connecte en ssh. Ceci permet de bloquer les connexions ssh si&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Le group, ou tout le monde peut ecrire dans le dossier de l'utilisateur&lt;/li&gt;
&lt;li&gt;Le dossier ~/.ssh n'est pas accessible en lecture/ecriture qu'a l'utilisateur&lt;/li&gt;
&lt;li&gt;Le dossier ~/.ssh/authorized_keys n'est pas accessible en lecture qu'a l'utilisateur&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Pour tout bien faire comme il faut&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt; serveur$ chmod go-w ~/
 serveur$ chmod 700 ~/.ssh
 serveur$ chmod 600 ~/.ssh/authorized_keys&lt;/pre&gt;


&lt;p&gt;Sur le client, dans /etc/ssh/ssh_config, rajoutez la ligne &quot;PreferredAuthentications publickey&quot;&lt;/p&gt;


&lt;h4&gt;MaxStartups&lt;/h4&gt;

&lt;p&gt;Sur le serveur dans /etc/ssh/sshd_config, vous pouvez ajouter la ligne&lt;/p&gt;

&lt;pre&gt; MaxStartups 10&lt;/pre&gt;


&lt;p&gt;Spécifie un nombre maximal de connexions concurrentes au démon sshd non authentifiées. Les connexions supplémentaires sont purgées si elles ne peuvent pas s'authentifier ou si le délai de grâce défini à l'aide de l'option LoginGraceTime expire pour une connexion. Par défaut 10.&lt;/p&gt;


&lt;pre&gt; MaxStartups 10:30:60&lt;/pre&gt;

&lt;p&gt;Par ailleurs, on peut activer une purge hâtive aléatoire en spécifiant un triplet «&amp;nbsp;début:taux:total&amp;nbsp;» (par exemple, «&amp;nbsp;10:30:60 »). sshd refuse les tentatives de connexion avec une probabilité de «&amp;nbsp;taux/100&amp;nbsp;» (30 %) s'il y a «&amp;nbsp;début&amp;nbsp;» (10) connexions non authentifiées en cours. La probabilité augmente linéairement et toutes les tentatives de connexion sont refusées si le nombre de connexions non authentifiées atteint «&amp;nbsp;total&amp;nbsp;» (60).&lt;/p&gt;


&lt;h4&gt;AllowUsers&lt;/h4&gt;

&lt;p&gt;Sur le serveur dans /etc/ssh/sshd_config, vous pouvez ajouter la ligne&lt;/p&gt;

&lt;pre&gt; AllowUsers john david&lt;/pre&gt;


&lt;p&gt;Cela pécifie les logins des seuls utilisateurs autorisés à se connecter (ici john &amp;amp; david)&lt;/p&gt;



&lt;h4&gt;Ressources&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;http://www.delafond.org/traducmanfr/man/man5/sshd_config.5.html&lt;/li&gt;
&lt;li&gt;http://fedorasolved.org/post-install-solutions/securing-ssh&lt;/li&gt;
&lt;/ul&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2009/04/23/SSH-%3A-S%C3%A9curiser-un-serveur-SSH#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/04/23/SSH-%3A-S%C3%A9curiser-un-serveur-SSH#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/144</wfw:commentRss>
      </item>
    
  <item>
    <title>SSH : Statistques sur les echecs d'authentification</title>
    <link>http://www.queret.net/blog/post/2009/04/24/SSH-%3A</link>
    <guid isPermaLink="false">urn:md5:7069015d1ed956bf6368ad024b525bd0</guid>
    <pubDate>Tue, 28 Apr 2009 11:38:00 +0200</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>L1nuX and c0</category>
        <category>log</category><category>ssh</category><category>statistiques</category>    
    <description>&lt;p&gt;Voici de quoi avoir quelques statistiques sur les echesc d'authentification SSH.&lt;/p&gt;    &lt;h2&gt;top 5 des comptes qui on eu echec d'authentification&lt;/h2&gt;

&lt;pre&gt; # awk 'gsub(&quot;.*sshd.*Failed password for (invalid user )?&quot;, &quot;&quot;) {print $1}' /var/log/auth* | sort | uniq -c | sort -rn | head -5
   723 root
    66 admin
    45 test
    39 ftpuser
    34 mysql&lt;/pre&gt;


&lt;h2&gt;top 5 des adresses IP qui on eu echec d'authentification&lt;/h2&gt;

&lt;pre&gt; # awk 'gsub(&quot;.*sshd.*Failed password for (invalid user )?&quot;, &quot;&quot;) {print $3}' /var/log/auth* | sort | uniq -c | sort -rn | head -5
   1042 193.251.XXX.XXX
   556 85.21.XXX.XXX
   373 218.189.XXX.XXX
   284 121.156.XX.XXX
   228 121.140.XX.XXX&lt;/pre&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2009/04/24/SSH-%3A#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/04/24/SSH-%3A#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/145</wfw:commentRss>
      </item>
    
  <item>
    <title>SSH : Gestion des clefs SSH</title>
    <link>http://www.queret.net/blog/post/2009/04/23/SSH-%3A-Gestion-des-clefs-SSH</link>
    <guid isPermaLink="false">urn:md5:e0bc5d3c6821917e3add695d2f136f9c</guid>
    <pubDate>Mon, 27 Apr 2009 22:58:00 +0200</pubDate>
    <dc:creator>Yoann</dc:creator>
        <category>L1nuX and c0</category>
        <category>dsa</category><category>id_dsa</category><category>putty</category><category>ssh</category><category>ssh-keygen</category>    
    <description>&lt;p&gt;Je ne vais pas ici vous expliquer pourquoi SSH est beaucoup plus sûr que Telnet, Rlogin, FTP, etc ..., qui transmettent les mots de passe en clair sur le réseau..&lt;/p&gt;


&lt;p&gt;Outre le fais de pouvoir s'identifier avec un login et un mot de passe qui transitent crypté sur le réseau, SSH permet également de s'authentifier avec des clefs publiques &amp;amp; privées.&lt;/p&gt;


&lt;p&gt;Ce billet est une présentation de l'utilisation des clefs publiques / privées&lt;/p&gt;    &lt;h2&gt;Introduction&lt;/h2&gt;

&lt;p&gt;SSH offre l'Authentification par clé publique/privée au lieu de simples mots de passe. Ainsi, il faut être en possession de non plus une mais de deux informations pour se connecter (avoir la clé privée &amp;amp; connaître le mot de passe de cette clé).&lt;/p&gt;


&lt;p&gt;Le système de clef se decompose en deux partie, la clef privée (celle que vous devez garder secret et protégé), et la clef publique (celle que vous devez communiquer et installer sur les serveurs distants)&lt;/p&gt;


&lt;h2&gt;Génération des clefs&lt;/h2&gt;

&lt;h3&gt;Génération des clefs sous Linux&lt;/h3&gt;


&lt;p&gt;Sous linux, la commande suivante permet de créer le jeu de clef publique et privée.&lt;/p&gt;

&lt;pre&gt; ssh-keygen -t dsa&lt;/pre&gt;


&lt;p&gt;Il vous sera demandé de confirmer l'emplacement où seront stocké les fichiers contenant les clefs, ainsi que la passphrase (mot de passe de la clef privée)&lt;/p&gt;

&lt;pre&gt; Generating public/private dsa key pair.
 Enter file in which to save the key (/home/yoann/.ssh/id_dsa): 
 Enter passphrase (empty for no passphrase): xxxx
 Enter same passphrase again: xxxx
 Your identification has been saved in /home/yoann/.ssh/id_dsa.
 Your public key has been saved in /home/yoann/.ssh/id_dsa.pub.
 The key fingerprint is:
 ef:eb:ed:5a:91:fa:75:97:34:31:ed:b0:77:a7:3f:eb yoann@cube&lt;/pre&gt;


&lt;p&gt;Vous trouverez donc dans le dossier &lt;strong&gt;.ssh&lt;/strong&gt; de votre &lt;strong&gt;home&lt;/strong&gt; ces deux fichiers&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;id_dsa&amp;nbsp;: Il contient la clef privée&lt;/li&gt;
&lt;li&gt;id_dsa.pub&amp;nbsp;: Il contient le clef publique&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Génération des clefs sous Windows&lt;/h3&gt;


&lt;p&gt;Si vous utilisez ssh depuis un poste Windows, vous connaissez surement l'utilitaire putty (si ce n'est pas le cas, ce n'est pas le but de ce billet que de présenter putty).&lt;/p&gt;


&lt;p&gt;Nous allons utiliser ici, l'utilitaire puttygen.exe ( voir &lt;a href=&quot;http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html&quot; hreflang=&quot;en&quot;&gt;le site de putty&lt;/a&gt; )&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://www.queret.net/blog/public/images/news/2009/puttygen1.jpg&quot; alt=&quot;puttygen1.jpg&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;puttygen1.jpg, avr. 2009&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Il faut sélectionner le type de clef SSH2 (DSA) et ensuite lancer la génération des clefs en cliquant sur le bouton Generate.&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://www.queret.net/blog/public/images/news/2009/puttygen2.jpg&quot; alt=&quot;puttygen2.jpg&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;puttygen2.jpg, avr. 2009&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Pour générer les clés, n'oublier pas de bouger la souris.&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://www.queret.net/blog/public/images/news/2009/puttygen3.jpg&quot; alt=&quot;puttygen3.jpg&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;puttygen3.jpg, avr. 2009&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Après la génération, il est possible d'entrer une passphrase (ou non, mais c'est moins secure).&lt;/p&gt;


&lt;p&gt;Puis, il faut enregistrer les clefs&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;la clé publique en cliquant sur &quot;Save public key&quot; sous le nom id_dsa.pub&lt;/li&gt;
&lt;li&gt;la clé privée en cliquant sur &quot;Save private key&quot; sous le nom id_dsa.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Installation de la clef publique sur le serveur distant&lt;/h2&gt;

&lt;p&gt;Il faut maintenant envoyer au serveur votre clef publique pour qu'il puisse vous crypter des messages.&lt;/p&gt;


&lt;p&gt;L'utilisateur distant doit avoir cette clef (c'est une ligne de caractères en code ASCII) dans son fichier de clé d'autorisation situé à «&amp;nbsp;~/.ssh/authorized_keys&amp;nbsp;» sur le système distant.&lt;/p&gt;


&lt;h3&gt;Installation de la clef depuis Linux&lt;/h3&gt;

&lt;p&gt;Employez la commande ssh-copy-id.&lt;/p&gt;


&lt;p&gt;ssh-copy-id est un script qui utilise ssh pour se connecter à une machine à distance en utilisant le mot de passe de l'utilisateur. L'authentification par mot de passe &quot;PasswordAuthentication yes&quot; doit donc être autorisée dans le fichier de configuration du serveur ssh. Il change également les permissions des répertoires&amp;nbsp;: &lt;a&gt;&lt;/a&gt;/.ssh/authorized_keys de l'hôte distant pour enlever l'accès en écriture du groupe (qui vous empêcheriez de vous connecter si le serveur distant ssh a &quot;StrictModes yes&quot; dans son fichier de configuration).&lt;/p&gt;


&lt;pre&gt; ssh-copy-id -i ~/.ssh/id_dsa.pub &amp;lt;username&amp;gt;@&amp;lt;ipaddress&amp;gt;&lt;/pre&gt;


&lt;p&gt;ou bien si le port est différent de celui par default (22)&lt;/p&gt;


&lt;pre&gt; ssh-copy-id -i ~/.ssh/id_dsa.pub &quot;-p &amp;lt;num_port&amp;gt; &amp;lt;username&amp;gt;@&amp;lt;ipaddress&amp;gt;&quot;&lt;/pre&gt;


&lt;p&gt;Si l'authentification par mot de passe est désactivée, alors vous aurez besoin de copier-coller votre clé suivant un autre moyen.&lt;/p&gt;


&lt;pre&gt; ssh login@serveur &quot;echo $(cat ~/.ssh/id_dsa.pub) &amp;gt;&amp;gt; .ssh/authorized_keys&quot;&lt;/pre&gt;


&lt;h3&gt;Installation de la clef depuis Linux&lt;/h3&gt;

&lt;p&gt;Il vous faudra copier la clef dans le fichier  .ssh/authorized_keys du serveur en utilisant scp.&lt;/p&gt;


&lt;h2&gt;Utilisation&lt;/h2&gt;

&lt;p&gt;Maintenant que nous avons ajouté notre clef publique sur le serveur, nous devenons un hôte de confiance.&lt;/p&gt;


&lt;h3&gt;Utilisation des clefs sous Linux&lt;/h3&gt;


&lt;pre&gt; ssh &amp;lt;username&amp;gt;@&amp;lt;ipaddress&amp;gt; -p &amp;lt;num_port&amp;gt;&lt;/pre&gt;


&lt;p&gt;Vous devrez saisir votre passphrase et plus votre mot de passe vous connecter. La différence entre le mot de passe et la passphrase est que le mot de passe est situé dans /etc/passwd du système distant alors que la passphrase sert à déchiffrer votre clé privée de votre système local.&lt;/p&gt;


&lt;h3&gt;Utilisation des clefs sous Windows&lt;/h3&gt;

&lt;p&gt;Je vous invite a regarder les liens suivants (pourquoi réinventer la roue ...)&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;http://www.betaphile.net/index.php/2008/03/09/12-s-authentifier-par-cle-publique-privee-avec-putty-sous-windows&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Voilà vous avez maintenant sécurisez votre connexion a l'aide d'une clef qui est elle meme protégée par un mot de passe.&lt;/p&gt;


&lt;p&gt;Nous verrons dans un autre billet, comment sécuriser un serveur SSH.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.queret.net/blog/post/2009/04/23/SSH-%3A-Gestion-des-clefs-SSH#comment-form</comments>
      <wfw:comment>http://www.queret.net/blog/post/2009/04/23/SSH-%3A-Gestion-des-clefs-SSH#comment-form</wfw:comment>
      <wfw:commentRss>http://www.queret.net/blog/feed/atom/comments/143</wfw:commentRss>
      </item>
    
</channel>
</rss>