<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss1full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns="http://purl.org/rss/1.0/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">




    



<channel rdf:about="http://howto.biapy.com/fr/articles-recents/RSS">
  <title>Biapy Help Desk (fr)</title>
  <link>http://howto.biapy.com</link>

  <description>Articles récents du site howto.biapy.com</description>

  

  
            <syn:updatePeriod>daily</syn:updatePeriod>
            <syn:updateFrequency>1</syn:updateFrequency>
            <syn:updateBase>2011-08-28T09:32:42Z</syn:updateBase>
        

  <image rdf:resource="http://howto.biapy.com/portal_css/Biapy%20Help%20Desk/++resource++biapy.biapyhelpdesk.images/logo-biapy-feedburner.png" />

  <items>
    <rdf:Seq>
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/systeme/logiciels/configurer-les-depots-debian-contrib-et-non-free" />
      
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/apache-2" />
      
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/apache-2/durcir-la-securite-dun-serveur-apache-2" />
      
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/php/ameliorer-la-configuration-initiale-de-php-5" />
      
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/bases-de-donnees/configurer-lanalyse-et-loptimisation-defragmentation-reguliere-des-tables-mysql" />
      
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/applications-web/gestion-dentreprise/installer-loutil-de-gestion-dentreprise-openerp-sur-debian" />
      
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/applications-web/supervision/installer-un-noeud-munin-sur-debian" />
      
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/syslog-ng/installer-et-configurer-un-serveur-syslog-ng-centralise-sur-debian" />
      
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/applications-web/supervision/installer-loganalyzer-sur-debian" />
      
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/syslog-ng/enregistrer-les-journaux-dans-une-base-mysql-avec-syslog-ng" />
      
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/syslog-ng/creer-une-configuration-modulaire-pour-syslog-ng" />
      
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/syslog-ng" />
      
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/php/gerer-les-sessions-php-avec-memcached-et-mysql" />
      
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/php/optimiser-la-gestion-des-sessions-php-avec-memcached" />
      
      
        <rdf:li rdf:resource="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/bases-de-donnees/installer-memcached-sur-debian" />
      
    </rdf:Seq>
  </items>

<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rdf+xml" href="http://feeds.feedburner.com/biapy-help-desk/fr" /><feedburner:info uri="biapy-help-desk/fr" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><cc:license xmlns:cc="http://web.resource.org/cc/" cc:license="http://creativecommons.org/licenses/by-sa/3.0/" /></channel>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/systeme/logiciels/configurer-les-depots-debian-contrib-et-non-free">
    <title>Configurer les dépôts Debian contrib et non-free</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/KosbYDEyReU/configurer-les-depots-debian-contrib-et-non-free</link>
    <description>L'installation par défaut de Debian propose uniquement les logiciels présents dans les dépôts "main". Pour disposer de tous les logiciels proposés par Debian, il faut activer manuellement les dépôt contrib et non-free. Cet article décrit une procédure automatisée d'activation des dépôts contrib et non-free de Debian.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Ce guide est testé sur:</p>
<ul>
<li>Debian 6.0 Squeeze</li>
</ul>
<h2>Mise en place des dépôts</h2>
<p>Installez les prérequis d'installation:</p>
<pre>command apt-get install lsb-release</pre>
<p>Récupérez le nom de la distribution:</p>
<pre>DEBIAN_VERSION="$(command lsb_release -cs)"
</pre>
<p>Détectez le miroir utilisé par l'installation actuelle:</p>
<pre>MIRROR=$(command egrep "^deb.*${DEBIAN_VERSION}" '/etc/apt/sources.list' \<br />    | command egrep -v "updates|-src|cdrom" \<br />    | cut --delimiter=" " --fields=2)</pre>
<p>Ajoutez les dépôts contrib à la configuration Apt:</p>
<pre>command echo "# Debian contrib repository.<br />deb http://ftp.fr.debian.org/debian/ ${DEBIAN_VERSION} contrib<br />deb-src http://ftp.fr.debian.org/debian/ ${DEBIAN_VERSION} contrib<br /><br />deb http://security.debian.org/ ${DEBIAN_VERSION}/updates contrib<br />deb-src http://security.debian.org/ ${DEBIAN_VERSION}/updates contrib<br /><br /># ${DEBIAN_VERSION}-updates, previously known as 'volatile'<br />deb http://ftp.fr.debian.org/debian/ ${DEBIAN_VERSION}-updates contrib<br />deb-src http://ftp.fr.debian.org/debian/ ${DEBIAN_VERSION}-updates contrib" \<br />    &gt; '/etc/apt/sources.list.d/contrib.list'</pre>
<p>Ajoutez les dépôt non-free à la configuration Apt:</p>
<pre>command echo "# Debian non-free repository.<br />deb http://ftp.fr.debian.org/debian/ ${DEBIAN_VERSION} non-free<br />deb-src http://ftp.fr.debian.org/debian/ ${DEBIAN_VERSION} non-free<br /><br />deb http://security.debian.org/ ${DEBIAN_VERSION}/updates non-free<br />deb-src http://security.debian.org/ ${DEBIAN_VERSION}/updates non-free<br /><br /># ${DEBIAN_VERSION}-updates, previously known as 'volatile'<br />deb http://ftp.fr.debian.org/debian/ ${DEBIAN_VERSION}-updates non-free<br />deb-src http://ftp.fr.debian.org/debian/ ${DEBIAN_VERSION}-updates non-free" \<br />    &gt; '/etc/apt/sources.list.d/non-free.list'</pre>
<p>Mettez à jour la liste des paquets disponibles:</p>
<pre>command apt-get update<br /></pre><img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/KosbYDEyReU" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-25T19:50:00Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/systeme/logiciels/configurer-les-depots-debian-contrib-et-non-free</feedburner:origLink></item>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/apache-2">
    <title>Apache 2</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/KHM5yvryQ_w/apache-2</link>
    <description>Guides d'installation et de configuration d'un serveur Apache 2 sur Debian</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/KHM5yvryQ_w" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-25T10:20:00Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/serveurs/apache-2</feedburner:origLink></item>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/apache-2/durcir-la-securite-dun-serveur-apache-2">
    <title>Durcir la sécurité d'un serveur Apache 2 sur Debian</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/cuzD-XH0-Ko/durcir-la-securite-dun-serveur-apache-2</link>
    <description>Apache 2 est un serveur robuste proposant de nombreuses fonctionnalités. Ce guide durcit la sécurité d'un serveur Apache 2 en appliquant des réglages basiques.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Ce guide est testé sur:</p>
<ul>
<li>Debian 6.0 Squeeze</li>
</ul>
<h2>Prérequis</h2>
<p>Ce guide nécessite l'installation d'un serveur HTTP Apache 2. Reportez-vous à l'article <a class="internal-link" href="../installer-et-configurer-apache-2-sur-debian">Installer et configurer Apache 2 sur Debian</a>.</p>
<p>Ce guide recommande la mise en place des règles de blocage de DFind décrites dans l'article <a class="internal-link" href="../../../systeme/securite/bloquer-le-scanner-de-vulnerabilites-dfind">Bloquer le scanner de vulnérabilités DFind</a>.</p>
<h2>Configuration</h2>
<h3>Durcir la configuration du serveur HTTP Apache 2</h3>
<p>Appliquez quelque règles durcissant la sécurité du serveur:</p>
<pre>command wget 'https://raw.github.com/biapy/howto.biapy.com/master/apache2/security-hardened.conf' \<br />    --quiet --no-check-certificate --output-document='/etc/apache2/conf.d/security-hardened'<br /></pre>
<p>Rechargez la configuration du serveur:</p>
<pre>/etc/init.d/apache2 reload<br /></pre>
<h3>Bloquer les attaques avec fail2ban</h3>
<p>Installez fail2ban :</p>
<pre>command apt-get install fail2ban<br /></pre>
<p>Activez les protections spécifiques à Apache :</p>
<pre>if [ ! -e '/etc/fail2ban/jail.local' ]; then<br />  command touch '/etc/fail2ban/jail.local'<br />fi<br />if [ -z "$(command grep "[apache]" '/etc/fail2ban/jail.local')" ]; then<br />  echo "[apache]<br />enabled = true<br /><br />[apache-noscript]<br />enabled = true<br /><br />[apache-overflows]<br />enabled = true<br />" &gt;&gt; '/etc/fail2ban/jail.local'<br />fi</pre>
<p>Rechargez la configuration :</p>
<pre>/etc/init.d/fail2ban restart<br /></pre>
<h3>Désactiver le dossier cgi-bin</h3>
<p>Le dossier cgi-bin est de moins en moins utilisé et peut éventuellement présenter un risque. Désactivez-le :</p>
<pre>command sed -i \<br />    -e 's|^.*ScriptAlias.*/cgi-bin/.*$|#\0|' \<br />    -e '/Directory.*cgi-bin/,/\/Directory/s/^.*/#\0/' \<br />  "/etc/apache2/sites-available/default"{,-ssl}<br /></pre>
<p>Rechargez la configuration :</p>
<pre>/etc/init.d/apache2 force-reload</pre>
<h2>Remerciements</h2>
<ul>
<li>Merci à <a class="external-link" href="http://www.alsacreations.com/">Alsacréations</a> pour <a class="external-link" href="http://www.alsacreations.com/tuto/lire/616-Apache-PHP.html">Installation d'Apache et PHP</a>.</li>
<li>Merci à <a class="external-link" href="http://www.smashingmagazine.com/">Smashing Magazine</a> pour <a class="external-link" href="http://www.smashingmagazine.com/2009/09/25/svn-strikes-back-a-serious-vulnerability-found/">SVN Server Admin Issue: Fix It !</a></li>
<li>Merci à <a class="external-link" href="http://www.lafermeduweb.net/">la Ferme du Web</a> pour <a class="external-link" href="http://www.lafermeduweb.net/billet/-htaccess-quelques-astuces-bien-pratiques-a-connaitre-981.html">.htaccess - Quelques astuces bien pratiques à connaître</a>.</li>
</ul>
<ul>
<li>Merci à <a class="external-link" href="http://www.be-root.com/">Be-Root.com</a> pour <a class="external-link" href="http://www.be-root.com/2009/11/30/proteger-apache-de-slowloris/">Protéger Apache de slowloris</a>.</li>
</ul>
<ul>
<li>Merci à <a class="external-link" href="http://www.system-linux.eu/">System-Linux.eu</a> pour <a class="external-link" href="http://www.system-linux.eu/index.php?post/2009/11/02/Attaque-Slowloris-l-essayer-et-l-empecher">Attaque Slowloris (DoS) l'essayer et l'empécher</a> et <a class="external-link" href="http://www.system-linux.eu/index.php?post/2008/12/27/ModSecurity">Compilation, Installation et Configuration de ModSecurity</a>.</li>
</ul><img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/cuzD-XH0-Ko" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-24T16:50:00Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/serveurs/apache-2/durcir-la-securite-dun-serveur-apache-2</feedburner:origLink></item>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/php/ameliorer-la-configuration-initiale-de-php-5">
    <title>Améliorer la configuration initiale de PHP 5 sur Debian</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/AKkD2Dc5b9E/ameliorer-la-configuration-initiale-de-php-5</link>
    <description>La configuration initiale de PHP5 proposée par Debian est très bien réalisée. Cet article présente quelques ajustements l'améliorant encore.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Ce guide est testé sur:</p>
<ul>
<li>Debian 6.0 Squeeze</li>
</ul>
<h2>Prérequis</h2>
<p>Ce guide nécessite une installation fonctionnelle de PHP5, par exemple, celle décrite par l'article <a class="internal-link" href="installer-php-fpm-sur-debian">Installer PHP-FPM sur Debian</a>.</p>
<h2>Configuration</h2>
<p>Durcissez la sécurité du serveur:</p>
<pre>if [ -d '/etc/php5/conf.d' ]; then<br />  echo '; Harden PHP5 security<br /><br />; Disable PHP exposure<br /><code class="mysql">expose_php = Off<br /><br /></code>;Dangerous : disable system functions. This can break some administration softwares.<br />;disable_functions = symlink,shell_exec,exec,proc_close,proc_open,popen,system,dl,passthru,escapeshellarg,escapeshellcmd<br />' &gt; '/etc/php5/conf.d/security-hardened.ini'<br />fi<br /></pre>
<p>Configurez l'UTF-8 comme codage de caractères par défaut pour l'extension mbstring (intégrée de base dans la version PHP5 fournie par Debian):</p>
<pre>if [ -d '/etc/php5/conf.d' ]; then<br />  echo '; Set mbstring defaults to UTF-8<br />mbstring.language=UTF-8<br />mbstring.internal_encoding=UTF-8<br />mbstring.http_input=UTF-8<br />mbstring.http_output=UTF-8<br />mbstring.detect_order=auto' \<br />    &gt; '/etc/php5/conf.d/mbstring.ini'<br />fi</pre>
<p>Configurez la zone horaire de PHP:</p>
<pre>echo "; PHP settings for strtotime
date.timezone = \"$(command cat /etc/timezone)\"" &gt; /etc/php5/conf.d/timezone.ini</pre>
<p>Rechargez la configuration:</p>
<pre>test -x /etc/init.d/php5-fpm &amp;&amp; /etc/init.d/php5-fpm restart<br />test -x /etc/init.d/apache2 &amp;&amp; /etc/init.d/apache2 force-reload<br />test -x /etc/init.d/lighttpd &amp;&amp; /etc/init.d/lighttpd force-reload<br />test -x /etc/init.d/nginx &amp;&amp; /etc/init.d/nginx force-reload</pre>
<h2>Remerciements</h2>
<ul>
<li>Merci à <a class="external-link" href="http://www.alsacreations.com/">Alsacréations</a> pour <a class="external-link" href="http://www.alsacreations.com/tuto/lire/616-Apache-PHP.html">Installation d'Apache et PHP</a>.</li>
</ul><img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/AKkD2Dc5b9E" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-24T16:50:00Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/serveurs/php/ameliorer-la-configuration-initiale-de-php-5</feedburner:origLink></item>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/bases-de-donnees/configurer-lanalyse-et-loptimisation-defragmentation-reguliere-des-tables-mysql">
    <title>Configurer l'analyse et l'optimisation / défragmentation régulière des tables MySQL</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/mTruqFjTl70/configurer-lanalyse-et-loptimisation-defragmentation-reguliere-des-tables-mysql</link>
    <description>Au fil des insertions et des suppressions, les performances des tables MySQL peuvent baisser. Optimiser et analyser régulièrement les tables MySQL permet de reconstruire les index et limiter l'espace disque utilisé par le serveur. Il faut toutefois être prudent, car cet pratique a quelques inconvénients. Ce guide présente la mise en place d'un outil analysant régulièrement les tables du serveur MySQL.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Ce guide est testé sur:</p>
<ul>
<li>Debian 6.0 Squeeze</li>
</ul>
<h2>Installation</h2>
<p>Téléchargez le script mysql-defragger:</p>
<pre>command wget 'https://raw.github.com/biapy/howto.biapy.com/master/mysql/mysql-defragger' \<br /> --quiet --no-check-certificate --output-document='/usr/bin/mysql-defragger'<br />command chmod +x '/usr/bin/mysql-defragger'<br /></pre>
<p>mysql-defragger permet d'effectuer des actions sélective d'optimisation des tables MySQL.</p>
<h2>Maintenance ponctuelle</h2>
<h3>Tables InnoDB</h3>
<p><b>A savoir :</b> Il est impossible de calculer la fragmentation d'une table InnoDB. La fragmentation se détecte par la baisse de performance des requêtes et des accès disques plus nombreux.</p>
<p>La maintenance des tables InnoDB doit être effectuée prudemment. L'option --optimize de mysql-defragger va recréer les tables InnoDB. Ce processus entraîne une duplication de la table, puis la suppression de l'original. Cet action défragmente effectivement la table. Les inconvénients sont les suivants:</p>
<ul>
<li>La table est verrouillée pour toute la durée du processus.</li>
<li>L'espace disque utilisé par les données de la table est doublé.</li>
</ul>
<p>N'effectuez cette action que sur les bases n'utilisant pas des tables InnoDB de taille très importante, sous peine de surcharger le système, et rendre non fonctionnelles les applications utilisant cette table.</p>
<p>Il est toutefois intéressant d'effectuer une optimisation des tables InnoDB tous les 6 mois environ, lors d'une maintenance serveur programmée. Pour optimiser les tables InnoDB de votre serveur, utilisez cette commande (<b>dangereuse !</b>):</p>
<pre>command mysql-defragger --innodb --optimize</pre>
<p>D'une manière générale, il est préférable de se contenter d'une analyze des tables InnoDB:</p>
<pre>command mysql-defragger --innodb --analyze</pre>
<h3>Tables MyISAM</h3>
<p>Les tables MyISAM fragmentent facilement avec les suppression fréquentes (requêtes DELETE). Utilisez cette commande pour défragmenter les tables MyISAM:</p>
<pre>command mysql-defragger --myisam --optimize</pre>
<h2>Maintenance régulière</h2>
<p>J'utilise les réglages suivant pour la maintenance d'un serveur MySQL. Ce sont mes réglages actuels et ils ne sont peut être pas pertinents. Ils sont toutefois fonctionnels:</p>
<ul>
<li>Analyse hebdomadaire des tables MyISAM et InnoDB.</li>
<li>Optimisation mensuelle des tables MyISAM uniquement.</li>
</ul>
<p>J'effectue manuellement l'optimisation des tables InnoDB.</p>
<p>Renseignez le mot de passe root pour MySQL:</p>
<pre>command read -s -p "Enter password: " MYSQL_PASSWORD<br /></pre>
<p>Créez le fichier .my.cnf de l'utilisateur root de MySQL dans votre compte:</p>
<pre>if [ ! -e "${HOME}/.my.cnf" ]; then<br />  echo "[client]<br />user=root<br />password=${MYSQL_PASSWORD}" \<br />    &gt; "${HOME}/.my.cnf"<br />  command chmod 400 "${HOME}/.my.cnf"<br />fi<br /></pre>
<p>Configurez cron pour lancer la maintenance régulière du serveur MySQL:</p>
<pre>echo "# /etc/cron.d/mysql-defragger: crontab fragment for mysql-defragger<br />#  Weekly run analyze on all MySQL tables (mysqlcheck is faster and do the same).<br /># 04 2    * * 7    ${USER}    [ -x /usr/bin/mysql-defragger ] &amp;&amp; /usr/bin/mysql-defragger --analyze -q -q<br />04 2    * * 7    ${USER}    [ -x /usr/bin/mysqlcheck ] &amp;&amp; /usr/bin/mysqlcheck --all-databases --analyze --silent<br />#  Monthly optimize MyISAM tables.<br />04 3    * * 7    ${USER}    [ -x /usr/bin/mysql-defragger ] &amp;&amp; /usr/bin/mysql-defragger --myisam --optimize -q -q" \<br />    &gt; '/etc/cron.d/mysql-defragger'</pre>
<p>Rechargez la configuration de cron:</p>
<pre>/etc/init.d/cron reload<br /></pre>
<h2>Références</h2>
<p>Ces livres peuvent vous aider:</p>
<ul>
<li><a href="http://www.amazon.fr/gp/product/0596101716/ref=as_li_ss_tl?ie=UTF8&tag=biaheldes-21&linkCode=as2&camp=1642&creative=19458&creativeASIN=0596101716">High Performance MySQL</a><img height="1" src="http://www.assoc-amazon.fr/e/ir?t=biaheldes-21&l=as2&o=8&a=0596101716" width="1" /></li>
<li><a href="http://www.amazon.fr/gp/product/0596807309/ref=as_li_ss_tl?ie=UTF8&tag=biaheldes-21&linkCode=as2&camp=1642&creative=19458&creativeASIN=0596807309">MySQL High Availability: Tools for Robust Data Centers </a><img height="1" src="http://www.assoc-amazon.fr/e/ir?t=biaheldes-21&l=as2&o=8&a=0596807309" width="1" /></li>
</ul>
<h2>Remerciements</h2>
<ul>
<li>Merci à <a class="external-link" href="http://www.dufault.info/blog/">Phil Dufault</a> pour le développement de <a class="external-link" href="https://github.com/pdufault/mysqlfragfinder">MySQLFragFinder</a> (<a class="external-link" href="http://www.dufault.info/blog/a-script-to-optimize-fragmented-tables-in-mysql/">A Defragmentation Script to Optimize Fragmented Tables in MySQL</a>).</li>
</ul><img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/mTruqFjTl70" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-24T10:40:00Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/serveurs/bases-de-donnees/configurer-lanalyse-et-loptimisation-defragmentation-reguliere-des-tables-mysql</feedburner:origLink></item>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/applications-web/gestion-dentreprise/installer-loutil-de-gestion-dentreprise-openerp-sur-debian">
    <title>Installer l'outil de gestion d'entreprise OpenERP sur Debian</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/7TRTFfm_K3g/installer-loutil-de-gestion-dentreprise-openerp-sur-debian</link>
    <description>OpenERP est un outil de gestion d'entreprise performant et complet. Il fonctionne sur le mode client / serveur. Le client peut être une application Web ou une application bureautique, suivant ce qui vous convient le mieux. Cet article vous propose une méthode d'installation sur Debian. </description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<h2>Compatibilité</h2>
<p>Ce guide a été testé sur :</p>
<ul>
<li>Debian 6.0 Squeeze</li>
</ul>
<p>Ce guide a été testé avec ces versions d'OpenERP:</p>
<ul>
<li>6.0.4</li>
</ul>
<h2>Pré-requis</h2>
<p>Ce guide nécessite un serveur PostgreSQL disposant du script <b>pgsql-tools</b> disponible dans le guide <a class="external-link" href="https://howto.landure.fr/gnu-linux/debian-4-0-etch/installer-loutil-de-gestion-dentreprise-openerp-sur-debian/installer-postgresql-sur-debian">Installer et configurer PostgreSQL sur Debian</a>.</p>
<p>Ce guide nécessite un serveur HTTP disposant au choix d'un des scripts suivant :</p>
<ul>
<li>Le script <b>a2tools</b> disponible dans mon guide <a class="external-link" href="https://howto.landure.fr/gnu-linux/debian-4-0-etch/installer-loutil-de-gestion-dentreprise-openerp-sur-debian/installer-loutil-de-gestion-de-relation-client-sugarcrm-sur-debian/installer-et-configurer-apache-2-sur-debian-4-0-etch">Installer Apache 2 sur Debian</a>.</li>
</ul>
<h2>Paramètres</h2>
<p>Renseignez le nom d'instance de votre serveur OpenERP (choisissez un nouveau nom pour chaque nouvelle installation) :</p>
<pre>INSTANCE_NAME="<b>main</b>"
</pre>
<p>Renseignez le nom d'hôte de votre serveur PostgreSQL (si vous ne savez pas de quoi il s'agit, ne modifiez pas cette valeur) :</p>
<pre>PGSQL_HOST="<b>localhost</b>"</pre>
<p>Si votre serveur PostgreSQL n'est pas local, ce guide effectuera une connexion SSH pour y créer la base de données.</p>
<h2>Installation du serveur</h2>
<p>Installez les dépendances d'installation :</p>
<pre>command apt-get install python-psycopg2 python-reportlab \
    python-reportlab-accel python-pychart python-pydot python-lxml \
    python-tz python-pyparsing graphviz python-imaging python-setuptools \<br />    python-yaml apg</pre>
<p>Récupérez l'URL de la dernière version stable :</p>
<pre>SOURCE_URL=$(command wget --quiet --output-document=- 'http://www.openerp.com/downloads' \
    | command grep --max-count=1 '/stable/source/openerp-server-.*.tar.gz' \
    | command sed -e 's/^.*href="\([^"]*\)".*href.*href.*$/\1/g')
</pre>
<p>Obtenez le numéro de version à partir de l'URL :</p>
<pre>VERSION=$(command echo "${SOURCE_URL}" | command sed -e 's/.*openerp-server-\(.*\)\.tar\.gz/\1/g')
</pre>
<p>Téléchargez les sources de l'application :</p>
<pre>command wget --output-document="/tmp/openerp-server-${VERSION}.tar.gz" "${SOURCE_URL}"
</pre>
<p>Décompressez les sources :</p>
<pre>command tar --directory="/tmp" -xzf "/tmp/openerp-server-${VERSION}.tar.gz"
</pre>
<p>Placez-vous dans le dossier des sources :</p>
<pre>command pushd "/tmp/openerp-server-${VERSION}/"</pre>
<p>Compilez le serveur :</p>
<pre>command python setup.py build
</pre>
<p>Installez le serveur :</p>
<pre>command python setup.py install
</pre>
<p>Quittez le dossier des sources:</p>
<pre>command popd<br /></pre>
<p>Supprimez les fichiers téléchargés:</p>
<pre>command rm -r "/tmp/openerp-server-${VERSION}/"<br />command rm "/tmp/openerp-server-${VERSION}.tar.gz"</pre>
<p>Créez l'utilisateur destiné à exécuter le serveur :</p>
<pre>command mkdir --parent "/var/log/openerp"
command adduser --system --shell /bin/sh \
    --group --home "/var/log/openerp/server" \
    openerp-server</pre>
<p>Créez le dossier destiné à contenir les fichiers de log et le dossier de la configuration:</p>
<pre>command mkdir --parent "/etc/openerp/${INSTANCE_NAME}"<br />command mkdir --parent "/var/log/openerp/server"
command chown -R openerp-server:openerp-server "/var/log/openerp/server"
</pre>
<h3>Configuration du serveur</h3>
<p>Créez l'utilisateur privilégié :</p>
<pre>if [ "${PGSQL_HOST}" = "localhost" ]; then
  PGSQL_PARAMS=$(command pgsql-tools create-privileged-user "openerp_${INSTANCE_NAME}")
else
  PGSQL_PARAMS=$(command ssh "root@${PGSQL_HOST}" "command pgsql-tools create-privileged-user 'openerp_${INSTANCE_NAME}' '$(command hostname --fqdn)'")
fi</pre>
<p>Récupérez les paramètres de la nouvelle base de données :</p>
<pre>PGSQL_USER="$(echo "${PGSQL_PARAMS}" | command grep -e "^PGSQL_USER" \
    | command cut --delimiter="=" --fields="2-")"
PGSQL_PASSWORD="$(echo "${PGSQL_PARAMS}" | command grep -e "^PGSQL_PASSWORD" \
    | command cut --delimiter="=" --fields="2-")"
echo "${PGSQL_PARAMS}"
</pre>
<p>Téléchargez le fichier init.d d'OpenERP :</p>
<pre>command wget "https://raw.github.com/biapy/howto.biapy.com/master/openerp/openerp-server.init-d" \
    --quiet --no-check-certificate --output-document="/etc/init.d/openerp-server-${INSTANCE_NAME}"
command sed -i \
    -e "s|server.cfg|${INSTANCE_NAME}/server.cfg|g" \
  "/etc/init.d/openerp-server-${INSTANCE_NAME}"
command chmod +x "/etc/init.d/openerp-server-${INSTANCE_NAME}"
</pre>
<p>Téléchargez le modèle de configuration d'OpenERP :</p>
<pre>command wget "https://raw.github.com/biapy/howto.biapy.com/master/openerp/server.cfg" \
    --quiet --no-check-certificate --output-document="/etc/openerp/${INSTANCE_NAME}/server.cfg"</pre>
<p>Détectez le dernier port utilisé :</p>
<pre>OPENERP_PORT="$(command grep "^[#\t ]*port" /etc/openerp/*/server.cfg \
     | command cut --delimiter="=" --fields="2-" \
     | command sort \
     | command tail -n 1)"
if [ -n "${OPENERP_PORT}" ]; then
  OPENERP_PORT=$((${OPENERP_PORT} + 3))
else
  OPENERP_PORT="8069"
fi
</pre>
<p>Insérez les paramètres de base de données dans le fichier de configuration :</p>
<pre>command sed -i \
    -e "s|^[#\t ]*logfile =.*\$|logfile = /var/log/openerp/server/${INSTANCE_NAME}.log|" \
    -e "s|^[#\t ]*port =.*\$|port = ${OPENERP_PORT}|" \
    -e "s|^[#\t ]*db_user =.*\$|db_user = ${PGSQL_USER}|" \
    -e "s|^[#\t ]*db_password =.*\$|db_password = ${PGSQL_PASSWORD}|" \
    -e "s|^[#\t ]*db_host =.*\$|db_host = ${PGSQL_HOST}|" \<br />    -e "s|^[#\t ]* =.*\$|db_host = ${PGSQL_HOST}|" \<br /> "/etc/openerp/${INSTANCE_NAME}/server.cfg"
</pre>
<p>Créez un mot de passe "Master" pour le serveur:</p>
<pre>MASTER_PASSWORD="$(command apg -q -a 0 -n 1 -m 16 -x 24 -M NCL)"</pre>
<p>Ajoutez le mot de passe "Master" au fichier de configuration:</p>
<pre>command echo "admin_passwd = ${MASTER_PASSWORD}" &gt;&gt; "/etc/openerp/${INSTANCE_NAME}/server.cfg"<br /></pre>
<p>Autorisez le serveur à modifier le fichier de configuration de façon à ce que le changement du mot de passe Master par l'interface Web soit fonctionnel:</p>
<pre>command chown openerp-server "/etc/openerp/${INSTANCE_NAME}/server.cfg"<br /></pre>
<p>Faites en sorte que le serveur démarre automatiquement au démarrage :</p>
<pre>command update-rc.d openerp-server-${INSTANCE_NAME} defaults</pre>
<p>Démarrez le serveur OpenERP :</p>
<pre>/etc/init.d/openerp-server-${INSTANCE_NAME} start
</pre>
<p>Affichez le mot de passe maître <b>et notez le précieusement:</b></p>
<pre>command echo "Le mot de passe maître est: '${MASTER_PASSWORD}'"<br /></pre>
<h2>Installation du client Web</h2>
<p>Installez les dépendances d'installation :</p>
<pre>command apt-get install python-cherrypy3 python-mako python-pybabel \
    python-formencode python-simplejson python-pyparsing python \
    python-dev build-essential python-setuptools</pre>
<p>Récupérez l'URL de la dernière version stable :</p>
<pre>SOURCE_URL=$(command wget --quiet --output-document=- 'http://www.openerp.com/downloads' \
    | command grep --max-count=1 '/stable/source/openerp-web-.*.tar.gz' \
    | command sed -e 's/^.*href.*href.*href="\([^"]*\)".*$/\1/g')
</pre>
<p>Obtenez le numéro de version à partir de l'URL :</p>
<pre>VERSION=$(command echo "${SOURCE_URL}" | command sed -e 's/.*openerp-web-\(.*\)\.tar\.gz/\1/g')
</pre>
<p>Téléchargez les sources de l'application :</p>
<pre>command wget --output-document="/tmp/openerp-web-${VERSION}.tar.gz" "${SOURCE_URL}"
</pre>
<p>Décompressez les sources :</p>
<pre>command tar --directory="/tmp" -xzf "/tmp/openerp-web-${VERSION}.tar.gz"
</pre>
<p>Placez-vous dans le dossier des sources :</p>
<pre>command pushd "/tmp/openerp-web-${VERSION}/"</pre>
<p>Compilez le client Web :</p>
<pre>command python setup.py build
</pre>
<p>Installez le client Web :</p>
<pre>command python setup.py install
</pre>
<p>Quittez le dossier des sources:</p>
<pre>command popd<br /></pre>
<p>Supprimez les fichiers téléchargés:</p>
<pre>command rm -r "/tmp/openerp-web-${VERSION}/"<br />command rm "/tmp/openerp-web-${VERSION}.tar.gz"</pre>
<p>Créez l'utilisateur destiné à exécuter le client :</p>
<pre>command mkdir --parent "/var/log/openerp"
command adduser --system --shell /bin/sh \
    --group --home "/var/log/openerp/web" \
    --no-create-home openerp-web
</pre>
<p>Créez le dossier destiné à contenir les fichiers de log :</p>
<pre>command mkdir --parent "/var/log/openerp/web"
command chown -R openerp-web:openerp-web "/var/log/openerp/web"</pre>
<p>Autorisez la modification du dossier addons par le client Web:</p>
<pre>INSTALL_PATH="$(command find "/usr/local/lib" -name "openerp_web-${VERSION}*.egg")"<br />command chown -R openerp-web:openerp-web "${INSTALL_PATH}/addons"<br /></pre>
<h3>Configuration du client Web</h3>
<p>Installez le fichier init.d du client Web :</p>
<pre>command wget "https://raw.github.com/biapy/howto.biapy.com/master/openerp/openerp-web.init-d" \
    --quiet --no-check-certificate --output-document="/etc/init.d/openerp-web-${INSTANCE_NAME}"
command sed -i \
    -e "s|web.cfg|${INSTANCE_NAME}/web.cfg|g" \
  "/etc/init.d/openerp-web-${INSTANCE_NAME}"
command chmod +x "/etc/init.d/openerp-web-${INSTANCE_NAME}"
</pre>
<p>Installez le modèle de configuration du client Web:</p>
<pre>command find /usr/local/lib/ -name "openerp-web.cfg" \
    | command sort | command tail -n 1 \
    | command xargs -IFILE cp FILE "/etc/openerp/${INSTANCE_NAME}/web.cfg"
</pre>
<p>Modifiez le port pour l'adapter à l'instance serveur que vous avez  installer en suivant les instructions de la section précédente et  activez les fichiers journaux :</p>
<pre>command sed -i \
    -e 's|^server.environment = .*$|server.environment = "production"|g' \
    -e "s|^port = .*\$|port = $((${OPENERP_PORT} + 2))|g" \
    -e 's|server.socket_host = .*$|server.socket_host = "127.0.0.1"|g' \
    -e "s|.*tools.proxy.on = .*\$|tools.proxy.on = True|g" \
    -e "s|.*dblist.filter = .*\$|dblist.filter = 'EXACT'|g" \<br />    -e "s|.*log.access_file = .*\$|log.access_file = \"/var/log/openerp/web/${INSTANCE_NAME}-access.log\"|g" \
    -e "s|.*log.error_file = .*\$|log.error_file = \"/var/log/openerp/web/${INSTANCE_NAME}-error.log\"|g" \
  "/etc/openerp/${INSTANCE_NAME}/web.cfg"
</pre>
<p>Faites en sorte que le serveur démarre automatiquement au démarrage :</p>
<pre>command update-rc.d openerp-web-${INSTANCE_NAME} defaults</pre>
<p>Démarrez le serveur Web OpenERP :</p>
<pre>/etc/init.d/openerp-web-${INSTANCE_NAME} start</pre>
<h3>Mise en place d'un OpenERP sur un domaine</h3>
<p>Renseignez le nom de domaine ou sera disponible l'application :</p>
<pre>DOMAIN="<b>erp.domaine-exemple.fr</b>"</pre>
<p>Créez la configuration Apache 2 correspondante :</p>
<pre>command a2tools --template reverse-proxy "${DOMAIN}" "http://localhost:8080/"
</pre>
<h2>Sauvegardes</h2>
<p>L'ensemble des données d'OpenERP est sont contenues dans la base de données. La procédure pour sauvegarder un serveur PostgreSQL est  disponible dans l'article <a class="internal-link" href="../../../serveurs/bases-de-donnees/installer-postgresql-sur-debian">Installer PostgreSQL<span class="generated internal-link"> sur Debian</span></a>.</p>
<h2>Administration</h2>
<p>Pour administrer le serveur OpenERP, cliquez sur le bouton  "Bases de données" sur la page d'identification de l'interface Web.</p>
<p>Vous aurez alors la possibilité d'ajouter une  nouvelle base pour une entreprise. Le mot de passe demandé est le mot de passe "Maître" configuré lors de l'installation du serveur.</p>
<h3>Ajout d'une base de données</h3>
<p>Par défault, le client Web OpenERP filtre les bases de données selon le sous-domaine utilisé pour accéder à l'interface Web.</p>
<p>Par exemple, si vous accédez à OpenERP via l'URL "https://<b>gestion</b>.biapy.fr/", la base de données doit obligatoirement se nommer "<b>gestion</b>" pour qu'elle apparaisse dans le formulaire d'identification de l'interface Web.</p>
<p><b>Remarque:</b> ce comportement peut être modifié à l'aide de l'option "dblist.filter" du fichier de configuration de l'interface Web.</p>
<p>Les noms de base de données ne peuvent contenir de caractères spéciaux tels que "." ou "-". L'underscore "_" est toutefois autorisé.</p>
<p>Lors de la création d'une nouvelle base de données, ne cochez pas plus de 2 modules initiaux sous peine de rencontrer des erreurs de timeout. Vous pouvez ajouter des modules supplémentaires par la suite.</p>
<h2>Utilisation</h2>
<p>Lisez le livre <a class="external-link" href="http://fr.scribd.com/doc/91184888/open-erp-pour-une-gestion-d-entreprise-efficace-et-integree">OpenERP, pour une gestion d'entreprise efficace et intégrée</a> pour plus d'informations sur l'utilisation d'OpenERP (<a class="internal-link" href="91184888openerppourunegestiondentrepriseefficaceetintegree.pdf">télécharger la version PDF</a>).</p>
<h2>Remerciements</h2>
<ul>
<li>Merci aux développeurs de <a class="external-link" href="http://www.openerp.com/">OpenERP</a>.</li>
<li>Merci à <a class="external-link" href="https://github.com/biapy/">GitHub</a> pour l'hébergement des <a class="external-link" href="https://github.com/biapy/howto.biapy.com/tree/master/openerp">scripts init.d d'OpenERP</a>.</li>
</ul><img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/7TRTFfm_K3g" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-21T12:20:00Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/applications-web/gestion-dentreprise/installer-loutil-de-gestion-dentreprise-openerp-sur-debian</feedburner:origLink></item>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/applications-web/supervision/installer-un-noeud-munin-sur-debian">
    <title>Installer un nœud Munin sur Debian</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/IKeF42NllBc/installer-un-noeud-munin-sur-debian</link>
    <description>Munin est un outil générant des graphiques d'utilisation des ressources système et réseau au fil du temps. Il est utile pour surveiller la charge globale d'un serveur en fonction des heures de la journées, et des jours du mois. Un nœud Munin est un logiciel fournissant des données statistiques à Munin. Il doit être installé sur la machine cliente pour qu'elle puisse être interrogée par le serveur Munin. Ce guide vous aide à mettre en place un nœud Munin sur Debian.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Ce guide est testé sur:</p>
<ul>
<li>Debian 6.0 Squeeze</li>
</ul>
<h2>Pré-requis</h2>
<p>Ce guide nécessite la présence d'un serveur Munin sur le réseau. Référez-vous au guide <a class="internal-link" href="installer-loutil-de-surveillance-systeme-et-reseau-munin-sur-debian">Installer un serveur Munin sur Debian</a>.</p>
<h2>Installation</h2>
<p>Identifiez-vous sur l'hôte à surveiller avec Munin.</p>
<p>Renseignez l'adresse IP du serveur Munin:</p>
<pre>MUNIN_IP="<b>127.0.0.1</b>"<br /></pre>
<p>Installez le nœud de supervision:</p>
<pre>command apt-get install munin-node</pre>
<p>Autorisez le serveur Munin à accéder au nœud:</p>
<pre>if [ "${MUNIN_IP}" != "127.0.0.1" ]; then<br />  command echo "<br /># Allow access from ${MUNIN_IP}<br />allow ^$(command echo "${MUNIN_IP}" | command sed -e 's/\./\\./g')\$" \<br />    &gt;&gt; '/etc/munin/munin-node.conf'<br />fi<br /></pre>
<p>Augmentez le timeout du nœud pour limiter les erreurs lorsque la charge serveur est haute:</p>
<pre>echo "# raise node timeout<br />timeout 120" \<br />    &gt;&gt; '/etc/munin/munin-node.conf'<br /></pre>
<p>Rechargez la configuration du nœud:</p>
<pre>/etc/init.d/munin-node restart</pre>
<p>Désactivez le plugin iostat s'il ne détecte aucune valeur (dans une machine virtuelle Xen par exemple):</p>
<pre>if [ -e '/etc/munin/plugins/iostat' -a -z "$(command munin-run iostat)" ]; then<br />  command rm '/etc/munin/plugins/iostat'<br />  /etc/init.d/munin-node restart<br />fi<br /></pre>
<p>Détectez le nom de l'hôte:</p>
<pre>FQDN_HOST="$(command hostname --fqdn)"</pre>
<p>Détectez l'adresse IP de l'hôte local:</p>
<pre>NET_DEV="<b>eth0</b>"<br />NET_IP=$(command ifconfig ${NET_DEV}<b> \<br /></b>    | command grep "inet " \<br />    | command sed -e 's/^.*inet [^:]*:\([^ ]*\) .*$/\1/')</pre>
<p>Configurez Munin pour surveiller l'hôte et rechargez la configuration  (le mot de passe demandé est celui du compte root du serveur Munin):</p>
<pre>if [ "${MUNIN_IP}" != "127.0.0.1" ]; then<br />  ssh root@${MUNIN_IP} "echo \"[${FQDN_HOST}]<br />  address ${NET_IP}<br />  use_node_name yes<br />\" &gt; '/etc/munin/munin-conf.d/${FQDN_HOST}.conf';<br />/etc/init.d/munin-node restart"<br />else<br />  echo "[${FQDN_HOST}]<br />  address 127.0.0.1<br />  use_node_name yes" &gt; "/etc/munin/munin-conf.d/${FQDN_HOST}.conf"<br />/etc/init.d/munin-node restart<br />fi<br /></pre>
<h2>Configuration des plugins</h2>
<h3>Configuration automatique</h3>
<p>La commande suivante auto-détecte quels sont les plugins disponibles pour l'hôte, et indique comment les installer:</p>
<pre>command munin-node-configure --shell --suggest<br /></pre>
<p>Attention, seul les plugins présents dans les paquets Debian sont  installés. Des plugins supplémentaires sont disponibles sur Internet.</p>
<h3>Supervision d'Apache 2</h3>
<p>Si un serveur Apache 2 est présent sur l'hôte, configurez la supervision par Munin.</p>
<p>Installez les bibliothèques Perl nécessaire au plugin:</p>
<pre>if [ -x '/etc/init.d/apache2' ]; then<br />  command apt-get install libwww-perl liblwp-useragent-determined-perl<br />fi</pre>
<p>Activez les modules status et info du serveur, et recharger la configuration:</p>
<pre>if [ -x '/etc/init.d/apache2' ]; then<br />  command a2enmod status<br />  /etc/init.d/apache2 force-reload<br />fi</pre>
<p>Assurez-vous que l'accès au statuts du serveur HTTP est possible:</p>
<pre>if [ -x '/etc/init.d/apache2' -a ! -e '/etc/apache2/sites-enabled/000-default' ]; then<br />  command ln -s '../sites-available/default' '/etc/apache2/sites-enabled/000-default'<br />  /etc/init.d/apache2 reload<br />fi<br /></pre>
<p>Activez les modules nécessaires:</p>
<pre>if [ -x '/etc/init.d/apache2' ]; then<br />  command ln -s '/usr/share/munin/plugins/apache_accesses' '/etc/munin/plugins'<br />  command ln -s '/usr/share/munin/plugins/apache_processes' '/etc/munin/plugins'<br />  command ln -s '/usr/share/munin/plugins/apache_volume' '/etc/munin/plugins'<br />fi</pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/munin-node restart<br /></pre>
<h3>Supervision de PHP APC</h3>
<p>Si PHP APC est présent sur l'hôte, configurez la surveillance par Munin:</p>
<p>Installez le plugin:</p>
<pre>if [ -e '/etc/php5/conf.d/apc.ini' ]; then<br />  command wget '<code class="plain bash">http:</code><code class="plain bash">//munin-php-apc</code><code class="plain bash">.googlecode.com</code><code class="plain bash">/svn/trunk/php_apc/php_apc_</code>' \<br />      --quiet --output-document='/usr/share/munin/plugins/php_apc_'<br />  command chmod +x '/usr/share/munin/plugins/php_apc_'<br />  for MODE in usage hit_miss purge fragmentation files rates; do<br />    command ln -s "/usr/share/munin/plugins/php_apc_" "/etc/munin/plugins/php_apc_${MODE}"<br />  done<br />fi</pre>
<p>Téléchargez le script PHP d'affichage des informations APC:</p>
<pre>if [ -e '/etc/php5/conf.d/apc.ini' ]; then<br />  command wget 'http://munin-php-apc.googlecode.com/svn/trunk/php_apc/apc_info.php' \<br />    --output-document='/var/lib/munin/apc_info.php'<br />fi<br /></pre>
<p>Configurez la page de statut dans Apache 2:</p>
<pre>if [ -e '/etc/php5/conf.d/apc.ini' -a -d '/etc/apache2/conf.d' ]; then<br />  echo "<br />Alias /apc-info /var/lib/munin/apc_info.php<br />&lt;Location /apc-info&gt;<br />    Order deny,allow<br />    Deny from all<br />    Allow from 127.0.0.1 ::1<br />&lt;/Location&gt;" \<br />    &gt; '/etc/apache2/conf.d/apc-info'<br />fi<br /></pre>
<p>Rechargez la configuration d'Apache 2:</p>
<pre>if [ -e '/etc/apache2/conf.d/apc-info' ]; then<br />  /etc/init.d/apache2 reload<br />fi<br /></pre>
<p>Configurez le plugin:</p>
<pre>echo "[php_apc_*]<br />user root<br />env.url http://localhost/apc-info?auto" \<br />    &gt; '/etc/munin/plugin-conf.d/php_apc_'<br /></pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision de PHP FPM</h3>
<p>Si le serveur utilise PHP FPM dont l'installation est décrite par <a class="internal-link" href="../../serveurs/php/installer-php-fpm-sur-debian">Installer PHP-FPM sur Debian</a> (notamment l'ajout de /php-fpm-status), configurez la supervision par Munin:</p>
<p>Installez les plugin:</p>
<pre>if [ -e '/etc/init.d/php5-fpm' ]; then<br />  for MODE in average connections memory processes status; do<br />    command wget "https://raw.github.com/tjstein/php5-fpm-munin-plugins/master/phpfpm_${MODE}" \<br />        --no-check-certificate --quiet --output-document="/etc/munin/plugins/phpfpm_${MODE}"<br />    chmod +x "/etc/munin/plugins/phpfpm_${MODE}"<br />  done<br />fi</pre>
<p>Configurez les plugins:</p>
<pre>echo "[phpfpm_*]<br />user root<br />env.url http://localhost/php-fpm-status<br />env.phpbin php-fpm" \<br />    &gt; '/etc/munin/plugin-conf.d/phpfpm_'</pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision de Phusion Passenger</h3>
<p>Si le serveur utilise le <a class="internal-link" href="../../serveurs/http/installer-le-module-passenger-pour-apache-2-sur-debian">module Phusion Passenger d'Apache 2</a>, configurez la supervision par Munin.</p>
<p>Installez les logiciels nécessaires:</p>
<pre>if [ -x '/usr/bin/passenger-status' ]; then<br />  command apt-get install sudo<br />fi</pre>
<p>Installez les plugin:</p>
<pre>if [ -x '/usr/bin/passenger-status' ]; then<br />  command wget "https://raw.github.com/munin-monitoring/contrib/master/plugins/passenger/passenger_status" \<br />      --no-check-certificate --quiet --output-document="/etc/munin/plugins/passenger_status"<br />  chmod +x "/etc/munin/plugins/passenger_status"<br />fi</pre>
<p>Configurez les plugins:</p>
<pre>echo "[passenger_status]<br />user root" \<br />    &gt; '/etc/munin/plugin-conf.d/passenger_status'</pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision de fail2ban</h3>
<p>Si fail2ban est présent sur l'hôte, configurez la supervision par Munin:</p>
<pre>if [ -x '/etc/init.d/fail2ban' ]; then<br />  command cp '/usr/share/munin/plugins/fail2ban' '/etc/munin/plugins'<br />fi</pre>
<p>Corrigez le script pour que les noms de valeur graphées par Munin ne  contiennent pas de "-" (le "-" déclenche la non détection des valeurs  fournies par le plugins):</p>
<pre>if [ -e '/etc/munin/plugins/fail2ban' ]; then<br />  command sed -i -e 's|$jail|${jail//[^0-9A-Za-z]/_}|' '/etc/munin/plugins/fail2ban'<br />fi<br /></pre>
<p>Configurez le plugin fail2ban:</p>
<pre>echo "[fail2ban]<br />user root" \<br />    &gt; '/etc/munin/plugin-conf.d/fail2ban'</pre>
<p>Rechargez la configuration de Munin:</p>
<pre>/etc/init.d/munin-node restart</pre>
<div id="_mcePaste"></div>
<h3>Supervision de MySQL</h3>
<p>Si un <a class="internal-link" href="../../serveurs/bases-de-donnees/installer-et-configurer-mysql-sur-debian">serveur MySQL</a> est présent sur l'hôte, configurez la supervision par Munin.</p>
<p>Installez les logiciels nécessaires:</p>
<pre>if [ -x '/etc/init.d/mysql' ]; then<br />  command apt-get install libcache-cache-perl libipc-sharelite-perl<br />fi<br /></pre>
<p>Activez les plugins nécessaires:</p>
<pre>if [ -x '/etc/init.d/mysql' ]; then<br />  for MODE in $(/usr/share/munin/plugins/mysql_ suggest); do<br />    command ln -s '/usr/share/munin/plugins/mysql_' "/etc/munin/plugins/mysql_${MODE}"<br />  done<br />fi</pre>
<p>Si votre serveur MySQL n'utilise pas la réplication, supprimez le plugin concerné:</p>
<pre>test -e 'etc/munin/plugins/mysql_replication' &amp;&amp; rm '/etc/munin/plugins/mysql_replication'<br /></pre>
<p>Rechargez la configuration de Munin:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision de PostgreSQL</h3>
<p>Si un <a class="internal-link" href="../../serveurs/bases-de-donnees/installer-postgresql-sur-debian">serveur PostgreSQL</a> est présent sur l'hôte, configurez la supervision par Munin:</p>
<p>Installez les logiciels nécessaires:</p>
<pre>if [ -x '/etc/init.d/postgresql' ]; then<br />  command apt-get install libdbd-pg-perl<br />fi</pre>
<p>Activez les plugins nécessaires:</p>
<pre>if [ -x '/etc/init.d/postgresql' ]; then<br />  for PLUGIN in $(command find '/usr/share/munin/plugins' -type f -name 'postgres_*' | command grep -v '_$'); do<br />    command ln -s "${PLUGIN}" "/etc/munin/plugins/$(command basename ${PLUGIN})"<br />  done<br />  for PLUGIN in $(command find '/usr/share/munin/plugins' -type f -name 'postgres_*' | command grep '_$'); do<br />    command ln -s "${PLUGIN}" "/etc/munin/plugins/$(command basename ${PLUGIN}ALL)"<br />  done<br />fi<br /></pre>
<p>Configurez les plugins:</p>
<pre>echo "[postgres_*]<br />user postgres" \<br />    &gt; '/etc/munin/plugin-conf.d/postgres_'</pre>
<p>Rechargez la configuration de Munin:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision de Memcached</h3>
<p>Si <a class="internal-link" href="../../serveurs/bases-de-donnees/installer-memcached-sur-debian">Memcached</a> est installé sur l'hôte, installez le plugin:</p>
<pre>if [ -x '/etc/init.d/memcached' ]; then<br />  command wget 'https://raw.github.com/munin-monitoring/contrib/master/plugins/memcached/memcached_multi_' \<br />      --no-check-certificate --quiet --output-document='/usr/share/munin/plugins/memcached_multi_'<br />  command chmod +x '/usr/share/munin/plugins/memcached_multi_'<br />fi</pre>
<p>Activez le plugin:</p>
<pre>if [ -x '/etc/init.d/memcached' ]; then<br />  for MODE in bytes commands conns evictions items memory; do<br />    command ln -s '/usr/share/munin/plugins/memcached_multi_' "/etc/munin/plugins/memcached_multi_${MODE}"<br />  done<br />fi</pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision de Bind 9</h3>
<p>Si un <a class="internal-link" href="../../serveurs/autres/configurer-un-serveur-dns-bind-sur-debian">serveur Bind 9</a> est présent sur l'hôte, configurez la supervision par Munin.</p>
<p>Assurez-vous que le <b>fichier query.log est présen</b>t. Sa configuration est décrite dans la section <b>Journaux</b> du guide <a class="internal-link" href="../../serveurs/autres/configurer-un-serveur-dns-bind-sur-debian">Configurer un serveur DNS Bind sur Debian</a>.</p>
<p>Activez les plugins de Munin:</p>
<pre>if [ -x '/etc/init.d/bind9' ]; then<br />  command ln -s '/usr/share/munin/plugins/bind9' '/etc/munin/plugins'<br />  command ln -s '/usr/share/munin/plugins/bind9_rndc' '/etc/munin/plugins'<br />fi</pre>
<p>Configurez le plugin bind9:</p>
<pre>echo "[bind9]<br />user root<br />env.logfile /var/log/named/query.log" \<br />    &gt; '/etc/munin/plugin-conf.d/bind9'<br /></pre>
<p>Créez le fichier d'état du plugin:</p>
<pre>command touch "/var/lib/munin/plugin-state/bind9.state"<br />command chown nobody:munin "/var/lib/munin/plugin-state/bind9.state"<br /></pre>
<p>Configurez le plugin bind9_rndc:</p>
<pre>echo "[bind9_rndc]<br />user root<br />env.querystats /var/cache/bind/named.stats" \<br />    &gt; '/etc/munin/plugin-conf.d/bind9_rndc'</pre>
<p>Initialisez le fichier de statistiques:</p>
<pre>command rndc stats<br /></pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision de Cyrus</h3>
<p>Si un <a class="internal-link" href="../../serveurs/e-mails/installer-le-serveur-imap-cyrus-sur-debian">serveur IMAP Cyrus</a> est présent sur l'hôte, configurez la supervision par Munin.</p>
<p>Installez le plugin:</p>
<pre>command wget "https://trac.bawue.org/munin/browser/cyrus-imapd?format=txt" \<br />    --quiet --output-document="/etc/munin/plugins/cyrus-imapd"<br />command chmod +x "/etc/munin/plugins/cyrus-imapd"</pre>
<p>Configurez le plugin:</p>
<pre>echo "[cyrus-imapd]<br />user root" \<br />    &gt; '/etc/munin/plugin-conf.d/cyrus-imapd'</pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision d'Amavis</h3>
<p>Si Amavis est présent sur l'hôte, installez les logiciels nécessaires:</p>
<pre>if [ -x '/etc/init.d/amavis' ]; then<br />  command apt-get install logtail<br />fi</pre>
<p>Activez le plugin:</p>
<pre>if [ -x '/etc/init.d/amavis' ]; then<br />  command ln -s '/usr/share/munin/plugins/amavis' '/etc/munin/plugins'<br />fi</pre>
<p>Configurez le plugin:</p>
<pre>command sed -i -e 's/mail\.info/mail.log/' '/etc/munin/plugin-conf.d/munin-node'<br /></pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision de vsFTPd</h3>
<p>Si <a class="internal-link" href="../../serveurs/autres/installer-le-serveur-ftp-vsftpd-sur-debian">vsFTPd</a> est présent sur l'hôte, installez les logiciels nécessaires:</p>
<pre>if [ -x '/etc/init.d/vsftpd' ]; then<br />  command apt-get install logtail<br />fi</pre>
<p>Installez le plugin:</p>
<pre>if [ -x '/etc/init.d/vsftpd' ]; then<br />  command wget 'https://raw.github.com/munin-monitoring/contrib/master/plugins/ftp/vsftpd-rel' \<br />      --no-check-certificate --quiet --output-document='/etc/munin/plugins/vsftpd-rel'<br />  command chmod +x '/etc/munin/plugins/vsftpd-rel'<br />fi</pre>
<p>Configurez le plugin:</p>
<pre>echo "[vsftpd-rel]<br />user root" \<br />    &gt; '/etc/munin/plugin-conf.d/vsftpd-rel'</pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision du cache Varnish</h3>
<p>Si un <a class="internal-link" href="../../serveurs/http/installer-et-configurer-le-cache-varnish-sur-debian">serveur de cache Varnish</a> est présent sur l'hôte, configurez la supervision:</p>
<p>Activez les plugins nécessaires:</p>
<pre>if [ -x '/etc/init.d/varnish' ]; then<br />  for MODE in $(/usr/share/munin/plugins/varnish_ suggest); do<br />    test -e "/etc/munin/plugins/varnish_${MODE}" || command ln -s '/usr/share/munin/plugins/varnish_' "/etc/munin/plugins/varnish_${MODE}"<br />  done<br />fi</pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision de rTorrent</h3>
<p>Si <a class="internal-link" href="../../systeme/logiciels/installer-la-derniere-version-de-rtorrent-sur-debian">rTorrent</a> est présent sur l'hôte, installez les logiciels nécessaires:</p>
<pre>if [ -x '/etc/init.d/vsftpd' ]; then<br />  command apt-get install logtail<br />fi</pre>
<p>Installez les plugins:</p>
<pre>if [ -x '/etc/init.d/rtorrent' ]; then<br />  for MODE in mem peers spdd vol; do<br />    command wget "https://raw.github.com/munin-monitoring/contrib/master/plugins/rtorrent/rtom_${MODE}" \<br />      --output-document="/etc/munin/plugins/rtom_${MODE}"<br />    command chmod +x "/etc/munin/plugins/rtom_${MODE}"<br />  done<br />fi</pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision de OpenVPN</h3>
<p>Si <a class="internal-link" href="../../serveurs/autres/installer-et-configurer-openvpn-sur-debian">OpenVPN</a> est présent sur l'hôte, installez le plugin:</p>
<pre>if [ -x '/etc/init.d/openvpn' ]; then<br />  command wget 'https://raw.github.com/biapy/munin-openvpn/master/openvpn_usercount' \<br />      --no-check-certificate --quiet --output-document='/usr/share/munin/plugins/openvpn_usercount'<br />  command chmod +x '/usr/share/munin/plugins/openvpn_usercount'<br />  command wget 'https://raw.github.com/biapy/munin-openvpn/master/openvpn_usertransfer' \<br />      --no-check-certificate --quiet --output-document='/usr/share/munin/plugins/openvpn_usertransfer'<br />  command chmod +x '/usr/share/munin/plugins/openvpn_usertransfer'<br />fi<br /></pre>
<p>Activez le plugin pour vos réseaux VPN, et configurez le (script valide pour les installations réalisées avec le guide <a class="internal-link" href="../../serveurs/autres/installer-et-configurer-openvpn-sur-debian">Installer et configurer OpenVPN sur Debian</a>):</p>
<pre>command find '/var/log/openvpn' -mindepth 1 -type d | while read LINE; do<br />  for MODE in usertransfer usercount; do<br />    NETWORK_NAME="$(command basename "${LINE}")"<br />    command ln -s "/usr/share/munin/plugins/openvpn_${MODE}" "/etc/munin/plugins/openvpn_${MODE}_${NETWORK_NAME}"<br />    echo "[openvpn_${MODE}_${NETWORK_NAME}]<br />user root<br />env.statusfile /var/log/openvpn/${NETWORK_NAME}/openvpn-status.log" \<br />    &gt; "/etc/munin/plugin-conf.d/openvpn_${MODE}_${NETWORK_NAME}"<br />  done<br />done</pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision de Nagios</h3>
<p>Si <a class="internal-link" href="installer-nagios-sur-debian">Nagios</a> est installé sur l'hôte, installez le plugin:</p>
<pre>if [ -x '/etc/init.d/nagios' ]; then<br />  command wget 'https://raw.github.com/munin-monitoring/contrib/master/plugins/nagios/nagios_multi_' \<br />      --no-check-certificate --quiet --output-document='/usr/share/munin/plugins/nagios_multi_'<br />  command chmod +x '/usr/share/munin/plugins/nagios_multi_'<br />fi</pre>
<p>Activez le plugin:</p>
<pre>if [ -x '/etc/init.d/nagios' ]; then<br />  for MODE in checks hosts services; do<br />    command ln -s '/usr/share/munin/plugins/nagios_multi_' "/etc/munin/plugins/nagios_multi_${MODE}"<br />  done<br />fi</pre>
<p>Configurez le plugin:</p>
<pre>command echo "[nagios_multi_*]<br />user root<br />env.binary $(command which nagiostats)" \<br />    &gt; '/etc/munin/plugin-conf.d/nagios_multi_'<br /></pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision de Xen</h3>
<p>Pour superviser un hyperviseur Xen, installez le plugin:</p>
<pre>if [ -x '/usr/sbin/xentop' ]; then<br />  command wget 'https://raw.github.com/munin-monitoring/contrib/master/plugins/xen/xen-multi' \<br />      --no-check-certificate --quiet --output-document='/usr/share/munin/plugins/xen-multi'<br />  command chmod +x '/usr/share/munin/plugins/xen-multi'<br />fi</pre>
<p>Activez le plugin:</p>
<pre>if [ -x '/usr/sbin/xentop' ]; then<br />  command ln -s '/usr/share/munin/plugins/xen-multi' "/etc/munin/plugins/xen-multi"<br />fi</pre>
<p>Configurez le plugin:</p>
<pre>command echo "[xen-multi]<br />user root" \<br />    &gt; '/etc/munin/plugin-conf.d/xen-multi'<br /></pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/munin-node restart</pre>
<h3>Supervision de Plone</h3>
<p>La supervision d'un serveur Plone nécessite la modification du buildout. La procédure est décrite dans l'article <b><a class="external-link" href="http://plone.fr/documentation/documentation-integrateur/munin.html">Monitoring avec Munin</a></b>, dans la <a class="external-link" href="http://plone.fr/documentation/documentation-integrateur/">documentation pour intégrateurs de Plone</a>.</p>
<h3>Supervision d'autres services et outils</h3>
<p>De nombreux plugins Munin sont disponibles dans le <a class="external-link" href="https://github.com/munin-monitoring/contrib/tree/master/plugins">dépôt GitHub de Munin</a>.</p>
<h2>Résolution des problèmes</h2>
<h3>Journaux</h3>
<p>Affichez les éventuelles erreurs générés par le nœud munin avec:</p>
<pre>command tail -n 50 -f '/var/log/munin/munin-node.log'<br /></pre>
<h3>Tester un plugin</h3>
<p>L'outil munin-run permet de tester les résultats d'un plugin. Par exemple, pour le plugin "memory":</p>
<p>Affichez la configuration:</p>
<pre>command munin-run <b>memory</b> config</pre>
<p>Affichez les valeurs:</p>
<pre>command munin-run <b>memory</b><br /></pre>
<p>Exécuter en mode débogage:</p>
<pre>command munin-run --debug --pidebug <b>memory</b><br /></pre>
<h2>Remerciements</h2>
<ul>
<li>Merci aux développeurs de <a class="external-link" href="http://munin-monitoring.org/">Munin</a>.</li>
<li>Merci à <a class="external-link" href="http://github.com/biapy">GitHub</a> pour l'hébergement des <a class="external-link" href="https://github.com/biapy/howto.biapy.com/tree/master/munin">fichiers utilisés par ce guide</a>.</li>
<li>Merci à Andreas Thienemann pour le <a class="external-link" href="https://trac.bawue.org/munin/wiki/cyrus-imapd">plugin Munin cyrus-imapd</a>.</li>
<li> Merci à <a class="external-link" href="http://www.debuntu.org/">Debian/Ubuntu Tips &amp; Tricks</a> pour <a class="external-link" href="http://wiki.debuntu.org/wiki/Munin/Bind9_Plugin">Munin/Bind9 Plugin</a>.</li>
<li>Merci à <a class="external-link" href="http://kevin.deldycke.com/">Kevin Deldycke</a> pour <a class="external-link" href="http://kevin.deldycke.com/2011/07/php-apc-debian-squeeze-munin-monitoring/">PHP APC on Debian Squeeze with Munin monitoring</a>.</li>
<li>Merci aux développeurs de <a class="external-link" href="https://code.google.com/p/munin-php-apc/">munin-php-apc</a>.</li>
<li>Merci à <a class="external-link" href="http://tjstein.com/">T. J. Stein</a> pour les <a class="external-link" href="https://github.com/tjstein/php5-fpm-munin-plugins">plugins PHP-FPM pour Munin</a>.</li>
</ul><img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/IKeF42NllBc" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-19T08:29:12Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/applications-web/supervision/installer-un-noeud-munin-sur-debian</feedburner:origLink></item>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/syslog-ng/installer-et-configurer-un-serveur-syslog-ng-centralise-sur-debian">
    <title>Installer et configurer un serveur Syslog-NG centralisé sur Debian</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/HQjdH8Y0IlU/installer-et-configurer-un-serveur-syslog-ng-centralise-sur-debian</link>
    <description>Syslog-NG est un logiciel de journalisation des événements systèmes. Il est réputé pour sa grande flexibilité. Parmi les possibilités offertes se trouvent la journalisation des journaux sur un serveur centralisé et le stockage des événements dans une base de données. Ce guide présente la mise en place d'un serveur de journalisation Syslog-NG centralisé pour gérer l'enregistrement des journaux de plusieurs hôtes clients.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Ce guide est testé sur:</p>
<ul>
<li>Debian 6.0 Squeeze</li>
</ul>
<h2>Prérequis</h2>
<p>Ce guide nécessite un serveur Syslog-NG disposant d'une configuration modulaire, telle que décrite par <a class="internal-link" href="../creer-une-configuration-modulaire-pour-syslog-ng">Créer une configuration modulaire pour Syslog-NG</a>.</p>
<p>Ce guide recommande la <a class="internal-link" href="../../http/creer-un-certificat-ssl-sur-debian">création d'un certificat SSL / TLS auto-signé pour chiffrer les connections</a> au serveur Syslog-NG</p>
<h2>Paramètres</h2>
<p>Renseignez le nom de domaine du certificat SSL à utiliser:</p>
<pre>DOMAIN="<b>$(command hostname --fqdn)</b>"</pre>
<p>Obtenez les noms de fichier des clefs du certificats:</p>
<pre>KEY_FILE="/etc/ssl/private/${DOMAIN}.key"<br />CERT_FILE="/etc/ssl/certificates/${DOMAIN}.crt"</pre>
<h2>Installation</h2>
<h3>Configuration du serveur Syslog-NG</h3>
<p>Détectez l'adresse IP du serveur:</p>
<pre>NET_DEV="<b>eth0</b>"<br />NET_IP=$(command ifconfig "${NET_DEV}"<b> \<br /></b>    | command grep "inet " \<br />    | command sed -e 's/^.*inet [^:]*:\([^ ]*\) .*$/\1/')<br />echo "${NET_IP}"</pre>
<p>Configurez l'écoute sur le port TCP 540, chiffré si possible:</p>
<pre>if [ -f "${KEY_FILE}" -a -f "${CERT_FILE}" ]; then<br />echo "# Allow for clients to send theirs logs over TCP.<br />source s_net { tcp(ip(${NET_IP}) port(540) max_connections(50)<br />  tls( key_file("${KEY_FILE}")<br />       cert_file("${CERT_FILE}")<br />       peer_verify(optional-untrusted))); };" \<br /> &gt; '/etc/syslog-ng/syslog-ng.conf.d/102-sources_net.conf'<br />else<br />  echo "# Allow for clients to send theirs logs over TCP.<br />source s_net { tcp(ip(${NET_IP}) port(540) max_connections(50)); };" \<br />    &gt; '/etc/syslog-ng/syslog-ng.conf.d/102-sources_net.conf'<br />fi</pre>
<p><b>Remarque:</b> Si vous avez plus de 50 hôtes clients, augmentez la valeur de l'option max_connections.</p>
<p>Configurez l'enregistrement des messages en provenance de la source s_net dans un sous-dossier de "/var/log/by-host":</p>
<pre>for FILE in "103-destinations-by_host.conf" "105-logs-s_net.conf" "106-logs-s_net-by_host.conf" "107-logs-s_src-by_host.conf"; do<br />  command wget "https://raw.github.com/biapy/howto.biapy.com/master/syslog-ng/syslog-ng.conf.d/${FILE}" \<br />      --quiet --no-check-certificate --output-document="/etc/syslog-ng/syslog-ng.conf.d/${FILE}"<br />done</pre>
<p>Configurez la rotation des journaux présents dans "/var/log/by-host":</p>
<pre>command wget "https://raw.github.com/biapy/howto.biapy.com/master/syslog-ng/syslog-ng-by_host.logrotate-d" \<br />      --quiet --no-check-certificate --output-document="/etc/logrotate.d/000-syslog-ng-by_host"</pre>
<p>Si nécessaire, préparez la clef publique du certificat SSL utilisé pour gérer l'identification des clients:</p>
<pre>if [ -f "${CERT_FILE}" ]; then<br />  command mkdir --parent '/etc/syslog-ng/cert.d'<br />  command cp "${CERT_FILE}" "/etc/syslog-ng/cert.d/$(command basename "${CERT_FILE}")"<br />  command ln -s "$(command basename "${CERT_FILE}")" \<br />      "/etc/syslog-ng/cert.d/$(command <code class="plain java">openssl x509 -noout -hash -in </code>"${CERT_FILE}").0"<br />fi<br /></pre>
<p>Configurez l'enregistrement des messages dans le <a class="internal-link" href="../enregistrer-les-journaux-dans-une-base-mysql-avec-syslog-ng">backend MySQL</a> si nécessaire:</p>
<pre>if [ -e '/etc/syslog-ng/syslog-ng.conf.d/mysql-backend.conf' ]; then<br />  echo "# Log net messages to MySQL:<br />log { source(s_net); destination(d_mysql); };" &gt; '/etc/syslog-ng/syslog-ng.conf.d/mysql-backend-s_net.conf'<br />fi<br /></pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/syslog-ng restart<br /></pre>
<h3>Ajout d'un hôte client</h3>
<p>Renseignez l'adresse IP du serveur Syslog-NG:</p>
<pre>SYSLOG_IP="<b>xx.xx.xx.xx</b>"</pre>
<p>Si nécessaire, obtenez le certificat SSL du serveur:</p>
<pre>command scp -pr root@${SYSLOG_IP}:"/etc/syslog-ng/cert.d" "/etc/syslog-ng"<br /></pre>
<p>Générez la configuration:</p>
<pre>TLS_CONFIG=""<br />if [ -d '/etc/syslog-ng/cert.d' ]; then<br />  TLS_CONFIG='tls(ca_dir("/etc/syslog-ng/cert.d"))'<br />fi<br />CONFIG="# Destination: ${SYSLOG_IP}<br />destination d_net { tcp(\"${SYSLOG_IP}\" port(540) ${TLS_CONFIG} log_fifo_size(1000)); };<br /># Send s_src to d_net.<br />log { source(s_src); destination(d_net); };"</pre>
<p>Configurez l'envoi des informations au serveur Syslog-NG:</p>
<pre>if [ -d '/etc/syslog-ng/syslog-ng.conf.d' ]; then<br />  echo "${CONFIG}" &gt; '/etc/syslog-ng/syslog-ng.conf.d/d_net.conf'<br />else<br />  echo "${CONFIG}" &gt;&gt; '/etc/syslog-ng/syslog-ng.conf'<br />fi<br /></pre>
<p>Rechargez la configuration:</p>
<pre>/etc/init.d/syslog-ng restart; command tail -f '/var/log/syslog'<br /></pre>
<h2>Remerciements</h2>
<ul>
<li>Merci aux développeurs de <a class="external-link" href="http://www.balabit.com/network-security/syslog-ng/opensource-logging-system/overview">Syslog-NG</a>.</li>
<li>Merci à <a class="external-link" href="https://papertrailapp.com/">Papertrail</a> pour <a class="external-link" href="http://help.papertrailapp.com/kb/configuration/configuring-remote-syslog-from-unixlinux-and-bsdos-x">Configuring remote syslog from Unix/Linux and BSD/OS X</a>.</li>
<li>Merci à l'<a class="external-link" href="https://www.icts.uiowa.edu/confluence/display/ICTSit/Home">Institute for Clinical and Translational Science</a> pour <a class="external-link" href="https://www.icts.uiowa.edu/confluence/display/ICTSit/Add+TLS+Functionality+to+your+syslog-ng+setup">Add TLS Functionality to your syslog-ng setup</a>.</li>
</ul><img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/HQjdH8Y0IlU" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-15T21:35:00Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/serveurs/syslog-ng/installer-et-configurer-un-serveur-syslog-ng-centralise-sur-debian</feedburner:origLink></item>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/applications-web/supervision/installer-loganalyzer-sur-debian">
    <title>Installer LogAnalyzer sur Debian</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/6yK0v1B1kPM/installer-loganalyzer-sur-debian</link>
    <description>LogAnalyzer est une application Web d'analyse des journaux générés par rsyslog. LogAnalyzer est une alternative libre à Logzilla, anciennement PHP-Syslog-Ng. Bien que la compatibilité soit imparfaite, LogAnalyzer permet d'analyser les journaux générés par Syslog-NG. Ce guide présente l'installation de LogAnalyzer sur Debian.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Ce guide est testé sur:</p>
<ul>
<li>Debian 6.0 Squeeze</li>
</ul>
<h2>Pré-requis</h2>
<p>Ce guide nécessite un serveur MySQL disposant du script <b>mysql-tools</b> disponible dans le guide <a class="internal-link" href="../../../serveurs/bases-de-donnees/installer-et-configurer-mysql-sur-debian">Installer et configurer MySQL sur Debian</a>.</p>
<p>Ce guide nécessite un serveur HTTP avec support du PHP disposant au choix d'un des scripts suivant :</p>
<ul>
<li>Le script <b>a2tools</b> disponible dans le guide <a class="internal-link" href="../../../serveurs/http/installer-et-configurer-apache-2-sur-debian">Installer Apache 2 sur Debian</a>.</li>
</ul>
<p>Ce guide recommande l'<a class="internal-link" href="../../../serveurs/syslog-ng/enregistrer-les-journaux-dans-une-base-mysql-avec-syslog-ng">enregistrement des journaux Syslog dans une base MySQL</a>.</p>
<h2>Paramètres</h2>
<p>Renseignez le nom de domaine ou sera disponible l'application :</p>
<pre>DOMAIN="<b>logs.domaine-exemple.fr</b>"
</pre>
<p>Renseignez le nom d'hôte de votre serveur MySQL (si vous ne savez pas de quoi il s'agit, ne modifiez pas cette valeur) :</p>
<pre>MYSQL_HOST="<b>localhost</b>"</pre>
<p>Si votre serveur MySQL n'est pas local, ce guide effectuera une connexion SSH pour y créer la base de données.</p>
<h2>Installation</h2>
<p>Déterminez le chemin d'installation:</p>
<pre>INSTALL_PATH="/opt/loganalyzer/${DOMAIN}"<br /></pre>
<p>Assurez-vous que le dossier parent existe:</p>
<pre>PARENT_PATH="$(command dirname "${INSTALL_PATH}")"<br />if [ ! -e "${PARENT_PATH}" ]; then<br />  command mkdir --parent "${PARENT_PATH}"<br />fi</pre>
<h3>Préparation de l'environnement</h3>
<p>Installez les logiciels nécessaires au bon fonctionnement de l'application :</p>
<pre>command apt-get install php5-mysql php5-gd php5-cli apg mysql-client</pre>
<p>Autorisez le serveur HTTP à accéder aux journaux:</p>
<pre>command adduser www-data adm</pre>
<p>Rechargez la configuration de PHP selon la méthode d'installation utilisée:</p>
<pre>test -x /etc/init.d/php5-fpm &amp;&amp; /etc/init.d/php5-fpm restart<br />test -x /etc/init.d/apache2 &amp;&amp; /etc/init.d/apache2 force-reload<br />test -x /etc/init.d/lighttpd &amp;&amp; /etc/init.d/lighttpd force-reload<br />test -x /etc/init.d/nginx &amp;&amp; /etc/init.d/nginx force-reload</pre>
<h3>Création de la base de données</h3>
<p>Créez la base de données :</p>
<pre>if [ "${MYSQL_HOST}" = "localhost" ]; then
  MYSQL_PARAMS=$(command mysql-tools --db-prefix="loganalyzer" --create "${DOMAIN}")
else
  command echo "Saisissez le mot de passe de l'utilisateur root MySQL :"
  command read -s PASSWORD
  MYSQL_PARAMS=$(command ssh "root@${MYSQL_HOST}" "command mysql-tools \<br />       --db-prefix='loganalyzer' --host='$(command cat '/etc/mailname')' \<br />       --password='${PASSWORD}' --create '${DOMAIN}'")
fi</pre>
<p>Récupérez les paramètres de la nouvelle base de données:</p>
<pre>MYSQL_DB="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_DB" \
    | cut --delimiter="=" --fields="2-")"
MYSQL_USER="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_USER" \
    | cut --delimiter="=" --fields="2-")"
MYSQL_PASSWORD="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_PASSWORD" \
    | cut --delimiter="=" --fields="2-")"
echo "${MYSQL_PARAMS}"
</pre>
<p>Générez des préfixes de table afin d'augmenter la sécurité contre les attaques par injection SQL:</p>
<pre>TABLE_PREFIX="$(command apg -q -a  0 -n 1 -M NCL)"<br /></pre>
<h3>Mise en place de l'application</h3>
<p>Récupérez l'URL de la dernière version de l'application :</p>
<pre>VERSION=$(command wget --quiet --output-document=- \<br />        "http://loganalyzer.adiscon.com/downloads" \<br />    | grep --max-count=1 --extended-regexp \<br />        "(downloads/loganalyzer-|download.adiscon.com).*stable" \<br />    | command sed -e 's/.*loganalyzer-v*\(.*\)-v.*/\1/' \<br />    | command tr '-' '.')<br />SOURCE_URL="http://download.adiscon.com/loganalyzer/loganalyzer-${VERSION}.tar.gz"<br /></pre>
<p>Téléchargez la dernière version de l'application :</p>
<pre>command wget "${SOURCE_URL}" --output-document="/tmp/loganalyzer-${VERSION}.tar.gz"</pre>
<p>Décompressez l'archive téléchargée :</p>
<pre>command tar --directory '/tmp' -xzf "/tmp/loganalyzer-${VERSION}.tar.gz"
</pre>
<p>Déplacez le dossier créé vers son emplacement final :</p>
<pre>command mv "/tmp/loganalyzer-${VERSION}" "${INSTALL_PATH}"<br /></pre>
<p>Supprimez l'archive téléchargée:</p>
<pre>command rm "/tmp/loganalyzer-${VERSION}.tar.gz"<br /></pre>
<p>Créez le fichier de configuration et supprimez le script d'installation standard:</p>
<pre>command rm "${INSTALL_PATH}/src/install.php"<br />command cp "${INSTALL_PATH}/src/include/config.sample.php" "${INSTALL_PATH}/src/config.php"<br /></pre>
<p>Configurez la connexion à la base de données:</p>
<pre>command sed -i \<br />    -e "s|\('UserDBEnabled'.*=\).*|\1 true;|" \<br />    -e "s|\('UserDBServer'.*=\).*|\1 '${MYSQL_HOST}';|" \<br />    -e "s|\('UserDBName'.*=\).*|\1 '${MYSQL_DB}';|" \<br />    -e "s|\('UserDBPref'.*=\).*|\1 '${TABLE_PREFIX}_';|" \<br />    -e "s|\('UserDBUser'.*=\).*|\1 '${MYSQL_USER}';|" \<br />    -e "s|\('UserDBPass'.*=\).*|\1 '${MYSQL_PASSWORD}';|" \<br />    -e "s|\('UserDBLoginRequired'.*=\).*|\1 true;|" \<br />    -e "s|\('HeaderDefaultEncoding'.*=\).*|\1 ENC_UTF8;|" \<br />    "${INSTALL_PATH}/src/config.php"<br /></pre>
<p>Initialisez la base de données:</p>
<pre>command cat "${INSTALL_PATH}/src/include/db_template.txt" \<br />    | command sed -e "s/logcon_/${TABLE_PREFIX}_/g" \<br />    | command mysql --user="${MYSQL_USER}" --password="${MYSQL_PASSWORD}" \
    --host="${MYSQL_HOST}" "${MYSQL_DB}"<br /></pre>
<p>Renseignez la version de la base de données:</p>
<pre>DB_VERSION=$(command grep "database_internalversion" "${INSTALL_PATH}/src/include/functions_db.php" \<br />    | command sed -e 's/^.*=[^"]*"\([^"]*\)".*$/\1/')<br />command echo "INSERT INTO ${TABLE_PREFIX}_config (propname, propvalue, is_global)<br />          VALUES ('database_installedversion', '${DB_VERSION}', 1)" \<br />    | command mysql --user="${MYSQL_USER}" --password="${MYSQL_PASSWORD}" \
    --host="${MYSQL_HOST}" "${MYSQL_DB}"</pre>
<p>Générez le mot de passe de l'utilisateur d'administration et mettez à jour la base de données:</p>
<pre>ADMIN_PASSWORD="$(command apg -q -a  0 -n 1 -M NCL)"<br />echo "INSERT INTO ${TABLE_PREFIX}_users(username, password, is_admin, is_readonly)<br />          VALUES ('admin', '$(command php -r "echo md5('${ADMIN_PASSWORD}');")', 1, 0)" \<br />    | command mysql --user="${MYSQL_USER}" --password="${MYSQL_PASSWORD}" \
    --host="${MYSQL_HOST}" "${MYSQL_DB}"</pre>
<p>Configurez la première source de données:</p>
<pre>echo "INSERT INTO ${TABLE_PREFIX}_sources(Name, SourceType, ViewID, LogLineType, DiskFile, DBRecordsPerQuery)<br />          VALUES ('$(command cat '/etc/mailname')', 1, 'SYSLOG', 'syslog', '/var/log/syslog', 100)" \<br />    | command mysql --user="${MYSQL_USER}" --password="${MYSQL_PASSWORD}" \
    --host="${MYSQL_HOST}" "${MYSQL_DB}"</pre>
<p>Configurez le serveur HTTP pour servir le site Internet:</p>
<pre>command a2tools "${DOMAIN}" "${INSTALL_PATH}/src"<br /></pre>
<p>Affichez les paramètres de connexion à l'outil et notez les précieusement:</p>
<pre>echo "URL : http://${DOMAIN}/<br />User : admin<br />Password: ${ADMIN_PASSWORD}"<br /></pre>
<p>Si vous utilisez Syslog-NG, les colonnes "facility" et "severity" resteront vide car LogAnalyzer attends des valeurs numériques pour ces données, et Syslog-NG utilise des chaînes de caractères.</p>
<h2>Remerciements</h2>
<ul>
<li>Merci aux développeurs de <a class="external-link" href="http://loganalyzer.adiscon.com/">Adiscon LogAnalyzer</a>.</li>
</ul>
<div id="_mcePaste"></div><img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/6yK0v1B1kPM" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-12T16:50:00Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/applications-web/supervision/installer-loganalyzer-sur-debian</feedburner:origLink></item>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/syslog-ng/enregistrer-les-journaux-dans-une-base-mysql-avec-syslog-ng">
    <title>Enregistrer les journaux dans une base MySQL avec Syslog-NG</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/zdOIpAHgLco/enregistrer-les-journaux-dans-une-base-mysql-avec-syslog-ng</link>
    <description>Par défaut, Syslog-NG écrit les événements dans des fichiers textes, dits fichiers journaux, situés dans le dossier "/var/log". Ajouter à cela le stockage dans MySQL permet d'accéder au journaux plus simplement via des interfaces Web telles que PHP-Syslog-NG. Ce guide décrit la configuration d'un backend MySQL à Syslog-NG.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Ce guide est testé sur:</p>
<ul>
<li>Debian 6.0 Squeeze</li>
</ul>
<h2>Pré-requis</h2>
<p>Ce guide nécessite un serveur MySQL disposant du script <b>mysql-tools</b> disponible dans le guide <a class="internal-link" href="../../bases-de-donnees/installer-et-configurer-mysql-sur-debian">Installer et configurer MySQL sur Debian</a>.</p>
<p>Ce guide nécessite un serveur Syslog-NG disposant d'une configuration modulaire, telle que décrite par <a class="internal-link" href="../creer-une-configuration-modulaire-pour-syslog-ng">Créer une configuration modulaire pour Syslog-NG</a>.</p>
<h2>Paramètres</h2>
<p>Renseignez le nom d'hôte du serveur configuré :</p>
<pre>DOMAIN="<b>$(cat '/etc/mailname')</b>"
</pre>
<p>Renseignez le nom d'hôte de votre serveur MySQL (si vous ne savez pas de quoi il s'agit, ne modifiez pas cette valeur) :</p>
<pre>MYSQL_HOST="<b>localhost</b>"</pre>
<p>Si votre serveur MySQL n'est pas local, ce guide effectuera une connexion SSH pour y créer la base de données.</p>
<h2>Installation</h2>
<h3>Préparation de l'environnement</h3>
<p>Installez les logiciels nécessaires:</p>
<pre>command apt-get install mysql-client libdbd-mysql</pre>
<h3>Création de la base de données</h3>
<p>Créez la base de données :</p>
<pre>if [ "${MYSQL_HOST}" = "localhost" ]; then
  MYSQL_PARAMS=$(command mysql-tools --db-prefix="syslog" --create "${DOMAIN}")
else
  command echo "Saisissez le mot de passe de l'utilisateur root MySQL :"
  command read -s PASSWORD
  MYSQL_PARAMS=$(command ssh "root@${MYSQL_HOST}" "command mysql-tools \<br />       --db-prefix='syslog' --host='$(command cat '/etc/mailname')' \<br />       --password='${PASSWORD}' --create '${DOMAIN}'")
fi</pre>
<p>Récupérez les paramètres de la nouvelle base de données:</p>
<pre>MYSQL_DB="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_DB" \
    | cut --delimiter="=" --fields="2-")"
MYSQL_USER="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_USER" \
    | cut --delimiter="=" --fields="2-")"
MYSQL_PASSWORD="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_PASSWORD" \
    | cut --delimiter="=" --fields="2-")"
echo "${MYSQL_PARAMS}"
</pre>
<p>Créez la table destinée à contenir les journaux:</p>
<pre>command echo "CREATE TABLE IF NOT EXISTS logs (
	id bigint unsigned NOT NULL AUTO_INCREMENT,
	host varchar(128) default NULL,
	facility varchar(10) default NULL,
	priority varchar(10) default NULL,
	level varchar(10) default NULL,
	tag varchar(10) default NULL,
	datetime datetime default NULL,
	program varchar(15) default NULL,
	msg text,
	seq bigint unsigned NOT NULL default '0',
	counter int(11) NOT NULL default '1',
	fo datetime default NULL,
	lo datetime default NULL,
	PRIMARY KEY  (id),
	KEY datetime (datetime),
	KEY sequence (seq),
	KEY priority (priority),
	KEY facility (facility),
	KEY program (program),
	KEY host (host)
) ENGINE=MyISAM;" \<br />  | command mysql --user="${MYSQL_USER}" --password="${MYSQL_PASSWORD}" \<br />            --host="${MYSQL_HOST}" "${MYSQL_DB}"</pre>
<h3>Configuration de Syslog-NG</h3>
<p>Configurez Syslog-NG pour stocker les messages dans la base de données:</p>
<pre>echo "# Log to MySQL table.<br /><br />options {
        stats_freq(3600);
        keep_hostname(yes);
        flush_lines(16);
        log_fifo_size(16384);
};

destination d_mysql {
        sql(type(mysql)
        host(\"${MYSQL_HOST}\") username(\"${MYSQL_USER}\") password(\"${MYSQL_PASSWORD}\")
        database(\"${MYSQL_DB}\")
        table(\"logs\")
        columns(\"host\", \"facility\", \"priority\", \"level\", \"tag\", \"datetime\", \"program\", \"msg\")
        values(\"\$HOST_FROM\", \"\$FACILITY\", \"\$PRIORITY\", \"\$LEVEL\", \"\$TAG\", \"\$YEAR-\$MONTH-\$DAY \$HOUR:\$MIN:\$SEC\", \"\$PROGRAM\", \"\$MSG\")
        indexes(\"host\", \"facility\", \"priority\", \"datetime\", \"program\"));
};

log { source(s_src); destination(d_mysql); };" \<br />    &gt; '/etc/syslog-ng/syslog-ng.conf.d/mysql-backend.conf'</pre>
<p>Redémarrez le démon:</p>
<pre>/etc/init.d/syslog-ng restart<br /></pre>
<h3>Création d'un utilisateur MySQL pour la consultation</h3>
<p>Créez l'utilisateur spécialisé pour la lecture des données enregistrées par Syslog-NG :</p>
<pre>if [ "${MYSQL_HOST}" = "localhost" ]; then
  MYSQL_PARAMS=$(command mysql-tools --db-prefix="syslog" --user-prefix="s_r" \<br />      --grant="SELECT" --adduser="${DOMAIN}" "${DOMAIN}")
else
  command echo "Saisissez le mot de passe de l'utilisateur root MySQL :"
  command read -s PASSWORD
  MYSQL_PARAMS=$(command ssh "root@${MYSQL_HOST}" "command mysql-tools \<br />      --db-prefix='syslog' --user-prefix='s_r' --host='$(command cat '/etc/mailname')' \<br />      --password='${PASSWORD}' --grant='SELECT' --adduser='${DOMAIN}' '${DOMAIN}'")
fi</pre>
<p>Récupérez les paramètres du nouvel utilisateur:</p>
<pre>echo "${MYSQL_PARAMS}"
</pre>
<h2>Remerciements</h2>
<ul>
<li>Merci à la <a class="external-link" href="http://en.gentoo-wiki.com">communauté Gentoo</a> pour <a class="external-link" href="http://en.gentoo-wiki.com/wiki/Syslog-ng_directly_to_MySQL">Syslog-ng directly to MySQL</a>.</li>
</ul><img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/zdOIpAHgLco" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-12T15:35:00Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/serveurs/syslog-ng/enregistrer-les-journaux-dans-une-base-mysql-avec-syslog-ng</feedburner:origLink></item>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/syslog-ng/creer-une-configuration-modulaire-pour-syslog-ng">
    <title>Créer une configuration modulaire pour Syslog-NG</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/yh7W3-2W66Q/creer-une-configuration-modulaire-pour-syslog-ng</link>
    <description>L'un des inconvénient de Syslog-NG est son fichier de configuration monolithique. Ce guide donne la possibilité de diviser la configuration de Syslog-NG en plusieurs petits fichiers modulaires placés dans le dossier /etc/syslog-ng/syslog-ng.conf.d. Pour information, rsyslog propose de base cette fonctionnalité.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Ce guide est testé sur:</p>
<ul>
<li>Debian 6.0 Squeeze</li>
</ul>
<h2>Prérequis</h2>
<p>Ce guide nécessite une installation fonctionnelle de Syslog-NG. Sur un Debian GNU/Linux pur, c'est l'outil de gestion des journaux par défaut.</p>
<h2>Installation</h2>
<p>Créez le dossier destiné à contenir la configuration modulaire et placez-y la configuration Syslog-NG par défaut:</p>
<pre>command mkdir --parent '/etc/syslog-ng/syslog-ng.conf.d'<br />for FILE in "000-version.conf" "001-options.conf" "002-sources.conf" "003-destinations.conf" "004-filters.conf" "005-logs.conf"; do<br />  command wget "https://raw.github.com/biapy/howto.biapy.com/master/syslog-ng/syslog-ng.conf.d/${FILE}" \<br />      --quiet --no-check-certificate --output-document="/etc/syslog-ng/syslog-ng.conf.d/${FILE}"<br />done<br /></pre>
<p>Sauvegardez le fichier de configuration d'origine:</p>
<pre>command dpkg-divert --divert '/etc/syslog-ng/syslog-ng.conf.dpkg-orig' \<br />    --rename '/etc/syslog-ng/syslog-ng.conf'</pre>
<p>Sauvegardez le script init.d d'origine:</p>
<pre>command dpkg-divert --divert '/etc/init.d/syslog-ng.dpkg-orig' \<br />    --rename '/etc/init.d/syslog-ng'<br />command cp -a '/etc/init.d/syslog-ng.dpkg-orig' '/etc/init.d/syslog-ng'</pre>
<p>Installez le script init.d pour générant le fichier '/etc/syslog-ng/syslog-ng.conf' quand nécessaire:</p>
<pre>command wget "https://raw.github.com/biapy/howto.biapy.com/master/syslog-ng/syslog-ng.init-d" \<br />    --quiet --no-check-certificate --output-document='/etc/init.d/syslog-ng'<br />command chmod +x '/etc/init.d/syslog-ng'</pre>
<p>Rechargez la configuration de Syslog-NG:</p>
<pre>/etc/init.d/syslog-ng reload</pre>
<p>La configuration de Syslog-NG peut maintenant être ajustée en plaçant <b>des fichiers avec l'extension ".conf" dans le dossier "/etc/syslog-ng/syslog-ng.conf.d"</b>.</p>
<h2>Remerciements</h2>
<ul>
<li>Merci à <a class="external-link" href="https://github.com/biapy/">GitHub</a> pour l'hébergement du <a class="external-link" href="https://github.com/biapy/howto.biapy.com/tree/master/syslog-ng">script init.d modifié pour Syslog-NG</a>.</li>
</ul><img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/yh7W3-2W66Q" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-12T11:25:00Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/serveurs/syslog-ng/creer-une-configuration-modulaire-pour-syslog-ng</feedburner:origLink></item>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/syslog-ng">
    <title>Syslog-NG</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/KrA_0P1xneE/syslog-ng</link>
    <description>Guides de configuration du système de gestion des journaux d'événements système Syslog-NG.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/KrA_0P1xneE" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-12T11:23:50Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/serveurs/syslog-ng</feedburner:origLink></item>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/php/gerer-les-sessions-php-avec-memcached-et-mysql">
    <title>Gérer les sessions PHP avec Memcached et MySQL</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/bxrDKzVMppQ/gerer-les-sessions-php-avec-memcached-et-mysql</link>
    <description>Utiliser Memcached et MySQL pour gérer les sessions PHP est la clef pour la réalisation d'environnement de haute-disponibilité. Cette configuration permet de partager les données de session entre plusieurs serveurs PHP situés derrière un répartiteur de charge. Dans un environnement plus simple, cela permet d'éviter le stockage des sessions sur le système de fichiers. Ce guide décrit la mise en place d'un gestionnaire personnalisé de sessions PHP basés sur une configuration hybride Memcached / MySQL.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Ce guide est testé sur:</p>
<ul>
<li>Debian 6.0 Squeeze</li>
</ul>
<h2>Prérequis</h2>
<p>Ce guide nécessite un serveur Memcached, dont l'installation est décrite par <a class="internal-link" href="../bases-de-donnees/installer-memcached-sur-debian">Installer Memcached sur Debian</a>.</p>
<p>Ce guide nécessite un serveur MySQL disposant du script <b>mysql-tools</b> disponible dans le guide <a class="internal-link" href="../bases-de-donnees/installer-et-configurer-mysql-sur-debian">Installer et configurer MySQL sur Debian</a>.</p>
<h2>Paramètres</h2>
<p>Renseignez le nom d'hôte du serveur configuré (utilisé pour nommer la base de donnée et la table):</p>
<pre>DOMAIN="$(cat '/etc/mailname')"
</pre>
<p>Renseignez le nom d'hôte de votre serveur MySQL (si vous ne savez pas de quoi il s'agit, ne modifiez pas cette valeur):</p>
<pre>MYSQL_HOST="<b>localhost</b>"</pre>
<p>Si votre serveur MySQL n'est pas local, ce guide effectuera une connexion SSH pour y créer la base de données.</p>
<h2>Installation</h2>
<h3>Préparation de l'environnement</h3>
<p>Installez les logiciels et modules PHP nécessaires à l'installation et au bon fonctionnement de l'application:</p>
<pre>command apt-get install php5-mysql php5-memcached apg</pre>
<p>Générez des préfixes de table et de champ aléatoires afin d'augmenter la sécurité contre les attaques par injection SQL:</p>
<pre>TABLE_PREFIX="$(command apg -q -a  0 -n 1 -M NCL)"<br />FIELD_PREFIX="$(command apg -q -a  0 -n 1 -M NCL)"</pre>
<h3>Création de la base de données</h3>
<p>Créez la base de données :</p>
<pre>if [ "${MYSQL_HOST}" = "localhost" ]; then
  MYSQL_PARAMS=$(command mysql-tools --db-prefix="php-session" --create "${DOMAIN}")
else
  command echo "Saisissez le mot de passe de l'utilisateur root MySQL :"
  command read PASSWORD
  MYSQL_PARAMS=$(command ssh "root@${MYSQL_HOST}" "command mysql-tools \<br />       --db-prefix='php-session' --host='$(command cat /etc/mailname)' \<br />       --password='${PASSWORD}' --create '${DOMAIN}'")
fi</pre>
<p>Récupérez les paramètres de la nouvelle base de données:</p>
<pre>MYSQL_DB="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_DB" \
    | cut --delimiter="=" --fields="2-")"
MYSQL_USER="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_USER" \
    | cut --delimiter="=" --fields="2-")"
MYSQL_PASSWORD="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_PASSWORD" \
    | cut --delimiter="=" --fields="2-")"
echo "${MYSQL_PARAMS}"
</pre>
<p>Créez la table destinée à contenir les sessions:</p>
<pre>command wget 'https://raw.github.com/biapy/howto.biapy.com/master/php5/mysql-memcached-sessionhandler/memcached_mysql_sessionhandler.sql' \<br />    --quiet --no-check-certificate --output-document=- \<br />  | command mysql --user="${MYSQL_USER}" --password="${MYSQL_PASSWORD}" \
    --host="${MYSQL_HOST}" "${MYSQL_DB}"</pre>
<h3>Configuration de PHP</h3>
<p>Créez le dossier destiné à contenir le code de gestion des sessions:</p>
<pre>command mkdir --parent '/etc/php5/session-management'<br /></pre>
<p>Créez le fichier de configuration de la gestion des sessions:</p>
<pre>echo "&lt;?php<br />/**<br /> * Memcached + MySQL session storage for ${DOMAIN}.<br /> *<br /> * MySQL connection configuration file<br /> */<br />abstract class Memcached_MySQL_SessionHandler_Config<br />{<br />  const MYSQL_HOST = '${MYSQL_HOST}';<br />  const MYSQL_DB = '${MYSQL_DB}';<br />  const MYSQL_USER = '${MYSQL_USER}';<br />  const MYSQL_PASSWORD = '${MYSQL_PASSWORD}';<br /><br />  const TABLE_PREFIX = '${TABLE_PREFIX}';<br />  const FIELD_PREFIX = '${FIELD_PREFIX}';<br /><br />  const MEMCACHED_ID = '${TABLE_PREFIX}';<br />  // Memcached servers list.<br />  // To add multiple Memcached servers use:<br />  // const MEMCACHED_SERVERS='xx.xx.xx.ip:port:weight,xx.xx.xx.ip:port:weight,...'<br />  const MEMCACHED_SERVERS = '127.0.0.1:11211';<br />}" \<br />  &gt; '/etc/php5/session-management/memcached_mysql_sessionhandler_config.class.php'</pre>
<p>Téléchargez le code de gestion des sessions:</p>
<pre>command wget 'https://raw.github.com/biapy/howto.biapy.com/master/php5/mysql-memcached-sessionhandler/memcached_mysql_sessionhandler.class.php' \<br />    --quiet --no-check-certificate --output-document='/etc/php5/session-management/memcached_mysql_sessionhandler.class.php'<br /></pre>
<p>Activez la gestion des sessions avec MySQL et Memcached pour l'ensemble des sites présents sur le serveur:</p>
<pre>command echo "; Storing session in Memcached + MySQL server.<br />session.save_handler = user<br />auto_prepend_file=/etc/php5/session-management/memcached_mysql_sessionhandler.class.php" \<br /> &gt; '/etc/php5/conf.d/sessions-store-memcached-mysql.ini'</pre>
<p>Rechargez la configuration de PHP selon la méthode d'installation utilisée:</p>
<pre>test -x /etc/init.d/php5-fpm &amp;&amp; /etc/init.d/php5-fpm restart<br />test -x /etc/init.d/apache2 &amp;&amp; /etc/init.d/apache2 force-reload<br />test -x /etc/init.d/lighttpd &amp;&amp; /etc/init.d/lighttpd force-reload<br />test -x /etc/init.d/nginx &amp;&amp; /etc/init.d/nginx force-reload</pre>
<h2>Remerciements</h2>
<ul>
<li>Merci à <a class="external-link" href="http://orig.keboola.com/">Keboola</a> pour <a class="external-link" href="http://orig.keboola.com/blog/php-sessions-with-memcached-and-a-database-session-in-the-cloud-done-right/">PHP Sessions with Memcached and a Database (Sessions in the Cloud Done Right)</a>.</li>
<li>Merci à <a class="external-link" href="http://github.com/biapy/howto.biapy.com/">GitHub</a> pour l'hébergement des sources de ce guide : <a class="external-link" href="https://github.com/biapy/howto.biapy.com/tree/master/php5/mysql-memcached-sessionhandler">Handle PHP sessions with Memcached and MySQL</a>.</li>
</ul>
<ul>
</ul><img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/bxrDKzVMppQ" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-09T13:55:00Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/serveurs/php/gerer-les-sessions-php-avec-memcached-et-mysql</feedburner:origLink></item>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/php/optimiser-la-gestion-des-sessions-php-avec-memcached">
    <title>Gérer les sessions PHP avec Memcached</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/llb45PMk_2Y/optimiser-la-gestion-des-sessions-php-avec-memcached</link>
    <description>Par défaut, les sessions PHP sont stockées sur le système de fichier (dans /var/lib/php5, ou dans /tmp). Si les sites Internet hébergés font une utilisation intensive des sessions, cela entraîne un délai supplémentaire dans l'exécution des requêtes PHP. Il est possible d'optimiser les performances en stockant les sessions en mémoire à l'aide de Memcached. Ce guide décrit la mise en place de ce système.</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Ce guide est testé sur:</p>
<ul>
<li>Debian 6.0 Squeeze</li>
</ul>
<h2>Prérequis</h2>
<p>Ce guide nécessite un serveur Memcached, dont l'installation est décrite par <a class="internal-link" href="../../bases-de-donnees/installer-memcached-sur-debian">Installer Memcached sur Debian</a>.</p>
<h2>Avantages et Inconvénients</h2>
<h3>Inconvénients</h3>
<p>L'utilisation de Memcached pour stocker les sessions impose les limitations suivantes:</p>
<ul>
<li>Les sessions stockées ne peuvent dépasser une taille de 1 Mo.</li>
<li>Les sessions ne sont pas persistantes, et un redémarrage du démon Memcached les supprime.</li>
<li>Il est impossible de contrôler la durée des sessions.</li>
<li>Le nombre de sessions gérées est limitées par la taille du cache Memcached.</li>
</ul>
<p><b>N'utilisez pas Memcached pour gérer les sessions PHP si celles-ci doivent contenir des informations critiques (dans le cas d'un site E-commerce par exemple).</b></p>
<h3>Avantages</h3>
<p>Utiliser Memcached pour stocker les sessions apporte les avantages suivants:</p>
<ul>
<li>L'accès aux données de session est Très rapide, car elle sont stockées en mémoire.</li>
<li>Il n'y a pas à gérer un mécanisme de suppression des sessions périmées, Memcached s'en charge.</li>
<li>Dans les limites de la mémoire assignée à Memcached, le système peut gérer facilement plusieurs dizaines de milliers de connexions simultanées.</li>
</ul>
<h2>Paramètres</h2>
<p>Renseignez l'adresse IP du serveur Memcached:</p>
<pre>MEMCACHED_IP="<b>127.0.0.1</b>"</pre>
<p>Renseignez le port du serveur Memcached:</p>
<pre>MEMCACHED_PORT="<b>11211</b>"<br /></pre>
<h2>Installation</h2>
<p>Installez le module PHP5 pour Memcache:</p>
<pre>command apt-get install php5-memcached</pre>
<p><b>Remarque:</b> De nombreux guides disponibles sur Internet utilisent php5-memcache plutôt que php5-memcached. php5-memcached est recommandé, car plus récent et disposant de plus de fonctionnalités.</p>
<p>Configurez PHP5 pour stocker les sessions dans le serveur Memcached:</p>
<pre>command echo "; Storing session in memcached server.<br />session.save_handler = memcached<br />session.save_path=\"${MEMCACHED_IP}:${MEMCACHED_PORT}\"" \<br /> &gt; '/etc/php5/conf.d/sessions-store-memcached.ini'<br /></pre>
<p>Rechargez la configuration de PHP selon la méthode d'installation utilisée:</p>
<pre>test -x /etc/init.d/php5-fpm &amp;&amp; /etc/init.d/php5-fpm restart<br />test -x /etc/init.d/apache2 &amp;&amp; /etc/init.d/apache2 force-reload<br />test -x /etc/init.d/lighttpd &amp;&amp; /etc/init.d/lighttpd force-reload<br />test -x /etc/init.d/nginx &amp;&amp; /etc/init.d/nginx force-reload</pre>
<h2>Remerciements</h2>
<ul>
<li>Merci à <a class="external-link" href="http://blog.hio.fr/">Hio.fr</a> pour <a class="external-link" href="http://blog.hio.fr/2010/01/16/php-session-avec-memcached.html">PHP session avec memcached</a>.</li>
<li>Merci à <a class="external-link" href="http://artur.ejsmont.org/">Artur Ejsmont</a> pour <a class="external-link" href="http://artur.ejsmont.org/blog/content/php-session-in-mysql-vs-memcached">PHP session in Mysql VS Memcached</a>.</li>
</ul><img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/llb45PMk_2Y" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-07T18:15:00Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/serveurs/php/optimiser-la-gestion-des-sessions-php-avec-memcached</feedburner:origLink></item>


  <item rdf:about="http://howto.biapy.com/fr/debian-gnu-linux/serveurs/bases-de-donnees/installer-memcached-sur-debian">
    <title>Installer Memcached sur Debian</title>
    <link>http://feedproxy.google.com/~r/biapy-help-desk/fr/~3/xqVvAWhbLZE/installer-memcached-sur-debian</link>
    <description>Memcached est un serveur de base de donnée clef/valeur facilitant le cache d'objets en mémoire. Il est très utilisé par certain CMS PHP (Wordpress, Drupal, Prestashop, ...) car il apporte un gain de performance non négligeable sur les serveurs ayant beaucoup de RAM. Cet article présente l'installation du serveur Memcached sur Debian</description>
    <content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Ce guide est testé sur:</p>
<ul>
<li>Debian 6.0 Squeeze</li>
</ul>
<h2>Installation</h2>
<p>Installez le serveur:</p>
<pre>command apt-get install memcached<br /></pre>
<p>Le serveur est maintenant fonctionnel.</p>
<h3>Augmenter la taille du cache</h3>
<p>Si le serveur de cache est très utilisé, augmentez la taille du cache. Renseignez la nouvelle taille du cache (en Mo):</p>
<pre>MEMCACHE_SIZE="<b>128</b>"</pre>
<p>Appliquez la configuration:</p>
<pre>command sed -i -e "s/^-m .*/-m ${MEMCACHE_SIZE}/" \<br />    '/etc/memcached.conf'</pre>
<p>Redémarrez le serveur:</p>
<pre>/etc/init.d/memcached restart<br /></pre>
<h3>Autoriser l'accès depuis le réseau (dangereux)</h3>
<p>Cette procédure est dangereuse et peut entraîner des failles de sécurité. Ne l'utilisez que si vous savez ce que vous faites !</p>
<p>Pour pouvoir utiliser le serveur Memcached depuis d'autres hôtes présent sur le réseau, commandez l'option "-l":</p>
<pre>command sed -i -e "s/^-l /#-l /" \<br />    '/etc/memcached.conf'</pre>
<p>Redémarrez le serveur:</p>
<pre>/etc/init.d/memcached restart<br /></pre>
<p><b>Remarque: </b>pour désactiver ce réglage, utilisez:</p>
<pre>command sed -i -e "s/^#-l .*/-l 127.0.0.1/" \<br />    '/etc/memcached.conf'<br />/etc/init.d/memcached restart</pre>
<h2>Statistiques</h2>
<p>L'outil memcached-tool permet d'obtenir des statistiques de fonctionnement du serveur.</p>
<p>Affichez l'état courant du cache mémoire:</p>
<pre>/usr/share/memcached/scripts/memcached-tool 127.0.0.1:11211 display</pre>
<p>Affichez les statistiques de fonctionnement du serveur:</p>
<pre>/usr/share/memcached/scripts/memcached-tool 127.0.0.1:11211 stats</pre>
<p>Affichez le contenu du cache:</p>
<pre>/usr/share/memcached/scripts/memcached-tool 127.0.0.1:11211 dump</pre>
<p>Le <a class="internal-link" href="../../../applications-web/supervision/installer-loutil-de-surveillance-systeme-et-reseau-munin-sur-debian">serveur de supervision Munin</a> permet d'obtenir des graphiques d'utilisation des ressources du serveur Memcached au fil du temps.</p>
<h2>Remerciements</h2>
<ul>
<li>Merci aux développeurs de <a class="external-link" href="http://memcached.org/">Memcached</a>.</li>
</ul><img src="http://feeds.feedburner.com/~r/biapy-help-desk/fr/~4/xqVvAWhbLZE" height="1" width="1"/>]]></content:encoded>
    <dc:publisher>No publisher</dc:publisher>
    <dc:creator>Pierre-Yves Landuré</dc:creator>
    <dc:rights />
    <dc:date>2012-05-07T17:55:00Z</dc:date>
    <dc:type>Article</dc:type>
  <feedburner:origLink>http://howto.biapy.com/fr/debian-gnu-linux/serveurs/bases-de-donnees/installer-memcached-sur-debian</feedburner:origLink></item>





<cc:License xmlns:cc="http://web.resource.org/cc/" rdf:about="http://creativecommons.org/licenses/by-sa/3.0/"><cc:permits rdf:resource="http://web.resource.org/cc/Reproduction" /><cc:permits rdf:resource="http://web.resource.org/cc/Distribution" /><cc:permits rdf:resource="http://web.resource.org/cc/DerivativeWorks" /><cc:requires rdf:resource="http://web.resource.org/cc/Notice" /><cc:requires rdf:resource="http://web.resource.org/cc/Attribution" /><cc:requires rdf:resource="http://web.resource.org/cc/ShareAlike" /></cc:License><image rdf:about="http://howto.biapy.com/portal_css/Biapy%20Help%20Desk/++resource++biapy.biapyhelpdesk.images/logo-biapy-feedburner.png"><url>http://howto.biapy.com/portal_css/Biapy%20Help%20Desk/++resource++biapy.biapyhelpdesk.images/logo-biapy-feedburner.png</url><link>http://howto.biapy.com/</link><title>Biapy Help Desk</title></image></rdf:RDF>

