Cette section décrit comment intégrer Plesk à un serveur DNS secondaire (esclave) externe basé sur Linux. Ce serveur copiera les données de zone de votre serveur DNS principal, mais ne pourra pas les modifier.

Vous pouvez procéder à cette intégration à l’aide de l’extension Slave DNS Manager disponible dans le Catalogue des extensions (interface de Plesk).

Note: Une seule des extensions suivantes doit être installée sur le serveur. Slave DNS Manager, Amazon Route 53 ou DigitalOcean DNS. En effet, elles gèrent toutes le DNS et rentreraient en conflit si plusieurs étaient installées.

Configurer un serveur DNS secondaire (esclave) :

Note: Ces instructions concernent Debian Linux. La séquence des étapes avec d’autres systèmes Linux est identique. Toutefois, les commandes et les chemins vers les fichiers de configuration peuvent être différents.

  1. Installez BIND si ce n’est pas déjà fait. BIND est un logiciel de gestion DNS open source. Vous pouvez vérifier s’il est installé dans l’interface :doc:`Gestion des services <59418>`, section Outils & Paramètres > Gestion des serveurs > Gestion des services, où il apparaît sous le nom « Serveur DNS (BIND) ». Si BIND n’est pas installé, vous pouvez l’installer avec la commande suivante :

    apt-get install bind9
    
  2. Dans le fichier named.conf du serveur DNS secondaire, ajoutez les informations requises suivantes :

    • L’option allow-new-zones activée dans la directive options. Si cette directive n’existe pas, vous pouvez l’ajouter.
    • Une clé secrète.
    • L’adresse IP du serveur DNS principal et une instruction pour que BIND accepte les connexions de celui-ci.

    Les ajouts à votre fichier named.conf ressembleront à l’exemple suivant :

    options {
        ...
    allow-new-zones yes;
     };
    key "rndc-key-10.69.43.240" {
    algorithm hmac-sha256;
    secret "YTQ2OGZiY2E4MDliMTY5OThkOGYyYw==";
    };
    controls {
    inet * port 953 allow { 10.69.43.240; 127.0.0.1; } keys { "rndc-key-10.69.43.240"; };
    };
    
  3. Enregistrez les modifications que vous avez apportées au fichier named.conf, puis redémarrez le service BIND en exécutant la commande suivante :

    invoke-rc.d bind9 restart
    
  4. Pour vous assurer de disposer d’une copie de votre clé secrète, ajoutez-la au fichier /etc/bind/rndc.key. Par exemple :

    key "rndc-key" {
        algorithm hmac-md5;
        secret "vwOxonI4n4CVRUhKAOAAIA==";
     };
    

Voilà ! Votre serveur de noms secondaire est configuré.

Note: Si votre serveur Plesk est derrière un NAT, le ou les serveurs DNS secondaires doivent être en dehors.

Configurer Plesk pour un serveur DNS secondaire (esclave) :

Pour configurer Plesk afin qu’il reconnaisse votre serveur DNS secondaire, ajoutez-le dans l’extension Slave DNS Manager.

Ajoutez le serveur secondaire et spécifiez son adresse IP et sa clé secrète. L’extension créera un fichier de configuration avec les paramètres du serveur secondaire pour l’utilitaire rndc.

Désormais, Plesk utilisera automatiquement les commandes suivantes pour transférer toutes les zones créées, modifiées et supprimées vers le serveur secondaire :

Création

/usr/sbin/rndc -c slave.config addzone example.com '{ type slave; file "/var/lib/bind/example.com"; masters { <plesk_ip>; }; };'

Modification

/usr/sbin/rndc -c slave.config refresh example.com

Suppression

/usr/sbin/rndc -c slave.config delzone example.com

Désormais, lorsque vous ajoutez un domaine dans Plesk, une zone DNS est créée automatiquement sur le serveur secondaire ainsi que sur le serveur principal.

Plus d’informations sur l’algorithme de l’extension :

L’extension Slave DNS Manager fonctionne selon l’algorithme suivant :

  1. Celui-ci enregistre un serveur secondaire dans les paramètres de l’extension.
  2. L’adresse IP du serveur secondaire est ajoutée automatiquement à la liste des adresses autorisées pour transférer les zones de domaines depuis le serveur Plesk.
  3. Lorsque vous créez, modifiez ou supprimez une zone de domaine active dans Plesk, Plesk crée, modifie ou supprime la zone de domaine dans le service DNS local.
  4. Le script démarre et reçoit le nom de domaine ainsi que la commande pour créer, modifier ou supprimer une zone de domaine.
  5. Le script initie la commande rndc <https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/5/html/deployment_guide/s1-bind-rndc#s1-bind-rndc>` pour chaque serveur secondaire connecté.
  6. Les serveurs secondaires synchronisent les zones de domaines avec celles sur le serveur Plesk.