<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://www.theodys.org/index.php/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
  <title>Theodys.org - comment</title>
  <link>http://www.theodys.org/index.php/</link>
  <description>Le blog de theodys societe commerciale de service informatique a bordeaux, nous mettons à disposition des internautes quelques guides, tutoriels et autres tutos concernant généralement des problemes que nous avons pu avoir au cour de nos interventions developpements</description>
  <language>fr</language>
  <pubDate>Fri, 14 Nov 2008 15:02:33 +0100</pubDate>
  <copyright>Theodys</copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Mise en place d'un serveur DNS dynamique</title>
    <link>http://www.theodys.org/index.php/post/2006/08/27/Mise-en-place-dun-serveur-DNS-dynamique</link>
    <guid isPermaLink="false">urn:md5:459ab504018bfc27ae51409c92175e36</guid>
    <pubDate>Sun, 27 Aug 2006 17:49:00 +0200</pubDate>
    <dc:creator>mimi</dc:creator>
        <category>Linux</category>
        <category>BIND</category><category>comment</category><category>DNS</category><category>Linux</category><category>Windows</category>    
    <description>Tutorial sur la mise en oeuvre d'un serveur DNS (&lt;a hreflang=&quot;en&quot; href=&quot;http://www.isc.org/sw/bind/bind9.3.php&quot;&gt;BIND&lt;/a&gt;) Dynamique sous linux.    &lt;p&gt;&lt;a hreflang=&quot;en&quot; href=&quot;http://www.isc.org/sw/bind/bind9.3.php&quot;&gt;BIND&lt;/a&gt; (Berkeley Internet Name Domain) est surement un des serveurs les plus utilisés pour le bon fonctionnement d'Internet. C'est ce logiciel qui gère la plupart des noms de domaine sur Internet, il permet entre autre de gérer la correspondance entre adresses IP et nom de domaine.&lt;/p&gt;
&lt;p&gt;Je ne reviendrais pas dans cet article sur le fonctionnement de DNS ni sur l'installation ni sur la  configuration du systeme, je partirais donc du principe que vous avez déjà installé un serveur DNS, qu'au moins un nom de domaine est configuré, et que jusqu'ici tout fonctionne correctement.&lt;/p&gt;
&lt;div class=&quot;titre1&quot;&gt;Pourquoi un DNS dynamique ?&lt;/div&gt;
&lt;p&gt;Si vous avez configuré un serveur DNS vous avez du remarqué que si l'adresse IP d'une machine change, il faudra aller modififier le fichier des enregistrements du domaine pour que la nouvelle adresse IP soit prise en compte. Souvent l'exemple donné est une machine qui reçoit une adresse IP via DHCP, et qui change à chaque redémarrage, par défaut DNS ne le sait pas, il faut donc faire la mise à jour à la main !&lt;/p&gt;
&lt;p&gt;Vous me direz, pourquoi ne pas utilisé un service de type DynDNS ? Ben simplement parce que je souhaite utiliser mon propre nom de domaine, et que ce dernier est hébergé sur un serveur Dédié ...&lt;/p&gt;
&lt;p&gt;Mettre en place un DNS dynamique permettra donc de s'affranchir de la mise à jour de DNS, elle se fera toute seule ! &lt;br /&gt;La mise à jour automatique via DHCP est possible, mais n'est pour le moment pas l'objet de ce guide. Voyons la configuration de test ainsi que les objectifs à atteindre&lt;/p&gt;
&lt;div class=&quot;titre1&quot;&gt;Configuration et Objectifs&lt;/div&gt;
&lt;div class=&quot;titre2&quot;&gt;Configuration :&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt; Serveur DNS : NS.domaine.com &lt;/li&gt;
&lt;li&gt; Zone : domaine.net &lt;/li&gt;
&lt;li&gt; Logiciels : BIND ... et ... c'est tout &lt;img src=&quot;/themes/default/smilies/wink.png&quot; alt=&quot;;)&quot; class=&quot;smiley&quot; /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;titre2&quot;&gt;Objectifs :&lt;/div&gt;
&lt;p&gt;J'ai une machine (monpc) connecté à Internet via mon FAI avec une adresse IP dynamique (a peu prés comme tout le mode quoi ...), j'aimerais mettre en place certains services sur cette machine et y acceder de n'importe où. Je pourrais utiliser un service de type DynDNS, mais j'ai envie d'utiliser mon propre nom de domaine, qui, comme je l'ai déjà dit, est hébergé sur un serveur Dédié.&lt;/p&gt;
&lt;p&gt;L'objectif est donc d'arriver à mettre à jour un hôte de ma zone : domaine.net. De façon a pouvoir acceder à ma machine en utilisant l'URL suivante : monpc.mondomaine.net.&lt;/p&gt;
&lt;p&gt;Je voudrais aussi que la transaction soit assez sécurisée (un peu plus qu'avec un login/password quoi !)&lt;/p&gt;
&lt;p&gt;Je voudrais aussi que certains de mes amis puissent utiliser le système pour leurs machines&lt;/p&gt;
&lt;p&gt;Enfin ma machine connectée à Internet tourne sous la distribution IPCOP, et donc je souhaiterais automatisée la mise a jour de ma zone à chaque changement d'IP&lt;/p&gt;
&lt;div class=&quot;titre1&quot;&gt;Etape 1 : Génération de la clé &lt;/div&gt;
&lt;p&gt;Comme je l'ai précisé plus haut, je souhaiterais que la mise à jour de mla zone se fasse de manière sécurisée. Nous allons donc utilisée une clé de cryptage générée à l'aide de la commande &lt;span class=&quot;command&quot;&gt;dnssec-keygen&lt;/span&gt; fournie avec BIND, la clé générée sera au format TSIG on parle d'ailleur de clé TSIG.&lt;br /&gt;
Je me place donc dans le répertoire de mon choix et je génére la clé ... Comme les zones gérées par mon serveur sont stockées dans le répertoire &lt;span class=&quot;command&quot;&gt;/var/named/zones/&lt;/span&gt;, j'ai créé le dossier &lt;span class=&quot;command&quot;&gt;/var/named/keys/&lt;/span&gt; dans lequel je sotckerais mes clés générées.&lt;br /&gt;Voyons donc la génération des clés :&lt;/p&gt;
&lt;fieldset class=&quot;code&quot;&gt;
&lt;legend&gt;Création d'une clé de cryptage&lt;/legend&gt;
[root@monsrv ~]# cd /var/named/keys/ &lt;span class=&quot;commentaire&quot;&gt; // Je me place dans le bon repertoire&lt;/span&gt;&lt;br /&gt;
[root@monsrv keys]# /usr/sbin/dnssec-keygen -a HMAC-MD5 -b 512 -n HOST macle1 &lt;span class=&quot;commentaire&quot;&gt; // Je génére ma clé&lt;/span&gt;&lt;br /&gt;
Kmacle1.+157+30505 &lt;span class=&quot;commentaire&quot;&gt; // La réponse : le nom de ma clé&lt;/span&gt;&lt;br /&gt;
[root@monsrv keys]# chown named.named ./Kmacle1.+157+30505.* &lt;span class=&quot;commentaire&quot;&gt; // Je rend l'utilisateur named propriétaire de ma clé&lt;/span&gt;&lt;br /&gt;
&lt;/fieldset&gt;
&lt;div class=&quot;titre2&quot;&gt;Explications :&lt;/div&gt;
&lt;p&gt;Vous l'aurez compris, c'est la deuxième ligne qui est la plus intéressante, en effet, c'est cette ligne qui permet de créer la clé ... &lt;br /&gt;Une info, quand meme, chez moi l'utilitaire &lt;span class=&quot;command&quot;&gt;dnssec-keygen&lt;/span&gt; se trouve dans le répetoire &lt;span class=&quot;command&quot;&gt;/usr/sbin/&lt;/span&gt;, il pourra se trouver ailleurs sur votre machine en fonction de votre installation de BIND, uiliser &lt;span class=&quot;command&quot;&gt;find&lt;/span&gt; ou &lt;span class=&quot;command&quot;&gt;locate&lt;/span&gt; pour le trouver ...&lt;br /&gt;Revenons sur la deuxième ligne de notre exemple, on comprendra aisément que &lt;span class=&quot;command&quot;&gt; -a HMAC-MD5&lt;/span&gt; détermine le protocole de cryptage utilisé, le parametre &lt;span class=&quot;command&quot;&gt; -b 512&lt;/span&gt; détermine la longueur de la clé, le parametre &lt;span class=&quot;command&quot;&gt; -n HOST &lt;/span&gt; détermine le type d'enregistrement, il peut avoir les valeurs : &lt;span class=&quot;command&quot;&gt;ZONE | HOST | ENTITY | USER&lt;/span&gt;, et enfin macle1 est le nom de ma clé.
&lt;/p&gt;
&lt;p&gt;Pour en savoir plus sur les paramètres de &lt;span class=&quot;command&quot;&gt;dnssec-keygen&lt;/span&gt;, utilsé l'argument &lt;span class=&quot;command&quot;&gt;-?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Si on regarde le contenu de notre répertoire &lt;span class=&quot;command&quot;&gt;/var/named/keys/&lt;/span&gt; on verra 2 fichiers qui ont le même nom, et qui finissent par &lt;span class=&quot;command&quot;&gt;.private&lt;/span&gt; et &lt;span class=&quot;command&quot;&gt;.key&lt;/span&gt; soit : &lt;span class=&quot;command&quot;&gt;Kmacle1.+157+30505.private et Kmacle1.+157+30505.key&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Voyons à quoi ressemble la clé générée : &lt;/p&gt;
&lt;fieldset class=&quot;code&quot;&gt;
&lt;legend&gt;Contenu du fichier .key&lt;/legend&gt;
vi Kmacle1.+157+30505.key&lt;br /&gt;
&lt;br /&gt;
macle1. IN KEY 512 3 157 Zwc51Lxzt6ggjmrVRZuoBqKg/Y3S8ulAsrCNMRY+2dgQdwWwCaElBHnGYHoWdewF59w58YfEP/xUbgKDYPSUNg==&lt;br /&gt;
~&lt;br /&gt;
~&lt;br /&gt;
~&lt;br /&gt;
&amp;quot;./keys/Kmacle1.+157+30505.key&amp;quot; 1L, 115C
&lt;/fieldset&gt;
&lt;p&gt;La clé macle1 est donc : &lt;span class=&quot;command&quot;&gt;Zwc51Lxzt6ggjmrVRZuoBqKg/Y3S8ulAsrCNMRY+2dgQdwWwCaElBHnGYHoWdewF59w58YfEP/xUbgKDYPSUNg==
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Maintenant voyons comment configurer notre zone DNS&lt;/p&gt;
&lt;div class=&quot;titre1&quot;&gt;Etape 2 : Configuration de la zone&lt;/div&gt;
&lt;div class=&quot;titre2&quot;&gt;Création d'un fichier de clés&lt;/div&gt;
&lt;p&gt;Maintenant que la clé est définie, nous allons créer un fichier qui contiendra toutes les clés définies, et ce pour faciliter l'administration de votre serveur et donc ne pas surcharger le fichier de configuratiion de BIND (&lt;span class=&quot;command&quot;&gt;/etc/named.conf&lt;/span&gt; chez moi ...).  &lt;/p&gt;
&lt;p&gt;On va donc créer un fichier : &lt;span class=&quot;command&quot;&gt;/var/named/theokeys.conf&lt;/span&gt;, bien sur le nom du fichier importe peu ... &lt;/p&gt;
&lt;fieldset class=&quot;code&quot;&gt;
&lt;legend&gt;/var/named/theokeys.conf&lt;/legend&gt;
vi /var/named/theokeys.conf&lt;br /&gt;&lt;br /&gt;
key macle1 {&lt;br /&gt;
    algorithm HMAC-MD5;&lt;br /&gt;
    secret &amp;quot;Zwc51Lxzt6ggjmrVRZuoBqKg/Y3S8ulAsrCNMRY+2dgQdwWwCaElBHnGYHoWdewF59w58YfEP/xUbgKDYPSUNg==&amp;quot;;
&lt;br /&gt;
};&lt;br /&gt;
~&lt;br /&gt;
~&lt;br /&gt;
~&lt;br /&gt;
&amp;quot;/var/named/theokeys.conf&amp;quot; 14L, 438C
&lt;/fieldset&gt;
&lt;p&gt;On remarquera, que le nom de la clé &lt;span class=&quot;command&quot;&gt;&amp;quot;macle1&amp;quot;&lt;/span&gt; est celui chosi lors de la génération, de la même maniere, l'algorithme de cryptage &lt;span class=&quot;command&quot;&gt;HDMA-MD5&lt;/span&gt;, est l'algorithme choisi, et enfin la valeur de &lt;span class=&quot;command&quot;&gt;secret&lt;/span&gt; est la clé propement dite !&lt;/p&gt;
&lt;div class=&quot;titre2&quot;&gt;Modification du fichier de configuration&lt;/div&gt;
&lt;p&gt;Donc on a créer un fichier de clé, maintenant il va falloir configurer &lt;span class=&quot;command&quot;&gt;named&lt;/span&gt;, pour qu'il le prenne en compte, et il faudra ensuite définir les &amp;quot;droits des clés&amp;quot;, c'est-à-dire ce que le proprietaire de  la clé à le droit de mettre à jour dans notre configuration&lt;/p&gt;
&lt;p&gt;Dans un premier temps on va insérer le fichier de clés à la configuration de &lt;span class=&quot;command&quot;&gt;named&lt;/span&gt;&lt;/p&gt;
&lt;fieldset class=&quot;code&quot;&gt;
&lt;legend&gt;/etc/named.conf&lt;/legend&gt;
vi /etc/named.conf &lt;br /&gt;
&lt;br /&gt;
options {&lt;br /&gt;
        directory &amp;quot;/var/named&amp;quot;;&lt;br /&gt;
};&lt;br /&gt;
//&lt;br /&gt;
// a caching only nameserver config&lt;br /&gt;
//&lt;br /&gt;
controls {&lt;br /&gt;
        inet 127.0.0.1 allow { localhost; } keys { rndckey; };&lt;br /&gt;
};&lt;br /&gt;
zone &amp;quot;.&amp;quot; IN {&lt;br /&gt;
        type hint;&lt;br /&gt;
        file &amp;quot;named.ca&amp;quot;;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;localhost&amp;quot; IN {&lt;br /&gt;
        type master;&lt;br /&gt;
        file &amp;quot;localhost.zone&amp;quot;;&lt;br /&gt;
        allow-update { none; };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
zone &amp;quot;0.0.127.in-addr.arpa&amp;quot; IN {&lt;br /&gt;
        type master;&lt;br /&gt;
        file &amp;quot;named.local&amp;quot;;&lt;br /&gt;
        allow-update { none; };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
include &amp;quot;/etc/rndc.key&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
* Cles pour Dynamique DNS &lt;br /&gt;
*/&lt;br /&gt;
include &amp;quot;/var/named/theokeys.conf&amp;quot;; &lt;span class=&quot;commentaire&quot;&gt; // Inclusion du fichier de clés&lt;/span&gt;
&lt;br /&gt;
// Configuration des zones &lt;br /&gt;
zone &amp;quot;domaine.net&amp;quot; {&lt;br /&gt;
        type master;&lt;br /&gt;
        file &amp;quot;/var/named/domaine.net.hosts&amp;quot;;&lt;br /&gt;
};&lt;br /&gt;
&lt;/fieldset&gt;
&lt;p&gt; Si on redemarre &lt;span class=&quot;command&quot;&gt;named&lt;/span&gt; notre fichier de clés sera donc pris en compte, par contre pour le moment nous n'avons défini aucun droit pour notre clé&lt;/p&gt;
&lt;p&gt;Dans mon exemple, je souhaiterais que l'hôte : &lt;span class=&quot;command&quot;&gt;mimi.domaine.net &lt;/span&gt; puisse être mis à jour à l'aide de la clé &lt;span class=&quot;command&quot;&gt;macle1&lt;/span&gt;, on va donc rajouter une ligne à configuration de la zone &lt;span class=&quot;command&quot;&gt;domaine.net&lt;/span&gt;&lt;/p&gt;
&lt;fieldset class=&quot;code&quot;&gt;
&lt;legend&gt;Modification de la zone domaine.net&lt;/legend&gt;
---&lt;br /&gt;
zone &amp;quot;domaine.net&amp;quot; {&lt;br /&gt;
        type master;&lt;br /&gt;
        file &amp;quot;/var/named/domaine.net.hosts&amp;quot;;&lt;br /&gt;
        update-policy {&lt;br /&gt;
                grant macle1. name mimi.domaine.net. A TXT;&lt;br /&gt;
        };&lt;br /&gt;
};&lt;br /&gt;
---&lt;br /&gt;
&lt;/fieldset&gt;
&lt;p&gt;Dans cet exemple, j'ai donné l'autorisation à la clé &lt;span class=&quot;command&quot;&gt;macle1&lt;/span&gt; de modifié l'enregistrement DNS de &lt;span class=&quot;command&quot;&gt;mimi.domaine.net&lt;/span&gt;, et ce uniquement pour les type d'enregistrement &lt;span class=&quot;command&quot;&gt;A&lt;/span&gt; et &lt;span class=&quot;command&quot;&gt;TXT&lt;/span&gt;&lt;br /&gt;J'aurais aussi pu autoriser la clé &lt;span class=&quot;command&quot;&gt;macle1&lt;/span&gt; a modifier la zone dans son intégralité en insérant (à la place de la section &lt;span class=&quot;command&quot;&gt;update-policy&lt;/span&gt;) la valeur suivante :&lt;/p&gt;
&lt;fieldset class=&quot;code&quot;&gt;
&lt;legend&gt;Exemple 2 : macle1 allow-update&lt;/legend&gt;
---&lt;br /&gt;
zone &amp;quot;domaine.net&amp;quot; {&lt;br /&gt;
        type master;&lt;br /&gt;
        file &amp;quot;/var/named/domaine.net.hosts&amp;quot;;&lt;br /&gt;
        allow-update {&lt;br /&gt;
                key macle1;&lt;br /&gt;
        };&lt;br /&gt;
};&lt;br /&gt;
---&lt;br /&gt;
&lt;/fieldset&gt;
&lt;p&gt;Mais pour des raisons de sécurité et d'intégrité de ma zone, je préfere utilisé l'instruction &lt;span class=&quot;command&quot;&gt;update-policy&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;La syntaxe des lignes de cette instruction est la suivante :&lt;/p&gt;
&lt;fieldset class=&quot;code&quot;&gt;
&lt;legend&gt;Exemple 2 : syntaxe de update-policy&lt;/legend&gt;
...&lt;br /&gt;
        update-policy {&lt;br /&gt;
                grant &amp;lt;key&amp;gt; &amp;lt;type&amp;gt; &amp;lt;zone&amp;gt; &amp;lt;record-types&amp;gt;;&lt;br /&gt;
        };&lt;br /&gt;
...&lt;br /&gt;
&lt;/fieldset&gt;
&lt;p&gt;Explications : &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&amp;lt;key&amp;gt; : Doit correspondre à une clé du fichier &lt;span class=&quot;command&quot;&gt;/var/named/theokeys.conf&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&amp;lt;type&amp;gt; : Correspond au type de l'autorisation, peut prendre &lt;span class=&quot;command&quot;&gt;name&lt;/span&gt; ou &lt;span class=&quot;command&quot;&gt;subdomain&lt;/span&gt; &lt;/li&gt;
&lt;li&gt;&amp;lt;zone&amp;gt; : Indique la zone ou le sous-domaine à mettre à jour&lt;/li&gt;
&lt;li&gt;&amp;lt;record-type&amp;gt; : Précise le type d'enregistrement qui peuvent être mis à jour&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Maintenant que la mise à jour dynamique est mise en place voyons comment cela fonctionne coté client !&lt;/p&gt;
&lt;div class=&quot;titre1&quot;&gt;Etape 3 : Mise à jour des enregistrements (nsupdate)&lt;/div&gt;
&lt;div class=&quot;titre2&quot;&gt;Récupération des clés&lt;/div&gt;
&lt;p&gt;Comme nous avons créer des clés pour autoriser les mises à jour, il faut que les clients les récupèrent pour pouvoir mettre à jour leurs enregistrements, je ne détaillerais pas ce point, car c'est assez facile, personnellement j'ai crée un fichier &lt;span class=&quot;command&quot;&gt;.tar.gz &lt;/span&gt; contenant les fichiers &lt;span class=&quot;command&quot;&gt;.key&lt;/span&gt; et &lt;span class=&quot;command&quot;&gt;.private&lt;/span&gt; de ma clé et que j'ai ensuite placé dans un répertoire accessible via FTP, j'ai récupéré ce fichier via FTP, puis je l'ai supprimé pour des raisons de sécurité.&lt;/p&gt;
&lt;p&gt;Ce n'est certainement pas la meilleure solution, mais s'en ai une !&lt;/p&gt;
&lt;p&gt;Aprés avoir décompressé le fichier dans un dossier de mon choix sur mon poste client, je me suis penché sur l'utilisation de &lt;span class=&quot;command&quot;&gt;nsupdate&lt;/span&gt;&lt;/p&gt;
&lt;div class=&quot;titre2&quot;&gt;Utilisation de nsupdate&lt;/div&gt;
&lt;p&gt;L'utilitaire &lt;span class=&quot;command&quot;&gt;nsupdate&lt;/span&gt; est fourni avec BIND aussi bien pour &lt;a href=&quot;http://www.theodys.org/index.php/tag/Linux&quot;&gt;Linux&lt;/a&gt; que pour &lt;a href=&quot;http://www.theodys.org/index.php/tag/Windows&quot;&gt;Windows&lt;/a&gt; je vais donc expliquer comment mettre à jour l'enregistrement &lt;span class=&quot;command&quot;&gt;mimi.domaine.net&lt;/span&gt; à l'aide de cet utilitaire, pour avoir plus d'information sur &lt;span class=&quot;command&quot;&gt;nsupdate&lt;/span&gt; consultez &lt;a href=&quot;http://linux.yyz.us/nsupdate/nsupdate-man.html&quot; target=&quot;_blank&quot;&gt;l'aide en ligne&lt;/a&gt; ou utilisez &lt;span class=&quot;command&quot;&gt;man nsupdate&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;La syntaxe de &lt;span class=&quot;command&quot;&gt;nsupdate&lt;/span&gt; est identique sous &lt;a href=&quot;http://www.theodys.org/index.php/tag/Windows&quot;&gt;Windows&lt;/a&gt; ou sous &lt;a href=&quot;http://www.theodys.org/index.php/tag/Linux&quot;&gt;Linux&lt;/a&gt;, la seule différence réelle va résider dans les chemins d'accés aux fichiers de clé.&lt;/p&gt;
&lt;p&gt;L'utilisation de &lt;span class=&quot;command&quot;&gt;nsupdate&lt;/span&gt; fonctionne à peu prés comme un shell (ou une invite de commande, pour les utilisateurs de &lt;a href=&quot;http://www.theodys.org/index.php/tag/Windows&quot;&gt;Windows&lt;/a&gt;), voyons un exemple :&lt;/p&gt;
&lt;fieldset class=&quot;code&quot;&gt;
&lt;legend&gt;Utilisation de &lt;span class=&quot;command&quot;&gt;nsupdate&lt;/span&gt;&lt;/legend&gt;
nsupdate -k /chemin/de/la/clé/Kmacle1.+157+30505.key
&amp;gt; _
&lt;/fieldset&gt;
&lt;p&gt;Je préfére utilsé le paramètre &lt;span class=&quot;command&quot;&gt;-k &lt;/span&gt;, mais c'est un choisx personnel, reportez vous à la documentation de &lt;span class=&quot;command&quot;&gt;nsupdate&lt;/span&gt; pour en savoir plus&lt;/p&gt;
&lt;p&gt;Une fois sur le prompt de &lt;span class=&quot;command&quot;&gt;nsupdate&lt;/span&gt;, vous pouvez envoyer des requetes au serveur pour qu'il fasse les mises à jour souhaitées :&lt;/p&gt;
&lt;fieldset class=&quot;code&quot;&gt;
&lt;legend&gt;Requêtes &lt;span class=&quot;command&quot;&gt;nsupdate&lt;/span&gt; 1&lt;/legend&gt;
nsupdate -k /chemin/de/la/clé/Kmacle1.+157+30505.key
&amp;gt;server NS.domaine.com &lt;span class=&quot;commentaire&quot;&gt;// Je me place sur mon serveur DNS&lt;/span&gt;&lt;br /&gt;
&amp;gt;zone domaine.net&lt;span class=&quot;commentaire&quot;&gt; // Je précise la zone&lt;/span&gt;&lt;br /&gt;
&amp;gt; update add mimi.domaine.net 86400 IN A www.xxx.yyy.zzz &lt;span class=&quot;commentaire&quot;&gt;// Details plus bas&lt;/span&gt;&lt;br /&gt;
&amp;gt; &lt;span class=&quot;commentaire&quot;&gt;// Appuyer encore sur [ENTREE] pour que nsupdate excute la commande&lt;/span&gt;
&lt;/fieldset&gt;
&lt;p&gt;Explcations :&lt;/p&gt;
&lt;p&gt;La ligne &lt;span class=&quot;command&quot;&gt;update add mimi.domaine.net 86400 IN A www.xxx.yyy.zzz&lt;/span&gt;, vous l'aurez compris est la requête à proprement parlé, en gros là je dis à &lt;span class=&quot;command&quot;&gt;named&lt;/span&gt; Ajoute l'hôte &lt;span class=&quot;command&quot;&gt;mimi.domaine.net&lt;/span&gt; pour une durée de &lt;span class=&quot;command&quot;&gt;86400&lt;/span&gt; secondes (soit 1 jour), le type d'enregistrement est &lt;span class=&quot;command&quot;&gt;A&lt;/span&gt;, et l'adresse IP est  &lt;span class=&quot;command&quot;&gt;www.xxx.yyy.zzz&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;On notera, que pour que le serveur prenne en compte les requêtes, il faut valider une ligne vide !&lt;br /&gt;
&lt;br /&gt; Vous remarquerez que c'est assez simple d'utilisation, une chose quand même, si vous aviez déjà ajouté l'hôte, il faudra le
supprimer avant de le rajouter afin de le mettre à jour ! exemple :  &lt;/p&gt;
&lt;fieldset class=&quot;code&quot;&gt;
&lt;legend&gt;Requêtes &lt;span class=&quot;command&quot;&gt;nsupdate&lt;/span&gt; 2&lt;/legend&gt;
nsupdate -k /chemin/de/la/clé/Kmacle1.+157+30505.key
&amp;gt; server NS.domaine.com &lt;span class=&quot;commentaire&quot;&gt;// Je me place sur mon serveur DNS&lt;/span&gt;&lt;br /&gt;
&amp;gt; zone domaine.net&lt;span class=&quot;commentaire&quot;&gt; // Je précise la zone&lt;/span&gt;&lt;br /&gt;
&amp;gt; update delete mimi.domaine.net A &lt;span class=&quot;commentaire&quot;&gt;// On supprime l'enregistrement&lt;/span&gt;&lt;br /&gt;
&amp;gt; update add mimi.domaine.net 86400 IN A www.xxx.yyy.zzz &lt;span class=&quot;commentaire&quot;&gt;// On ajoute l'enregistrement&lt;/span&gt;&lt;br /&gt;
&amp;gt; &lt;span class=&quot;commentaire&quot;&gt;// Appuyer encore sur [ENTREE] pour que nsupdate excute la commande&lt;/span&gt;
&lt;/fieldset&gt;
&lt;p&gt;Voilà maintenant vous pouvez tester la configuration, avec des utilisaires systèmes comme &lt;span class=&quot;command&quot;&gt;ping&lt;/span&gt;, &lt;span class=&quot;command&quot;&gt;dig&lt;/span&gt; ou encore &lt;span class=&quot;command&quot;&gt;nslookup&lt;/span&gt;, à vous de choisir !&lt;/p&gt;
&lt;p&gt;Bon, la mise à jour de notre serveur DNS fonctionne, c'est bien, mais ce serait encore mieux si la mise à jour se faisait de façon automatique à chaque fois que l'adresse IP de ma machine change ...&lt;/p&gt;
&lt;div class=&quot;titre2&quot;&gt;Automatisation de la mise à jour&lt;/div&gt;
&lt;div class=&quot;titre3&quot;&gt;Sous Linux&lt;/div&gt;
&lt;p&gt;J'ai crée un petit script &lt;span class=&quot;command&quot;&gt;bash&lt;/span&gt; permettant de mettre à jour le serveur DNS de façon automatique (à savoir sans interaction avec l'utilisateur). Vous pouvez utiliser ce script pour vos besoins ... Et si vous prenez l'envie de l'améliorer, j'espere que vous penserez à me le faire savoir ...&lt;/p&gt;
&lt;p&gt;Voici le script :&lt;/p&gt;
&lt;fieldset class=&quot;code&quot;&gt;
&lt;legend&gt;Script : nsupdte.sh&lt;/legend&gt;
#!/bin/bash&lt;br /&gt;
#&lt;br /&gt;
# Auteur : Rémi Goyard &lt;br /&gt;
# version 1.0&lt;br /&gt;
# LICENCE : Faites en ce que vous voulez... &lt;br /&gt;
&lt;br /&gt;
### Parametres à modifier&lt;br /&gt;
IPADDR=`cat /chemin/de/local-ipaddress`&lt;br /&gt;
KEY=&amp;quot;/chemin/de/la/clé/Kmacle1.+157+30505.key&amp;quot;&lt;br /&gt;
SERVER=&amp;quot;ns.domaine.com&amp;quot;&lt;br /&gt;
ZONE=&amp;quot;domaine.net&amp;quot;&lt;br /&gt;
HOTE2=&amp;quot;hote2.domaine.net&amp;quot;&lt;br /&gt;
MIMI=&amp;quot;mimi.domaine.net&amp;quot;&lt;br /&gt;
&lt;br /&gt;
LOGFILE=&amp;quot;/var/log/nsupdate.log&amp;quot;&lt;br /&gt;
&lt;br /&gt;
cat &amp;lt;&amp;lt;eof | nsupdate -k $KEY&lt;br /&gt;
server $SERVER&lt;br /&gt;
zone $ZONE&lt;br /&gt;
update delete $HOTE2&lt;br /&gt;
update delete $MIMI&lt;br /&gt;
update add $HOTE2 84600 IN A $IPADDR&lt;br /&gt;
update add $MIMI 84600 IN A $IPADDR&lt;br /&gt;
send&lt;br /&gt;
EOF&lt;br /&gt;
&amp;gt;&amp;gt;$LOGFILE 2&amp;gt;&amp;amp;1&lt;br /&gt;
&lt;/fieldset&gt;
&lt;p&gt;Bientôt la suite ...&lt;/p&gt;
&lt;div class=&quot;titre3&quot;&gt;Sous Windows&lt;/div&gt;
&lt;p&gt;Bientôt ...&lt;/p&gt;
&lt;div class=&quot;titre2&quot;&gt;Liens et autres documents utiles&lt;/div&gt;
&lt;a href=&quot;http://www.die.net/doc/linux/man/man8/nsupdate.8.html&quot; hreflang=&quot;en&quot; target=&quot;_blank&quot; title=&quot;nsupdate(8) - Linux man page&quot;&gt;nsupdate(8) - Linux man page&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.oceanwave.com/technical-resources/unix-admin/nsupdate.html&quot; target=&quot;_blank&quot; hreflang=&quot;en&quot; title=&quot; A DDNS Server Using BIND and Nsupdat&quot;&gt;A DDNS Server Using BIND and Nsupdate&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://linux.yyz.us/dns/ddns-server.html&quot; hreflang=&quot;en&quot; target=&quot;_blank&quot; title=&quot;Painless DDNS part 2: configuring the server&quot;&gt;Painless DDNS part 2: configuring the server&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://ops.ietf.org/dns/dynupd/secure-ddns-howto.html&quot; hreflang=&quot;en&quot; target=&quot;_blank&quot; title=&quot;Secure dynamic DNS howto&quot;&gt;Secure dynamic DNS howto&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.rfc-archive.org/getrfc.php?rfc=2136&quot; hreflang=&quot;en&quot; target=&quot;_blank&quot; title=&quot;RFC 2136 - Dynamic Updates in the Domain Name System (DNS UPDATE)&quot;&gt;RFC 2136 - Dynamic Updates in the Domain Name System (DNS UPDATE)&lt;/a&gt;&lt;br /&gt;
&lt;div class=&quot;titre1&quot;&gt;Problemes et solutions&lt;/div&gt;
&lt;p&gt;A venir ....&lt;/p&gt;</description>
    
          <enclosure url="http://www.theodys.org/public/nsupdte.sh"
      length="536" type="text/plain" />
    
    
          <comments>http://www.theodys.org/index.php/post/2006/08/27/Mise-en-place-dun-serveur-DNS-dynamique#comment-form</comments>
      <wfw:comment>http://www.theodys.org/index.php/post/2006/08/27/Mise-en-place-dun-serveur-DNS-dynamique#comment-form</wfw:comment>
      <wfw:commentRss>http://www.theodys.org/index.php/feed/rss2/comments/4</wfw:commentRss>
      </item>
    
  <item>
    <title>Afficher la taille d'un dossier en ligne de commande sous linux</title>
    <link>http://www.theodys.org/index.php/post/2006/08/25/Affichage-de-la-taille-dun-dossier-en-ligne-de-commande</link>
    <guid isPermaLink="false">urn:md5:8728367e3819e3fd818e641c86b7509b</guid>
    <pubDate>Fri, 25 Aug 2006 16:28:00 +0200</pubDate>
    <dc:creator>Rémi Goyard</dc:creator>
        <category>Linux</category>
        <category>comment</category><category>Linux</category>    
    <description>Ce petit article explique comment afficher la taille d'un fichier / répertoire sous linux en ligne de commande.    C'est simple, mais ça peut etre utile.&lt;br /&gt;Il suffit d'utiliser la commande &lt;span class=&quot;command&quot;&gt;du&lt;/span&gt; pour Disk Usage.
Cette commande accepte des paramètres que vous pouvez voir dans le détail en utilisant  &lt;span class=&quot;command&quot;&gt;man du&lt;/span&gt;, personnellement  j'utilise essentiellement le parametre &lt;span class=&quot;command&quot;&gt;-h&lt;/span&gt; pour Human Readable, qui permet d'avoir une meilleure lisibilité du résultat.&lt;br /&gt;
&lt;fieldset class=&quot;code&quot;&gt;
&lt;legend&gt;Exemple 1 :&lt;/legend&gt;
remi@tc1000:~$ du ./repertoire/
96      ./repertoire/
&lt;/fieldset&gt;
&lt;fieldset class=&quot;code&quot;&gt;
&lt;legend&gt;Exemple 2 :&lt;/legend&gt;
remi@tc1000:~$ du -ah ./repertoire/&lt;br /&gt;
68K     ./repertoire/xvkbd-2.7a.tar.gz&lt;br /&gt;
24K     ./repertoire/tc1k-1.1.tar.gz&lt;br /&gt;
96K     ./repertoire/&lt;/fieldset&gt;
Dans ces exemples, on voit, entre autres que le paramètre &lt;span class=&quot;command&quot;&gt;-a&lt;/span&gt; permet d'afficher le contenu du répertoire de manieèe récursive, mais aussi que le paramètre &lt;span class=&quot;command&quot;&gt;-h&lt;/span&gt; permet d'afficher un K (pour Kilo Bytes) ce qui, comme je le disais plus haut, améliore la lisibilité du résultat, vous remarquerez aussi que la dernière ligne de l'exemple 2  correspond en fait à la taille totale du répertoire.&lt;br /&gt;
En espérant que ce tout petit guide pourra vous aider, je vous invite a regarder la commande &lt;span class=&quot;command&quot;&gt;df&lt;/span&gt; qui permet de faire un état des partitions de votre machine en précisant le pourcentage d'utilisation de l'espace.
&lt;fieldset class=&quot;code&quot;&gt;
&lt;legend&gt;Exemple 3 :&lt;/legend&gt;
remi@tc1000:~$ df&lt;br /&gt;
Filesystem           1K-blocks      Used Available Use% Mounted on&lt;br /&gt;
/dev/hda1              2016016   1084164    829440  57% /&lt;br /&gt;
/dev/hda2             35925864   3734456  30366424  11% /home&lt;br /&gt;
none                    248772         0    248772   0% /dev/shm&lt;br /&gt;
&lt;/fieldset&gt;
Pour en savoir plus, je vous invite là encore à utiliser les pages de manuel : &lt;span class=&quot;command&quot;&gt;man df&lt;/span&gt;.&lt;br /&gt;
Voilà, cette fois on s'arrête là ...
&lt;br /&gt;
@ Bientôt.</description>
    
    
    
          <comments>http://www.theodys.org/index.php/post/2006/08/25/Affichage-de-la-taille-dun-dossier-en-ligne-de-commande#comment-form</comments>
      <wfw:comment>http://www.theodys.org/index.php/post/2006/08/25/Affichage-de-la-taille-dun-dossier-en-ligne-de-commande#comment-form</wfw:comment>
      <wfw:commentRss>http://www.theodys.org/index.php/feed/rss2/comments/3</wfw:commentRss>
      </item>
    
</channel>
</rss>