GNU/Linux >> Tutoriales Linux >  >> Linux

Configuración de su propio servicio de nombres (DNS) con ISPConfig

Internet funciona con números de IP y para pasar de un nombre de dominio a su dirección de número de IP se utiliza el DNS del Sistema de Nombres de Dominio. Puede configurar su propio servicio de nombres o utilizar, por ejemplo, el servicio de nombres de su proveedor de alojamiento. De cualquier manera, configura una asignación de nombre de dominio completo a un número de IP. Por ejemplo, FQDN mail.howtoforge.com tiene la dirección 78.46.214.220.

Este tutorial utiliza el nombre de dominio xyzzy.tld. Host Name es un nombre dado a un host, por ejemplo, foobar. La combinación del nombre de host y el nombre de dominio da FQDN de nombre de dominio completo, por ejemplo, foobar.xyzzy.tld.

Si el dominio se utilizará fuera de su propia organización, el dominio debe estar registrado. El registrador solicita dos servidores de nombres. Al menos algunos registradores permiten registrarse primero y los servidores de nombres se pueden dar más tarde, tal vez hasta un mes después. Pero el registrador amenaza con revocar su nombre de dominio a menos que tenga dos servidores de nombres que funcionen.

Si desea ejecutar sus propios servidores de nombres, necesita dos servidores de nombres. Si solo tiene un host, puede configurarlo para ejecutar sitios web, correos electrónicos, bases de datos, etc. y servicio de nombres, pero el segundo servidor de nombres debe organizarse de alguna manera.

Si brinda servicio de nombres solo dentro de su propia organización, no necesita registrar el dominio y solo puede tener un servidor de nombres.

La parte de ISPConfig de este tutorial asume que se ha instalado una configuración multiservidor, con un host con todo excepto el servicio de nombres y dos hosts para el servicio de nombres. Tres anfitriones en total. Los nombres de host son web, ns1 y ns2. Puede usar solo dos hosts si la web también ejecuta un servicio de nombres y los otros hosts también son servidores de nombres.

El servicio de nombres tiene registros, varios tipos. Establezca registros A en el número de IP de sus hosts. Si se utiliza IPv6, es un registro AAAA. Si tiene tres hosts, configure tres registros A. Establezca dos registros NS para los nombres de host del servidor de nombres.

Recopile la información necesaria así:

1.1 Usando ISPConfig 3.x

Instale los tres hosts e ISPConfig en ellos mediante la configuración de varios servidores. Usé Debian GNU/Linux 9.5 e ISPConfig 3.1.12 cuando probé este tutorial.

Si planea tener varios dominios, es más fácil configurar Plantillas DNS. Consulte el capítulo 4.8.1.3 Plantillas del manual de ISPConfig. Aquí solo se agrega un dominio, por lo que no se utilizan plantillas.

Vaya a la pestaña DNS y presione "Agregar nueva zona DNS manualmente". Esta zona es el archivo de configuración de su dominio, puede considerar que es más o menos lo mismo que el dominio que desea utilizar.

Las capturas de pantalla muestran cómo completar el formulario de zona DNS. Si está configurando esta zona para un cliente, ingrese el cliente en el formulario. Puede dejarlo vacío si configura esta zona para usted o no desea crear clientes en ISPConfig.

Guarde y vaya a la pestaña Registros.

En la pestaña Registros, agregue registros presionando el botón verde para el registro deseado. Por ejemplo, para obtener un registro, presione el botón verde con A. Al escribir nombres de host FQDN, recuerde agregar el carácter de punto "." al final del nombre. Algunos campos en los formularios DNS de ISPConfig lo necesitan para crear una entrada de servicio de nombres que funcione correctamente. Es más fácil escribirlo siempre que recordar dónde no se necesita.

Puede agregar más registros si lo desea.

La bola roja con un número en la parte superior de la ventana del panel ISPConfig muestra que se está guardando en el disco. El número muestra cuántos registros quedan por escribir. Espere dos minutos o hasta que la bola roja desaparezca antes de realizar la prueba; de lo contrario, es posible que esté probando las configuraciones anteriores.

Si necesita más servidores de nombres, o tal vez solo tenía un host donde instaló ISPConfig, puede agregar hosts a la configuración de ISPConfig. Para los hosts que solo ejecutan el servicio de nombres, incluso un host pequeño es suficiente. Si puede instalar Linux e ISPConfig en el host y tiene una dirección IP estática, puede usarlo como servidor de nombres. Puede ejecutarlo en su oficina u hogar, pero la dirección IP estática puede ser difícil de obtener o costosa. Los proveedores de alojamiento tienen ofertas pequeñas y económicas, y puede obtener esa dirección IP estática. Puede configurar una configuración multiservidor ISPConfig, donde un host está en algún lugar y el otro host está en otro lugar.

Si está confundido, lea el manual de ISPConfig.

1.2 Uso del servicio de nombres de proveedores

Omita esto si ya usó ISPConfig para configurar el servicio de nombres.

Si sus hosts están en un proveedor de alojamiento, probablemente ofrezcan un servicio de DNS para sus clientes de alojamiento. O puede encontrar un proveedor de servicios de DNS.

Sobre cómo usar esos servicios, es difícil dar consejos precisos. Probablemente cada proveedor tenga un sistema diferente. Sin embargo, todos ellos necesitan que ingrese la información que recopiló en la tabla al principio.

Lea el capítulo anterior y adáptese al formulario de entrada de su proveedor.

Lo más probable es que el proveedor de alojamiento o el proveedor de DNS esté ejecutando un conjunto de servidores de nombres, y todos los clientes de DNS los utilizan. Los servidores de nombres probablemente se llamen ns1.yourprovider.com, ns2.yourprovider.com. El proveedor puede ofrecer registros complementarios, por lo que sus servidores de nombres aparecerán con el nombre ns1.xyzzy.tld, ns2.xyzzy.tld en su lugar. Examine las instrucciones de su proveedor si hay registros de pegamento disponibles y cómo usarlos.

1.3 Pruebas

Recuerde comprobar que el servicio de nombres ahora funciona correctamente. Inicie sesión en el host ns1 o ns2 y comience a probar. Este ejemplo se ejecuta en Debian GNU/Linux 9.5 Stretch, supongo que Ubuntu es más o menos lo mismo. Otros sistemas operativos pueden ser diferentes. Si está probando en Windows, no tiene un comando de host, use nslookup en su lugar.

[email protected]:~# host web.xyzzy.tld 192.168.250.73
Using domain server:
Name: 192.168.250.73
Address: 192.168.250.73#53
Aliases: 

web.xyzzy.tld has address 192.168.250.71
[email protected]:~#

La prueba anterior muestra que el servidor de nombres utilizado es 192.168.250.73 y resuelve el nombre web.xyzzy.tld en el número de IP 192.168.250.71, que es lo que queremos en este caso. Probarlo así es útil porque

  • El comando host prueba el servicio de nombres, si hace ping al nombre del host, puede buscar primero en el archivo /etc/hosts y, por lo tanto, es posible que no pruebe el servicio de nombres en absoluto.
  • el número de IP en el comando de host después de FQDN es la dirección del servidor de nombres donde se envía la consulta. De esta manera, estamos seguros de que estamos probando el servidor de nombres que acabamos de configurar.
  • El número de IP se usa para el servidor de nombres en lugar del nombre de host, ya que si el servicio de nombres no funciona, es posible que el nombre no se resuelva en el número de IP deseado, por lo que es mejor usar la dirección IP directamente.

Verifique otros nombres de host que configuró de manera similar.

  • Si la dirección IP devuelta es incorrecta, corríjala
  • Si no lo encuentra, revise la ortografía
  • Si no lo encuentra, marque el punto al final del FQDN en ISPConfig donde escribió los nombres
  • Si "se agotó el tiempo de espera de la conexión, no se pudo acceder a ningún servidor":el servidor de nombres no se está ejecutando o se perdió la conexión de red. Compruebe la red con el número de IP de ping, por ejemplo. Compruebe que el host se está ejecutando. Compruebe que el servicio de nombres se está ejecutando, en Debian y Ubuntu con
    systemctl status bind9.service
    .
  • Si todo lo anterior no logra obtener un servicio de nombres que funcione, vaya al capítulo Herramientas.

Verifique la información de la zona, especialmente los servidores de nombres, así:

[email protected]:~# dig @192.168.250.73 xyzzy.tld

; <<>> DiG 9.10.3-P4-Debian <<>> @192.168.250.73 xyzzy.tld
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64352
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;xyzzy.tld.			IN	A

;; ANSWER SECTION:
xyzzy.tld.		3600	IN	A	192.168.250.71

;; AUTHORITY SECTION:
xyzzy.tld.		3600	IN	NS	ns1.xyzzy.tld.
xyzzy.tld.		3600	IN	NS	ns2.xyzzy.tld.

;; ADDITIONAL SECTION:
ns1.xyzzy.tld.		3600	IN	A	192.168.250.73
ns2.xyzzy.tld.		3600	IN	A	192.168.250.75

;; Query time: 0 msec
;; SERVER: 192.168.250.73#53(192.168.250.73)
;; WHEN: Fri Aug 10 15:41:53 EEST 2018
;; MSG SIZE  rcvd: 122

[email protected]:~#

Dig obtiene el servidor de nombres al que envía la consulta desde el parámetro @. Ponga el número de IP del servidor de nombres allí.

Si la excavación muestra los registros NS correctamente y los números de IP correctos para los servidores de nombres en los registros A, entonces todo se ve bien.

Ahora haga la prueba anterior usando el otro servidor de nombres, no necesita iniciar sesión en ns2, solo ejecute los comandos nuevamente pero use el número de IP de otros servidores. Esto es para asegurarse de que el otro servidor de nombres también funcione como debería.

Puede realizar más pruebas configurando su estación de trabajo para que utilice estos nuevos servidores de nombres que ha configurado. Debe cambiar los servidores DNS en su estación de trabajo, busca como hacerlo para tu sistema operativo en manual o desde internet. En Linux puede editar el archivo /etc/resolv.conf. En Windows está en la configuración de red (mismo lugar donde configuró la obtención de la dirección IP automáticamente).

1.4 Servicio de nombres inverso

Omita esto si no necesita el servicio de nombre inverso (los registros PTR).

El servicio de nombre inverso resuelve el nombre cuando se le da la dirección IP. Es la operación inversa del servicio de nombres habitual.

Si configura un servicio de nombres interno en su organización, puede configurar un servicio de nombres inverso en los mismos servidores de nombres. Cuando use ISPConfig, primero cree la zona inversa y luego cree registros PTR en esa zona para cada número de IP que tenga.

Si el servicio de nombres inverso debe funcionar desde Internet pública, entonces no puede usar su propio servidor de nombres, ya que lo más probable es que no sea un servidor de nombres autorizado para la zona inversa de IP. Si lo es, deberías saberlo. Comuníquese con su proveedor de servicios o con la empresa que le proporcionó sus números de IP y pídales que configuren el servicio de nombre inverso. Dígales los registros PTR que necesita, o descubra cómo usar la interfaz de usuario web que la empresa de hospedaje probablemente proporcione para usar el servicio de nombres inversos.

Para configurar el servicio de nombre inverso con ISPConfig, cree la Zona DNS para el servicio inverso, debe nombrarse con los primeros tres octetos del número de IP en orden inverso con ".in-addr.arpa" agregado al final. En este caso, los números de IP son de la subred 192.168.250/24, por lo que la zona inversa se llama 250.168.192.in-addr.arpa. Recuerde agregar también registros NS a la zona inversa.

En esa zona inversa, cree registros PTR así:

La prueba es fácil con el comando host, así:

[email protected]:~# host 192.168.250.71 192.168.250.73
Using domain server:
Name: 192.168.250.73
Address: 192.168.250.73#53
Aliases: 

71.250.168.192.in-addr.arpa domain name pointer web.xyzzy.tld.

Es posible configurar muchos registros PTR para el mismo número de IP. Luego, la consulta inversa los devuelve todos. Puede que no quieras esto, así que no lo hagas a menos que sepas lo que estás haciendo.

Si configura un servidor de correo, por ejemplo, mail.xyzzy.tld, debe configurar el registro PTR ya que la mayoría de los servidores de correo verifican que el número IP de envío se resuelva en el nombre de host que usa el servidor de correo.

1.5 Herramientas

Si sospecha que el servicio de nombres no se ha iniciado, consulte con

systemctl status bind9.service

Si muestra "Activo:activo (en ejecución)...", el servicio de nombres está funcionando. No se preocupe por la posible "red inalcanzable resolviendo... AAAA " -líneas, si las obtienes significa que no tienes red IPv6 disponible.

Si el servicio de nombres se está ejecutando pero la prueba con el comando host no arroja respuestas, es posible que el archivo de zona esté defectuoso. Use named-checkzone si bind no acepta la zona. El archivo de zona defectuoso está (en Debian GNU/Linux) en el archivo /etc/bind/pri.err, es decir, se agrega .err al final del nombre del archivo. Marque así:

[email protected]:~# named-checkzone  250.168.192.in-addr.arpa /etc/bind/pri.250.168.192.in-addr.arpa.err
zone 250.168.192.in-addr.arpa/IN: has no NS records
zone 250.168.192.in-addr.arpa/IN: not loaded due to errors.
[email protected]:~#

Repare los errores, en ISPConfig si lo configuró usando el Panel ISPConfig.

Puede haber errores en el archivo de registro, detenga e inicie el servicio de nombres y vea qué hay en el archivo /var/log/syslog. Por ejemplo con

grep named /var/log/syslog

Hay sitios web que verifican la configuración de su servicio de nombres, puede usar los motores de búsqueda de Internet para encontrarlos. Conozco zonecheck.org, mxtoolbox.com, zonemaster.net.

1.6 Obtener ayuda

Si solicita ayuda en el foro, ocultar el nombre de dominio dificulta la ayuda. Si revela cuál es el dominio, es fácil verificar la configuración y dar consejos si algo está mal. Si no puede revelar el nombre de dominio públicamente y usar este Tutorial y la documentación de Interwebs no ayuda, busque a alguien en quien pueda confiar con su nombre de dominio y que conozca el servicio de nombres, luego pídale ayuda a esa persona con su dominio.

1.7 Registrar un dominio

Cuando su servicio de nombres funciona bien para su zona, puede registrarlo, o si ya estaba registrado anteriormente, ahora puede agregar servidores de nombres al registro y el dominio está disponible en Internet, después de 4 a 48 horas mientras la información del servicio de nombres viaja por todo el mundo.

Si registra xyzzy.tld y tiene un servidor de nombres ns1.xyzzy.tld, proporciona números de IP para servidores de nombres en lugar de nombres de host. Si solo proporciona el nombre de host ns1.xyzzy.tld, ¿cómo se encuentra el servidor de nombres? El único lugar donde está disponible el número de IP es ns1.xyzzy.tld, pero ¿cómo acceder a él sin conocer el número de IP? Otra forma de resolver este dilema es usar registros de cola (ver anteriormente), luego puede usar nombres en lugar de números de IP para sus servidores de nombres.

Cuando registra otro dominio plugh.tld, puede dar servidores de nombres como nombres de host ns1.xyzzy.tld y ns2.xyzzy.tld ya que el dominio xyzzy.tld ya está bien registrado y los servidores de nombres son conocidos.


Linux
  1. Configuración de la retransmisión de dominios con ISPConfig 3.1.xx

  2. Configurar Active Directory con DNS integrado

  3. Servidores de nombres de Rackspace

  4. Transfiera su alojamiento de DNS a Rackspace

  5. Cómo escribir su propio módulo kernel de Linux con un ejemplo simple

Configure su propia resolución de DNS en Debian 10 Buster con BIND9

Cómo ejecutar su propio servidor de nombres con ISPConfig y providedomain.de (Schlund)

Cómo ejecutar sus propios servidores DNS (primario y secundario) con ISPConfig 3 (Debian Squeeze)

Servidor DIY NAS Freenas:construya su propio NAS con Freenas

¿Qué es el DNS y cómo funciona el DNS? (Fundamentos del servidor de nombres de dominio)

Cómo asignar IP estática a su dominio (con el ejemplo de GoDaddy)

    host o dominio dirección IP Usado para
    xyzzy.tld 192.168.260.71 dirección de la página web
    web 192.168.250.71 servidor web
    ns1 192.168.250.73 servidor de nombres
    ns2 192.168.258.75 servidor de nombres