[OS X Server] – Configuration manuel du serveur DNS

OS X Server est un système serveur très simple d’utilisation, tout ou presque peut être fait depuis Server Admin, l’interface graphique permettant de gérer en local comme à distance notre serveur.

Pourtant il peut être intéressant de faire certaine chose en ligne de commande. Commençons par le DNS.

Comme vous le savez peut être, le serveur DNS embarqué par OS X Server n’est autre que le projet open source BIND. Pour comprendre comment marche ses fichiers de configuration, je vous renvois vers la documentation. Voyons ici simplement où son les fichier et comment sont-ils agencé, de sorte a garder une compatibilité entre les fichier que nous pourrions créer à la main et l’interface graphique. Pour les exemples nous prendrons le domaine home.lan.

Premièrement, déclarons des zone DNS, cela se passe dans : /etc/dns/publicView.conf.apple

Dans se fichier vous rajouterez quelques ligne pour indiquer à votre serveur qu’il est contrôleur principale d’un domaine. Voici ces quelques lignes :

zone "home.lan." IN {
      type master;
      file "db.home.lan.";
      allow-transfert {none;};
      allow-update {none;};
};

Faites attention à bien conserver le db devant le nom de domaine pour le nom de fichier ainsi que le « . » final, ce sera le nom du futur fichier destiné a recevoir la définition de la zone.

Maintenant il faut définir la zone en elle même, ici le fonctionnement est peut communs. Nous allons devoir définir dans le dossier /var/named/zones nos différentes zone et ensuite créer un lien dans /var/named pour que le fichier soit pris en compte.

Définissons une zone : /var/named/zones/db.home.lan.zone.apple


$TTL 259200
home.lan. IN SOA ns1.home.lan. admin.home.lan. (
      2008083001      ;Serial
      86400                ;Refresh every 24 hours
      3600                  ;Retry
      604800              ;Expire after 7 days
      345600              ;Negative caching TTL
)

home.lan.      IN      NS                 ns1.home.lan.
home.lan.      IN      MX      10      mail.home.lan.

ns1                IN      A                   192.168.1.5
mail               IN      A                   192.168.1.5

www              IN      CNAME          ns1.home.lan.

Rajoutons son lien : /var/named/db.home.lan.

Le lien en question est tout simplement un fichier texte qui contiens ceci :
$INCLUDE /var/named/zones/db.home.lan.zone.apple

Une fois cela terminé, vous devrez penser à faire la zone de recherche inverse (ex: 1.168.192.in-addr.arpa.)

Il ne vous reste qu’à démarrer le service DNS avec la commande :
sudo serveradmin start dns

Si vous avez déjà utilisé l’outil graphique de configuration du DNS vous avez remarqué qu’il y a d’autres options, dans la partie générale cette fois çi, qui va concerner le fonctionnement globale du service. Ces options sont définie dans le fichier /etc/dns/options.conf.apple. Vous pourrez entre autre y régler des serveur DNS de redirection (forward). Cette entrée définie le serveur DNS à utiliser lorsque la requette conserne une zone non gérer.
forwarders { 192.168.1.1; };

Vous pourrez aussi interdire le transfert de zone si vous le souhaitez :
allow-transfer { none; };

Tant qu’à y être, pourquoi de pas assigner le serveur utiliser par la connexion réseau de votre serveur (en toute logique dire à votre serveur qu’il doit s’utiliser lui même en serveur DNS).

Pour se faire nous avons quelques commande à tapper :
sudo networksetup -setdnsservers Ethernet 127.0.0.1
sudo networksetup -setsearchdomains Ethernet home.lan.

Ces commandes vous permettrons de définir le serveur DNS 127.0.0.1 ainsi que le domaine de recherche par défaut home.lan. pour l’interface nommé Ethernet.

Et pour finir pourquoi ne pas vérifier que le nom d’hôte de votre serveur est bien synchronisé avec celui que vous avez déclaré dans votre serveur DNS ? Utilisez pour cela la commande :
sudo changeip -checkhostname

3 réflexions au sujet de « [OS X Server] – Configuration manuel du serveur DNS »

  1. Ping : iNig-Services » [OS X Server] - Délégation de zone DNS

  2. Bonjour,

    Déjà merci pour toutes ces explications. Néanmoins j’aimerai savoir comment configurer la zone de recherche inverse en ligne de commande. Dans quel fichier doit-elle s’incrire et de quelel manière. Merci

  3. Comme je disais dans mon article, pour le fonctionnement de BIND je vous renvois vers sa documentation, mon article est uniquement la pour indiqué l’implémentation sur OS X Server à travers une démo. Pour les reverse, il suffit de lire la doc Bind et garder la même logique pour les fichiers

Laisser un commentaire