<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xml:lang="fr">

  <title type="html">Humus numericus - Mot-clé - sysadmin</title>
  <subtitle type="html"></subtitle>
  <link href="https://blog.nozav.org/feed/tag/sysadmin/atom" rel="self" type="application/atom+xml"/>
  <link href="https://blog.nozav.org/" rel="alternate" type="text/html"
  title=""/>
  <updated>2019-05-09T20:00:29+02:00</updated>
  <author>
    <name></name>
  </author>
  <id>urn:md5:c2531a830c9d2a52c5500061b4d5077e</id>
  <generator uri="http://www.dotclear.org/">Dotclear</generator>

  
  <entry>
    <title>Ce blog est désormais accessible en nozav.42 !</title>
    <link href="https://blog.nozav.org/post/2010/12/30/Ce-blog-est-d%C3%A9sormais-accessible-en-nozav.42-%21" rel="alternate" type="text/html"
    title="Ce blog est désormais accessible en nozav.42 !" />
    <id>urn:md5:5013e8901e327fe4e1f3fd3671bfcaee</id>
    <published>2010-12-30T00:23:00+01:00</published>
          <updated>2010-12-30T01:28:46+01:00</updated>
            <author><name>Juba</name></author>
        <dc:subject>Linux, Debian, etc.</dc:subject>
        <dc:subject>dns</dc:subject><dc:subject>sysadmin</dc:subject><dc:subject>web</dc:subject>
    <content type="html">    &lt;p&gt;Pour tester et soutenir &lt;a href=&quot;https://www.42registry.org/&quot;&gt;l&amp;#8217;expérience 42&lt;/a&gt;, ce blog est désormais accessible via l&amp;#8217;adresse&amp;#160;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://nozav.42/&quot; title=&quot;http://nozav.42/&quot;&gt;http://nozav.42/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&amp;#8230;si bien sûr votre système a été configuré pour résoudre ce nouveau TLD alternatif.&lt;/p&gt;


&lt;p&gt;Pour savoir comment faire (c&amp;#8217;est pas forcément trivial, le plus simple est sans doute d&amp;#8217;utiliser les DNS fournis par Geeknode), comprendre le projet, voire enregistrer votre propre nom de domaine en .42, c&amp;#8217;est là&amp;#160;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.42registry.org/&quot; title=&quot;https://www.42registry.org/&quot;&gt;https://www.42registry.org/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content>

    


      </entry>
  
  <entry>
    <title>Console graphique avec grub2 sous Debian</title>
    <link href="https://blog.nozav.org/post/2010/11/12/Console-graphique-avec-grub2-sous-Debian" rel="alternate" type="text/html"
    title="Console graphique avec grub2 sous Debian" />
    <id>urn:md5:e0e279e9aabdd8316f223a2aa95e6384</id>
    <published>2010-11-12T09:42:00+01:00</published>
          <updated>2010-11-12T10:42:49+01:00</updated>
            <author><name>Juba</name></author>
        <dc:subject>Linux, Debian, etc.</dc:subject>
        <dc:subject>debian</dc:subject><dc:subject>grub</dc:subject><dc:subject>sysadmin</dc:subject>
    <content type="html">    &lt;p&gt;Le passage à grub2 sous Debian a entraîné quelques changements dans la configuration du bootloader, et notamment si on souhaite obtenir une console graphique au moment du boot et pas seulement 25 lignes et 80 colonnes de texte.&lt;/p&gt;


&lt;p&gt;À noter que l&amp;#8217;ancienne méthode fonctionne toujours, à savoir passer un argument supplémentaire du type &lt;code&gt;vga=788&lt;/code&gt; dans les paramètres du noyau, mais ça n&amp;#8217;est plus la méthode recommandée.&lt;/p&gt;


&lt;p&gt;Si on regarde dans le fichier &lt;code&gt;/etc/default/grub&lt;/code&gt;, on constate la présence d&amp;#8217;un paramètre &lt;code&gt;GRUB_GFXMODE&lt;/code&gt; qui permet de spécifier une résolution pour les consoles graphiques. Celui-ci fonctionne pour l&amp;#8217;invite de grub (celle où vous pouvez choisir quel noyau booter), mais n&amp;#8217;est pas prise en compte pour la console qui s&amp;#8217;affiche ensuite. Pour cela il manque en effet un paramètre, que nous pouvons ajouter à l&amp;#8217;aide de la ligne suivante dans &lt;code&gt;/etc/default/grub&lt;/code&gt;&amp;#160;:&lt;/p&gt;

&lt;pre&gt;
GRUB_GFXPAYLOAD_LINUX=keep
&lt;/pre&gt;


&lt;p&gt;Mettez ensuite à jour votre grub&amp;#160;:&lt;/p&gt;

&lt;pre&gt;
$ sudo update-grub
&lt;/pre&gt;


&lt;p&gt;Et voilà&amp;#160;! Vous devriez normalement avoir une jolie console graphique au prochain démarrage.&lt;/p&gt;


&lt;p&gt;En guise de complément, on pourra aussi noter que&amp;#160;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;on peut configurer la police de la console graphique et sa taille en modifiant les paramètres &lt;code&gt;FONTFACE&lt;/code&gt; et &lt;code&gt;FONTSIZE&lt;/code&gt; du fichier &lt;code&gt;/etc/default/console-setup&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;si vous ne savez pas quelle résolution indiquer dans &lt;code&gt;GRUB_GFXMODE&lt;/code&gt;, vous pouvez ouvrir une console grub en tapant sur &lt;code&gt;c&lt;/code&gt; à l&amp;#8217;invite de grub et tapez ensuite la commande &lt;code&gt;vbeinfo&lt;/code&gt;, qui liste les modes graphiques supportés par votre système.&lt;/li&gt;
&lt;/ul&gt;</content>

    


      </entry>
  
  <entry>
    <title>Comment révoquer une clé PGP</title>
    <link href="https://blog.nozav.org/post/2010/03/08/Comment-r%C3%A9voquer-une-cl%C3%A9-PGP" rel="alternate" type="text/html"
    title="Comment révoquer une clé PGP" />
    <id>urn:md5:b2587faa48df24428ea40bba64d262bd</id>
    <published>2010-03-08T15:38:00+01:00</published>
          <updated>2010-03-08T16:38:30+01:00</updated>
            <author><name>Juba</name></author>
        <dc:subject>Linux, Debian, etc.</dc:subject>
        <dc:subject>gnupg</dc:subject><dc:subject>linux</dc:subject><dc:subject>pgp</dc:subject><dc:subject>sysadmin</dc:subject><dc:subject>vie privée</dc:subject>
    <content type="html">    &lt;p&gt;Je viens de révoquer une clé PGP avec GnuPG pour une ancienne adresse mail. Voici la marche à suivre.&lt;/p&gt;


&lt;p&gt;D&amp;#8217;abord il faut noter l&amp;#8217;identifiant de la clé publique que l&amp;#8217;on souhaite révoquer. Pour cela on fait un&amp;#160;:&lt;/p&gt;
&lt;pre&gt;
$ gpg --list-keys
&lt;/pre&gt;


&lt;p&gt;Et on note l&amp;#8217;identifiant (8 caractères hexadécimaux du type A1B2C3D4). Ensuite on génère un certificat de révocation qu&amp;#8217;on stocke dans un fichier&amp;#160;:&lt;/p&gt;
&lt;pre&gt;
$ gpg --gen-revoke A1B2C3D4 &amp;gt; revoke.txt
&lt;/pre&gt;


&lt;p&gt;Puis on importe ce certificat de révocation&amp;#160;:&lt;/p&gt;
&lt;pre&gt;
$ gpg --import revoke.txt
&lt;/pre&gt;


&lt;p&gt;On exporte la clé publique désormais révoquée&amp;#160;:&lt;/p&gt;
&lt;pre&gt;
$ gpg --export -a A1B2C3D4
&lt;/pre&gt;


&lt;p&gt;On peut alors uploader la sortie de cette dernière commande sur un serveur de clé type &lt;a href=&quot;http://pgp.mit.edu&quot; hreflang=&quot;en&quot;&gt;pgp.mit.edu&lt;/a&gt; et d&amp;#8217;ici peu, le monde entier sera informé que votre clé ne doit plus être utilisée.&lt;/p&gt;</content>

    


      </entry>
  
  <entry>
    <title>Don't put a dot in your cronjobs names !</title>
    <link href="https://blog.nozav.org/post/2010/02/10/Don-t-put-a-dot-in-your-cronjobs-names-%21" rel="alternate" type="text/html"
    title="Don't put a dot in your cronjobs names !" />
    <id>urn:md5:2edc0160261bd574f96664f96d6e3f09</id>
    <published>2010-02-10T17:23:00+01:00</published>
          <updated>2010-03-08T17:53:43+01:00</updated>
            <author><name>Juba</name></author>
        <dc:subject>Linux, Debian, etc.</dc:subject>
        <dc:subject>cron</dc:subject><dc:subject>sysadmin</dc:subject>
    <content type="html">    &lt;p&gt;So you just setup a wonderful new cron job on your server that will make your life easier and your family happy. You put it in your &lt;code&gt;/etc/cron.d&lt;/code&gt; in a file called &lt;code&gt;wonderfulcronjob.sh&lt;/code&gt; but&amp;#8230; your job is never launched.&lt;/p&gt;


&lt;p&gt;You checked the permissions, the crontab syntax, ran the script manually, evertything is fine. You checked your syslog, but nothing is reported on it, not even the fact that the job is started. What&amp;#8217;s the problem&amp;#160;?&lt;/p&gt;


&lt;p&gt;The answer is in the &lt;code&gt;run-parts&lt;/code&gt; manual page&amp;#160;:&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;If  the &amp;#8212;lsbsysinit  option  is not given then the names must consist entirely of upper and lower  case  letters,  digits,  underscores,  and hyphens.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;So if you put a dot in your cron job name, it will not be run at all. Rename it to &lt;code&gt;wonderfulcronjob-sh&lt;/code&gt; or just &lt;code&gt;wonderfulcronjob&lt;/code&gt; and everything should work fine.&lt;/p&gt;


&lt;p&gt;Thanks to &lt;a href=&quot;http://arnaud.luquin.info/&quot; hreflang=&quot;fr&quot;&gt;birdy&lt;/a&gt; for finding this one&amp;#8230;&lt;/p&gt;</content>

    


      </entry>
  
  <entry>
    <title>Astuces Linux du jour</title>
    <link href="https://blog.nozav.org/post/2008/12/02/Astuces-Linux-du-jour" rel="alternate" type="text/html"
    title="Astuces Linux du jour" />
    <id>urn:md5:3293041399fbb3ac00a0d3b4cd39935b</id>
    <published>2008-12-02T00:19:00+01:00</published>
          <updated>2008-12-19T23:20:32+01:00</updated>
            <author><name>Juba</name></author>
        <dc:subject>Linux, Debian, etc.</dc:subject>
        <dc:subject>debian</dc:subject><dc:subject>ipv6</dc:subject><dc:subject>linux</dc:subject><dc:subject>ssh</dc:subject><dc:subject>sysadmin</dc:subject>
    <content type="html">    &lt;h3&gt;Ajouter un utilisateur à un groupe rapido&lt;/h3&gt;


&lt;p&gt;Jusqu'ici, quand je voulais m'ajouter à un groupe, je faisais un bête :&lt;br /&gt;&lt;/p&gt;

&lt;pre&gt;
# adduser julien group
&lt;/pre&gt;


&lt;p&gt;Problème&amp;nbsp;: dans ces cas-là on est obligé de fermer sa session pour que le changement soit pris en compte. Et bien je viens de découvrir la commande &lt;code&gt;newgrp&lt;/code&gt; qui permet de faire ça directement :&lt;br /&gt;&lt;/p&gt;

&lt;pre&gt;
$ sudo adduser username group
$ newgrp group
&lt;/pre&gt;

&lt;ul&gt;
&lt;li&gt;Source&amp;nbsp;: &lt;a href=&quot;http://linuxfr.org/comments/911699.html#911699&quot; title=&quot;http://linuxfr.org/comments/911699.html#911699&quot;&gt;http://linuxfr.org/comments/911699....&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Accélérer les connexions SSH&lt;/h3&gt;


&lt;p&gt;Si vous avez tendance à vous connecter souvent aux mêmes serveurs, les versions récentes d'openSSH permettent d'accélérer les temps de connexion via du multiplexage de connexion. Pour cela il faut rajouter les lignes suivantes dans &lt;code&gt;~/.ssh/config&lt;/code&gt; (fichiers à mettre en 600)&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
Host *
ControlPath ~/.ssh/mux_socket-%r@%h:%p
&lt;/pre&gt;


&lt;p&gt;Puis de lancer un ssh de la manière suivante (par exemple dans votre &lt;code&gt;.xsession&lt;/code&gt;&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
ssh -fMN nomduserveur
&lt;/pre&gt;


&lt;p&gt;A partir de là les temps d'établissement de connexion vers ce serveur seront beaucoup plus rapides...&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Source&amp;nbsp;: &lt;a href=&quot;http://linuxfr.org/comments/911768.html#911768&quot; title=&quot;http://linuxfr.org/comments/911768.html#911768&quot;&gt;http://linuxfr.org/comments/911768....&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Faire de l'ipv6 facilement&lt;/h3&gt;


&lt;p&gt;J'avais déjà essayé deux ou trois manières de me connecter en ipv6 depuis la maison, mais c'est en général un peu lorudingue&amp;nbsp;: faut s'inscrire chez un &lt;em&gt;tunnel broker&lt;/em&gt;, mettre en place des scripts, avoir une IP fixe... Mais je viens de tomber sur un article de &lt;em&gt;Debian administration&lt;/em&gt; qui présente le paquet &lt;code&gt;miredo&lt;/code&gt; qui permet de faire tout ça de manière hyper-simple. Une commande suffit&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
# apt-get install install miredo
&lt;/pre&gt;


&lt;p&gt;Et vous aurez la joie de voir la &lt;a href=&quot;http://www.kame.net/&quot; hreflang=&quot;en&quot;&gt;tortue danser&lt;/a&gt;&amp;nbsp;!&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Source&amp;nbsp;: &lt;a href=&quot;http://www.debian-administration.org/articles/621&quot; title=&quot;http://www.debian-administration.org/articles/621&quot;&gt;http://www.debian-administration.or...&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content>

    


      </entry>
  
  <entry>
    <title>Quelles belles courbes !</title>
    <link href="https://blog.nozav.org/post/2008/11/25/Quelles-belles-courbes-%21" rel="alternate" type="text/html"
    title="Quelles belles courbes !" />
    <id>urn:md5:01baa75cce998caed10ed5dbcb7cd777</id>
    <published>2008-11-25T11:09:00+01:00</published>
          <updated>2008-11-25T12:09:35+01:00</updated>
            <author><name>Juba</name></author>
        <dc:subject>Linux, Debian, etc.</dc:subject>
        <dc:subject>postfix</dc:subject><dc:subject>script</dc:subject><dc:subject>sysadmin</dc:subject>
    <content type="html">    &lt;p&gt;Que voilà :&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;https://blog.nozav.org/public/images/z.nozav.org-postfix_mailqueue-day.png&quot; alt=&quot;Munin postfix mailqueue&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;Munin postfix mailqueue, nov. 2008&quot; /&gt;&lt;/p&gt;


&lt;p&gt;C'est quoi donc&amp;nbsp;? C'est le nombre de mails contenus dans la file d'attente du postfix de ce serveur... La jolie courbe bleue qui monte qui monte ce sont les 15000 mails reçus dans la nuit de dimanche à lundi suite à un envoi massif de spams depuis un autre serveur qui ne m'appartient pas mais dont je reçois les mails d'admin. Les 15000 mais sont tous les &lt;em&gt;Undelivered mail returned to sender&lt;/em&gt; résultant de cet envoi de spams.&lt;/p&gt;



&lt;p&gt;Bon ben tout ça n'a pas plu à mon postfix, mais surtout à mon dspam, qui a régulièrement lâché après les différentes relances effectuées dans la journée. Ça n'est que dans la soirée que j'ai vraiment pu m'occuper du problème (Lles jolies courbes verrtes sur la figure), surveiller dspam et le relancer lorsqu'il plantait. Mais vu le débit (pas plus d'un mail à la seconde, pas sûr que mon installation soit bien optimisée), j'en avais pour un moment.&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;Heureusement, j'ai pu trouver un &lt;a href=&quot;http://wiki.ouitech.fr/doku.php/tutoriels/gnu_linux/applications/script_pfdel_postfix&quot; hreflang=&quot;fr&quot;&gt;petit script&lt;/a&gt; permettant de supprimer des mails de la file d'attente à partir d'un regexp sur le résultat de &lt;code&gt;postqueue -p&lt;/code&gt;. Résultat, le script suivant&amp;nbsp;:&lt;/p&gt;



&lt;pre&gt;while true; do for i in $( sudo postqueue -p |head -n 500 | grep -i mail |awk '{print $1}'|sed s/\*// );do sudo postsuper -d $i; done; done&lt;/pre&gt;


&lt;p&gt;m'a permis de terminer l'évacuation du bouchon vers 2h du matin, au lieu de beaucoup plus tard...&lt;/p&gt;</content>

    


      </entry>
  
  <entry>
    <title>Problème avec VirtualBox</title>
    <link href="https://blog.nozav.org/post/2008/05/14/Probleme-avec-VirtualBox" rel="alternate" type="text/html"
    title="Problème avec VirtualBox" />
    <id>urn:md5:29c4c2d3201c86362e61faa53bbaa14f</id>
    <published>2008-05-14T17:54:00+02:00</published>
          <updated>2008-05-14T17:55:11+02:00</updated>
            <author><name>Juba</name></author>
        <dc:subject>Linux, Debian, etc.</dc:subject>
        <dc:subject>linux</dc:subject><dc:subject>sysadmin</dc:subject><dc:subject>VirtualBox</dc:subject>
    <content type="html">    &lt;p&gt;VirtualBox est une application de virtualisation qui peut servir, entre mille autres choses, à faire tourner un windows à l'intérieur d'un linux.&lt;/p&gt;


&lt;p&gt;Après la mise à jour de ma Debian &lt;em&gt;unstable&lt;/em&gt; effectuée ce matin, plus moyen de démarrer l'appli. J'avais un pop-up d'erreur me signalant une impossibilité de démarrer les services COM, et en cas de lancement de la commande &lt;code&gt;VirtualBox&lt;/code&gt; en ligne de commande, j'obtenais le joli message suivant&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
/usr/lib/virtualbox//VBoxSVC: symbol lookup error: /usr/lib/virtualbox/VBoxXML.so: undefined symbol: _ZN11xalanc_1_1016XalanTransformer10initializeERN11xercesc_2_713MemoryManagerE
&lt;/pre&gt;


&lt;p&gt;La solution&amp;nbsp;? Récupérer la dernière version (la 1.6) depuis le &lt;a href=&quot;http://www.virtualbox.org/wiki/Downloads&quot;&gt;site de Virtual Box&lt;/a&gt;. Apparemment leurs dépôts Debian sont un peu en retard, d'ailleurs le lien de téléchargement renvoit sur le site de Sun, je ne savais pas qu'ils avaient été rachetés...&lt;/p&gt;


&lt;p&gt;En tous cas l'installation du &lt;code&gt;.deb&lt;/code&gt; pour Debian 4.0 a résolu le problème en ce qui me concerne.&lt;/p&gt;</content>

    


      </entry>
  
  <entry>
    <title>Générer un certificat SSL auto-signé pour Apache</title>
    <link href="https://blog.nozav.org/post/2008/05/14/Generer-un-certificat-SSL-auto-signe-pour-Apache" rel="alternate" type="text/html"
    title="Générer un certificat SSL auto-signé pour Apache" />
    <id>urn:md5:6a864aebd5e5847037c19029848727db</id>
    <published>2008-05-14T11:27:00+02:00</published>
          <updated>2008-05-14T12:53:30+02:00</updated>
            <author><name>Juba</name></author>
        <dc:subject>Linux, Debian, etc.</dc:subject>
        <dc:subject>apache</dc:subject><dc:subject>linux</dc:subject><dc:subject>ssl</dc:subject><dc:subject>sysadmin</dc:subject>
    <content type="html">    &lt;p&gt;D'abord on génère une clé non chiffrée sur disque (pour éviter d'avoir à saisir un mot de passe à chaque redémarrage d'Apache)&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
# openssl genrsa -out mykey.key 1024
&lt;/pre&gt;


&lt;p&gt;Ensuite on crée un certificat signé avec cette clé&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
# openssl req -new -x509 -days 365 -key mykey.key -out mycert.crt
&lt;/pre&gt;


&lt;p&gt;Répondre à l'ensemble des questions posées. Le nom de la machine doit être donné en réponse à &lt;em&gt;Common Name&lt;/em&gt;. On peut utiliser un &lt;em&gt;wildcard&lt;/em&gt; (joker) du type &lt;code&gt;*.example.com&lt;/code&gt; pour que le certificat s'applique à un ensemble de sous-domaines.&lt;/p&gt;


&lt;p&gt;Ensuite, dans Apache, modifier le fichier de définition du &lt;em&gt;VirtualHost&lt;/em&gt; qui va bien&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
NameVirtualHost *:443
&amp;lt;VirtualHost *:443&amp;gt;

        SSLEngine on
        SSLCertificateFile    /etc/ssl/mycert.crt
        SSLCertificateKeyFile /etc/ssl/mykey.key
        SSLVerifyClient none

        [etc., etc.]

&amp;lt;/VirtualHost&amp;gt;
&lt;/pre&gt;</content>

    


      </entry>
  
  <entry>
    <title>Automatiser les mises à jour de sécurité sous Debian</title>
    <link href="https://blog.nozav.org/post/2007/01/12/65-automatiser-les-mises-a-jour-de-securite-sous-debian" rel="alternate" type="text/html"
    title="Automatiser les mises à jour de sécurité sous Debian" />
    <id>urn:md5:20bd588bdd783ee6b58f7cedf8f792a0</id>
    <published>2007-01-12T22:10:00+00:00</published>
          <updated>2009-04-06T09:22:26+00:00</updated>
            <author><name>Juba</name></author>
        <dc:subject>Linux, Debian, etc.</dc:subject>
        <dc:subject>debian</dc:subject><dc:subject>linux</dc:subject><dc:subject>sysadmin</dc:subject>
    <content type="html">    &lt;p&gt;Tout utilisateur de Debian qui se respecte connaît les dépôts de paquets spécialement conçus pour colmater les failles de sécurité. Dès qu'un problème est identifié, l'équipe de sécurité applique les correctifs existants et met tout ça à disposition le plus vite possible. Nous allons voir ici comment faire en sorte que ces mises à jour soient appliquées automatiquement, par exemple une fois par jour.&lt;/p&gt;


&lt;p&gt;La première chose à faire est d'installer le paquet &lt;code&gt;cron-apt&lt;/code&gt;, qui est spécialement fait pour ça&amp;nbsp;:&lt;/p&gt;


&lt;pre&gt;# apt-get install cron-apt&lt;/pre&gt;


&lt;p&gt;Ce paquet permet de lancer une mise à jour à intervalle régulier. Le problème est que nous ne voulons mettre à jour que les paquets concernés par les problèmes de sécurité, et pas l'ensemble de notre distribution. Ceci est particulièrement important si on utilise une distribution &lt;em&gt;testing&lt;/em&gt; ou &lt;em&gt;unstable&lt;/em&gt;. Pour cela nous allons créer une source de paquets restreinte aux dépôts de sécurité. On va donc éditer un fichier &lt;code&gt;/etc/apt/security.sources.list&lt;/code&gt; contenant la ligne suivante&amp;nbsp;:&lt;/p&gt;


&lt;pre&gt;deb http://security.debian.org/ testing/updates main contrib non-free&lt;/pre&gt;


&lt;p&gt;(remplacez &lt;code&gt;testing&lt;/code&gt; par &lt;code&gt;stable&lt;/code&gt; ou &lt;code&gt;unstable&lt;/code&gt; selon votre config)&lt;/p&gt;


&lt;p&gt;Il faut ensuite indiquer à &lt;code&gt;cron-apt&lt;/code&gt; d'utiliser ce fichier. Pour cela, ouvrez le fichier &lt;code&gt;/etc/cron-apt/config&lt;/code&gt; et ajoutez ou décommentez la ligne suivante&amp;nbsp;:&lt;/p&gt;


&lt;pre&gt;OPTIONS=&quot;-o quiet=1 -o Dir::Etc::SourceList=/etc/apt/security.sources.list&quot;&lt;/pre&gt;


&lt;p&gt;Par défaut, &lt;code&gt;cron-apt&lt;/code&gt; ne fait que mettre à jour les sources de paquets, et ne les installe pas. Si vous souhaitez automatiser également l'installation, il faut que vous rajoutiez un fichier nommé &lt;code&gt;5-install&lt;/code&gt; dans le répertoire &lt;code&gt;/etc/cron-apt/action.d/&lt;/code&gt; et qui contient la ligne suivante&amp;nbsp;:&lt;/p&gt;


&lt;pre&gt;dist-upgrade -y -o APT::Get::Show-Upgraded=true&lt;/pre&gt;


&lt;p&gt;&lt;strong&gt;Attention :&lt;/strong&gt; il est normalement déconseillé d'effectuer ce genre d'actions automatiquement sur un serveur. En cas de problèmes lors de la mise à jour, ceci peut empêcher certains services de redémarrer. Dans tous les cas, pensez à bien regarder les rapports envoyés par Cron pour vérifier que tout s'est bien dérouolé...&lt;/p&gt;


&lt;p&gt;Et voilou. Il nous reste à régler la fréquence et le moment des mises à jour. Par défaut elles ont lieu une fois par jour à 4h du matin (cf le fichier &lt;code&gt;/etc/cron.d/cron-apt&lt;/code&gt;). Ceci est très bien si vous avez un serveur qui tourne en permanence. Mais pour une machine de bureau, on pourra plutôt utiliser &lt;code&gt;anacron&lt;/code&gt; et faire un lien sympolique vers &lt;code&gt;/usr/sbin/cron-apt&lt;/code&gt; dans &lt;code&gt;/etc/cron.daily&lt;/code&gt;&amp;nbsp;:&lt;/p&gt;


&lt;pre&gt;# ln -s /usr/sbin/cron-apt /etc/cron.daily/cron-apt&lt;/pre&gt;</content>

    


      </entry>
  
  <entry>
    <title>Boîtes aux lettres corrompues par Procmail</title>
    <link href="https://blog.nozav.org/post/2006/08/18/58-boites-aux-lettres-corrompues-par-procmail" rel="alternate" type="text/html"
    title="Boîtes aux lettres corrompues par Procmail" />
    <id>urn:md5:5dcbc8591c1b45dd780d8157a72c0b39</id>
    <published>2006-08-18T22:45:11+00:00</published>
              <updated>2006-08-18T22:45:11+00:00</updated>
        <author><name>Juba</name></author>
        <dc:subject>Linux, Debian, etc.</dc:subject>
        <dc:subject>linux</dc:subject><dc:subject>procmail</dc:subject><dc:subject>sysadmin</dc:subject>
    <content type="html">    &lt;p&gt;Il y a visiblement un petit problème récurrent avec &lt;code&gt;procmail&lt;/code&gt;, l'outil de tri de courrier électronique sous Linux, que la plupart des gens utilisent sans forcément le savoir. J'avais déjà rencontré le souci il y a pas mal de temps, ça s'était réglé, et finalement c'est revenu.&lt;/p&gt;


&lt;p&gt;Le problème vient du fait qu'à certains moments, les fichiers stockant les messages reçus, du type &lt;code&gt;/var/mail/user&lt;/code&gt;, sont corrompus car ils commencent par &lt;code&gt;rom&lt;/code&gt; au lieu du traditionnel et attendu &lt;code&gt;From&lt;/code&gt;. Du coup, plus moyen d'accéder aux messages situés à l'intérieur.&lt;/p&gt;


&lt;p&gt;La solution est facile à trouver avec un minimum de &lt;em&gt;googling&lt;/em&gt;, mais je la mets ici pour m'en souvenir&amp;nbsp;: il suffit de rajouter le code suivant à la fin de votre fichier &lt;code&gt;procmailrc&lt;/code&gt; (en général, &lt;code&gt;~/.procmailrc&lt;/code&gt;).&lt;/p&gt;


&lt;pre&gt;:0
* ^^rom&lt;a href=&quot;https://blog.nozav.org/post/2006/08/18/&quot;&gt; &lt;/a&gt;
{
 LOG=&quot;*** Dropped F off From_ header! Fixing up. &quot;

 :0 fhw
 | sed -e '1s/^/F/'

}&lt;/pre&gt;</content>

    


      </entry>
  
  <entry>
    <title>Mettre en place un antivirus pour Linux à la maison</title>
    <link href="https://blog.nozav.org/post/2006/02/06/42-mettre-en-place-un-antivirus-sous-debian" rel="alternate" type="text/html"
    title="Mettre en place un antivirus pour Linux à la maison" />
    <id>urn:md5:9f78eed6291ce65bee75cd166cb8cf19</id>
    <published>2006-02-06T10:41:28+00:00</published>
          <updated>2006-02-06T10:45:01+00:00</updated>
            <author><name>Juba</name></author>
        <dc:subject>Linux, Debian, etc.</dc:subject>
        <dc:subject>antivirus</dc:subject><dc:subject>clamav</dc:subject><dc:subject>linux</dc:subject><dc:subject>perl</dc:subject><dc:subject>procmail</dc:subject><dc:subject>sysadmin</dc:subject>
    <content type="html">    &lt;p&gt;A priori, le fait d'utiliser un système Linux met déjà son utilisateur à l'abri de la plupart des virus circulant sur le réseau et qui ciblent des systèmes plus répandus et moins fiables (suivez mon regard). Mais cela ne dispense pas d'utiliser un antivirus, surtout quand il en existe de très bons libres et gratuits comme &lt;a href=&quot;http://www.clamav.net/&quot; hreflang=&quot;en&quot;&gt;ClamAV&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Voici la méthode que j'utilise pour filtrer mes mails à la maison. Elle utilise un ptit script Perl trouvé sur le web, et n'est certainement pas adéquate pour un gros serveur gérant des dizaines de comptes mails. Elle suppose que vous ayiez déjà un MTA (type postfix ou exim) qui tourne sur votre machine.&lt;/p&gt;


&lt;p&gt;La première chose à faire est d'installer clamav en tant que démon. Sous Debian, comme toujours, c'est très simple, en une commande on installe tout ça ainsi que le service de mise à jour automatique de la base de virus&amp;nbsp;:&lt;/p&gt;


&lt;p&gt;&lt;code&gt;# apt-get install clamav-freshclam clamav-daemon&lt;/code&gt;&lt;/p&gt;


&lt;p&gt;La seconde chose est de faire passer tous les mails à travers l'antivirus. Ceci se fait à l'aide de la commande &lt;code&gt;clamdscan&lt;/code&gt;. La solution la plus simple que j'ai trouvée consiste en un petit script Perl nommé &lt;a href=&quot;http://www.everysoft.com/clamfilter.html&quot; hreflang=&quot;en&quot;&gt;clamfilter.pl&lt;/a&gt;. Le seul inconvénient est qu'il n'utilise pas le démon, mais le client clamav qui lui lance un processus à chaque mail scanné et prend beaucoup plus de ressources système. Le script étant du domaine public (vive le libre !), j'ai donc modifié une dizaine de caractères pour lui faire utiliser &lt;code&gt;clamdscan&lt;/code&gt; plutôt que &lt;code&gt;clamscan&lt;/code&gt;. Le résultat est le suivant&amp;nbsp;:&lt;/p&gt;



&lt;pre&gt;#!/usr/bin/perl -w
#
# ClamFilter 1.0
# by Matt Hahnfeld (http://www.everysoft.com/)
# Requires perl, clamscan, procmail, and this script.
#
# This script is public domain.
#

use strict;
use File::Temp 'tempfile';

&amp;amp;main();
exit 0;

sub main {
  # Set up a temporary file for the original message
  my ($tmpfh, $tmpfn) = tempfile( UNLINK =&amp;gt; 1 );
  -w $tmpfn or die 'Could not open temp file!';

  # Pass 1: Write out the temporary file
  while (&amp;lt;STDIN&amp;gt;) {
    print $tmpfh $_;
  }
  seek($tmpfh, 0, 0);

  # Pass 2: Scan the message
  open CLAMSCAN, &quot;/bin/cat $tmpfn | /usr/bin/clamdscan --stdout - 2&amp;gt;/dev/null |&quot; or die 'Could not open clamscan!';
  my $clamstatus = qq|X-Virus-Found: yes
X-Virus-Status:
 &lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;
 Virus Scan Status:
 &lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;
|;
  while (&amp;lt;CLAMSCAN&amp;gt;) {
    $clamstatus .= ' ' . $_;
  }
  close CLAMSCAN;
  $clamstatus .= qq| 
 &lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;&lt;del&gt;&lt;/del&gt;

|;

  # Pass 3: Print out the message
  my $bodyflag = 0;
  while (&amp;lt;$tmpfh&amp;gt;) {
    if (! $bodyflag and $_ eq &quot;
&quot;) {
      if ($?) {
	print $clamstatus;
      }
      else {
	print &quot;
&quot;;
      }
      $bodyflag = 1;
    }
    else {
      print;
    }
  }
}&lt;/pre&gt;

&lt;p&gt;L'installation de ce script est très simple&amp;nbsp;: copiez le contenu dans un fichier &lt;code&gt;/usr/local/bin/clamfilter.pl&lt;/code&gt;, rendez le exécutable avec un petit &lt;code&gt;chmod +x clamfilter.pl&lt;/code&gt; et ajoutez la ligne suivante dans votre fichier &lt;code&gt;.procmailrc&lt;/code&gt;&amp;nbsp;:&lt;/p&gt;


&lt;pre&gt;:0fw
| /usr/local/bin/clamfilter.pl&lt;/pre&gt;


&lt;p&gt;Et voilà&amp;nbsp;! Normalement tous vos mails devraient être scannés avant leur distribution. S'ils contiennent un virus détecté, le script rajoute un flag &lt;code&gt;X-virus-found: yes&lt;/code&gt; dans les en-têtes (pratique pour créer des filtres automatiques dans votre lecteur de mail préféré) et ajoute quelques lignes d'information au début du message.&lt;/p&gt;


&lt;p&gt;Vous pouvez tester le bon fonctionnement de votre installation d'abord en vérifiant qu'un mail normal passe sans problème, et ensuite en testant avec le fichier de test d'antivirus &lt;a href=&quot;http://www.eicar.org/anti_virus_test_file.htm&quot; hreflang=&quot;en&quot;&gt;eicar&lt;/a&gt;.&lt;/p&gt;</content>

    


      </entry>
  
  <entry>
    <title>Changer récursivement les permissions de répertoires</title>
    <link href="https://blog.nozav.org/post/2005/05/12/23-changer-recursivement-les-permissions-de-repertoires" rel="alternate" type="text/html"
    title="Changer récursivement les permissions de répertoires" />
    <id>urn:md5:b773a524d46a70134f3a8cbf6dc4a00c</id>
    <published>2005-05-12T15:15:31+00:00</published>
          <updated>2005-05-13T17:02:42+00:00</updated>
            <author><name>Juba</name></author>
        <dc:subject>Linux, Debian, etc.</dc:subject>
        <dc:subject>bash</dc:subject><dc:subject>linux</dc:subject><dc:subject>script</dc:subject><dc:subject>sysadmin</dc:subject>
    <content type="html">    &lt;p&gt;Il peut parfois être utile de changer d'un coup les permissions ou les propriétés d'un répertoire et de ses sous-répertoires, mais seulement des répertoires, pas des fichiers normaux.&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;Deux exemples pratiques&amp;nbsp;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;vous venez de transférer des fichiers depuis une parto windows, et ceux-ci ont tous la permission &quot;éxecutable&quot;. Seulement, si vous faites un chmod -R -x *, vos répertoires vont perdre leur attribut exécutable et vous ne pourrez plus rentrer dedans. C'est gênant&amp;nbsp;;&lt;/li&gt;
&lt;li&gt;vous avez un répertoire (par exemple /var/www) que vous voulez partager entre plusieurs personnes d'un même groupe (par exemple le groupe web). L'idéal est de positionner le &quot;sticky bit&quot; de ce répertoire et de ses sous-répertoire pour le groupe, afin que tous les fichiers nouvellement créés appartiennent également à ce groupe. Là aussi, un chmod -R g+s * pose problème.&lt;br /&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Voilà donc la solution à ces deux problèmes. Il suffit de se positionner dans le répertoire racine choisi et de faire un&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;find . -type d | xargs chmod +x&lt;/pre&gt;

&lt;p&gt;ou, pour le deuxième problème&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;find . -type d | xargs chmod g+s&lt;br /&gt;&lt;/pre&gt;


&lt;p&gt;Et voilou&amp;nbsp;!&lt;/p&gt;</content>

    


      </entry>
  
  <entry>
    <title>Surveiller l'arrivée d'un mail</title>
    <link href="https://blog.nozav.org/post/2004/09/23/11-surveiller-larrivee-dun-mail" rel="alternate" type="text/html"
    title="Surveiller l'arrivée d'un mail" />
    <id>urn:md5:42c557c419d88408d623d0a827611557</id>
    <published>2004-09-23T11:42:03+00:00</published>
          <updated>2004-09-23T11:43:50+00:00</updated>
            <author><name>Juba</name></author>
        <dc:subject>Linux, Debian, etc.</dc:subject>
        <dc:subject>linux</dc:subject><dc:subject>procmail</dc:subject><dc:subject>sysadmin</dc:subject>
    <content type="html">    &lt;p&gt;Voici une petite astuce vous permettant de jouer un son lors de l'arrivée d'un mail ayant certaines caractéristiques (auteur, mot-clé, etc.). Ceci nécessite cependant d'utiliser procmail pour le filtrage de vos courriers, donc a priori d'être sous Linux ou équivalent.&lt;/p&gt;


&lt;p&gt;Voici les lignes à ajouter à votre .procmailrc&amp;nbsp;:&lt;/p&gt;


&lt;pre&gt;:0 hwic
* ^From:.*kikvouvoulez
| cat &amp;gt; /dev/null; /usr/bin/play /usr/share/sounds/toto.wav&lt;/pre&gt;


&lt;p&gt;Vous pouvez consulter &lt;a href=&quot;http://www.757.org/~joat/wiki/index.php/Playing_sounds_when_mail_arrives&quot;&gt;l'explication de la syntaxe&lt;/a&gt; en anglais.&lt;/p&gt;


&lt;p&gt;Pour personnaliser, il faut que vous remplaciez la deuxième ligne par l'expression rationnelle que vous voulez surveiller, et modifier la troisième ligne pour indiquer l'utilitaire pour jouer le son et le fichier à jouer.&lt;/p&gt;</content>

    


      </entry>
  
  <entry>
    <title>Régler l'heure sous Linux</title>
    <link href="https://blog.nozav.org/post/2004/08/30/9-regler-lheure-sous-linux" rel="alternate" type="text/html"
    title="Régler l'heure sous Linux" />
    <id>urn:md5:3764bdc1eb957337a3db20b9583f3e55</id>
    <published>2004-08-30T11:25:11+00:00</published>
          <updated>2004-08-30T11:42:00+00:00</updated>
            <author><name>Juba</name></author>
        <dc:subject>Linux, Debian, etc.</dc:subject>
        <dc:subject>linux</dc:subject><dc:subject>sysadmin</dc:subject>
    <content type="html">    &lt;p&gt;Je sais pas vous, mais moi j'arrive jamais à me souvenir la syntaxe de la commande date qui permet sous unix/linux de consulter et modifier l'heure du système. Donc je le note une bonne fois pour toutes ici histoire de l'avoir sous la main, et dès fois que ça puisse servir à quelqu'un d'autre...&lt;/p&gt;


&lt;p&gt;Donc la syntaxe est la suivante (en tous cas chez moi)&amp;nbsp;:&lt;/p&gt;


&lt;pre&gt;# date MMDDHHmmAA&lt;/pre&gt;


&lt;p&gt;où MM est le mois, DD le jour, HH l'heure, mm les minutes et AA l'année, tous sur deux chiffres.&lt;/p&gt;


&lt;p&gt;Par exemple, pour passer au 30 août 2004 à 11h23, la commande est, en tant que root&amp;nbsp;:&lt;/p&gt;


&lt;pre&gt;# date 0830112304&lt;/pre&gt;</content>

    


      </entry>
  
</feed>
