En esta sección se describe cómo integrar Plesk con un servidor DNS secundario externo basado en Linux.

La integración puede efectuarse mediante la extensión Slave DNS Manager disponible en el catálogo de extensiones del GUI de Plesk.

La extensión se rige por el siguiente algoritmo:

  1. Registra un servidor secundario en la configuración de la extensión.
  2. La dirección IP de dicho servidor se añade automáticamente a la lista de direcciones que pueden transferir zonas de dominio desde el servidor Plesk.
  3. Cuando cree, modifique o elimine una zona de dominio activa en Plesk, Plesk creará, modificará o eliminará la zona de dominio en el servicio DNS local.
  4. El script se inicia y recibe el nombre de dominio y el comando para crear, modificar o eliminar una zona de dominio.
  5. El script inicia el comando rndc para cada servidor secundario conectado.
  6. Los servidores secundarios sincronizan las zonas de dominio con las del servidor Plesk.

Nota: las instrucciones detalladas a continuación son aplicables a Debian Linux. Si bien la secuencia de pasos en otros sistemas Linux es la misma, los comandos y las rutas a los archivos de configuración pueden no ser los mismos.

Nota: en el servidor solo puede instalarse una de las siguientes extensiones a la vez: Slave DNS Manager, Amazon Route 53 o DigitalOcean DNS. Todas ellas gestionan el DNS y ocasionarán conflictos en caso de instalarse a la vez.

Para configurar un servidor DNS secundario, haga lo siguiente:

  1. Instale BIND.
apt-get install bind9
  1. Permita la creación de zonas nuevas con rndc. En el archivo /etc/bind/named.conf.options, concretamente en la directiva options {}, introduzca allow-new-zones yes;
  2. Especifique la dirección IP desde la que deberían aceptarse instrucciones de control y configure BIND para que escuche a todos los interfaces de red accesibles. En el archivo /etc/bind/named.conf.local introduzca lo siguiente:
controls {
    inet * port 953 allow { <plesk_ip>; <another_plesk_ip> 127.0.0.1; };
 };
  1. Reinicie el servicio BIND emitiendo el siguiente comando:
invoke-rc.d bind9 restart
  1. Cerciórese de que recuerda la clave secreta presente en el archivo /etc/bind/rndc.key:
key "rndc-key" {
    algorithm hmac-md5;
    secret "vwOxonI4n4CVRUhKAOAAIA==";
 };

¡Listos! Ya ha configurado el servidor de nombres secundario.

Nota: si su servidor Plesk está detrás de NAT, el servidor o servidores DNS secundarios deben estar fuera de este.

A continuación, instale la extensión en el servidor Plesk. En la configuración de la extensión, añada el servidor secundario y especifique su dirección IP y la clave secreta. La extensión creará un archivo de configuración con la configuración del servidor secundario para la utilidad rndc. A partir de este momento, Plesk transferirá automáticamente todas las zonas creadas, modificadas y eliminadas al servidor secundario mediante la ejecución de los siguientes comandos para cada servidor secundario:

# Creation

/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

# Deletion

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

Ahora, cuando añada un dominio a Plesk, en el servidor secundario y en el servidor principal se creará una zona DNS de forma automática.