GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar el servidor DNS rápido y liviano MaraDNS en CentOS 7

MaraDNS es un servidor de nombres de dominio pequeño, gratuito y ligero. Es un servidor DNS alternativo de código abierto, que actúa como un servidor de nombres de almacenamiento en caché, recursivo o autorizado. Es notablemente fácil de configurar y está disponible para plataformas Linux y Windows. Se puede descargar desde aquí. Puede leer más sobre DNS, DNS recursivo, DNS autorizado aquí.

A continuación se presentan algunas características interesantes de MarDNS:

  • Fácil de instalar
  • Uso de memoria bajo (utiliza aproximadamente 5 MB de RAM)
  • Can actúa como servidor de nombres autorizado y servidor de nombres recursivo.
  • No te lo pierdas, la documentación en el sitio web de MaraDNS es muy fácil de entender.

Comencemos ahora con MaraDNS en CentOS 7. Los pasos a continuación lo guiarán sobre la instalación y configuración de MaraDNS:

Instalando MaraDNS

A partir de ahora, no hay ningún RPM disponible de MaraDNS para CentOS 7, por lo que lo instalaremos y compilaremos desde la fuente.

Instalar gcc:

sudo yum install gcc

Descargue el archivo fuente más reciente desde aquí. Puedes hacerlo como:

wget http://maradns.samiam.org/download/2.0/2.0.11/maradns-2.0.11.tar.bz2

Extraiga el contenido del archivo:

tar -xjf maradns-2.0.11.tar.bz2

Cambie al directorio MaraDNS extraído, compile e instale los programas:

cd maradns-2.0.11
sudo make
sudo make install

MaraDNS ya está instalado. El servicio MaraDNS está instalado en /etc/init.d/maradns. Simplemente puede iniciar el servicio por:

sudo /etc/init.d/maradns start

Para iniciar el demonio recursivo, ejecute:

sudo /etc/init.d/maradns.deadwood start

De forma predeterminada, el servidor de nombres autorizado escucha en el puerto 127.0.0.1 y el recursivo en el puerto 127.0.0.2.

Asegurémonos de iniciar MaraDNS al arrancar:

chkconfig maradns on


Se requiere que la secuencia de comandos de inicio del servidor DNS recursivo sea compatible con chkconfig antes de que pueda ejecutarse al inicio. Agregue el contenido a continuación a la parte superior del archivo /etc/init.d/maradns.deadwood file:

# chkconfig: - 55 45
# description: MaraDNS is secure Domain Name Server (DNS)
# probe: true

Configúrelo para que se ejecute al arrancar:

chkconfig maradns.deadwood on

Configurar MaraDNS como un servidor de nombres autorizado

Los servidores DNS autorizados "conocen" la asignación de URL a IP para cualquier dominio dado. Son la fuente de la información que los servidores DNS recursivos envían a clientes web como navegadores (Chrome, Firefox). Puede configurar MaraDNS como un servidor de nombres autorizado como:

Edite el archivo de configuración de MaraDNS, es decir, /etc/mararc:

ipv4_bind_addresses = "127.0.0.1"
chroot_dir = "/etc/maradns"
csv2 = {} csv2["example.net."] = "db.example.net"

La primera línea le dice a MaraDNS que escuche en IP-127.0.0.1. Puede agregarle más direcciones IP, separadas por comas. Por ej.- 127.0.0.1, x.x.x.x

La segunda línea chroot_dir es para mencionar el directorio donde se guardarán todos los archivos de zona.

La tercera línea inicializa el hash csv2 con el comando csv2 ={}.

La cuarta línea menciona el archivo de zona denominado db.example.net para el nombre de dominio example.net.

Aquí está el archivo de zona llamado db.example.net para el nombre de dominio example.net que se explica por sí mismo:

example.net.      +14400    soa    ns1.example.net. [email protected] 2012010117 14400 3600 604800 14400 ~ 
example.net.      +14400    ns     ns1.example.net. ~ 
example.net.      +14400    ns     ns2.example.net. ~ 
ns1.example.net.  +14400    a      127.0.0.1 ~ 
ns2.example.net.  +14400    a      127.0.0.1 ~ 
example.net.      +14400    a      127.0.0.1 ~ 
www.example.net.  +14400    a      127.0.0.1 ~ 
example.net.      +14400    mx     10 mail.example.net. ~
mail.example.net. +14400    a      127.0.0.1 ~

Comienza con la línea Start Of Authority (SOA). A continuación, especifique los servidores de nombres autorizados y los demás registros. Un registro consiste en el nombre de dominio, TTL (Tiempo de vida), el tipo de registro y el valor del registro.
Dos cosas a tener en cuenta son que todos los nombres de dominio terminan con un punto, es decir, deben ser nombres de dominio completos y todos los registros terminan con un carácter de tilde (~). Para obtener más información, consulte la documentación sobre el formato de los archivos de zona.

Para ser más simple, apuntemos a example.net a 127.0.0.1. Así es como lo haces:

example.net.    127.0.0.1 ~

Reinicie el servicio como:

sudo /etc/init.d/maradns restart

Configurar MaraDNS como servidor de nombres recursivo

Cuando su navegador web envía una consulta DNS, suponiendo que el navegador aún no tenga el mapeo almacenado en su caché, se envía a un servidor DNS recursivo. También se denomina reenvío de DNS. De manera predeterminada, escucha en el puerto 127.0.0.2 y puede agregarle más direcciones IP, separadas por comas. Por ej.- 127.0.0.2, x.x.x.x. Puede configurar MaraDNS como un servidor de nombres recursivo agregando las siguientes líneas al archivo /etc/dwood3rc:

upstream_servers = {}
upstream_servers["."] = "8.8.8.8, 8.8.4.4" # Forwarding requests to Google DNS Servers

Reinicie el servicio como:

sudo /etc/init.d/maradns.deadwood restart

¡Ya ha terminado de configurar el servidor MaraDNS! :)

Sugerencia:si desea que su servidor MaraDNS responda a consultas DNS externas, deberá:

Agregue la IP pública de su máquina a ambos archivos de configuración (/etc/mararc y /etc/dwood3rc) y modifíquelos como:

/etc/mararc:

ipv4_bind_addresses = "127.0.0.1, x.x.x.x" #Replace x.x.x.x with your machine's public address.

/etc/dwood3rc:

bind_address="127.0.0.2, x.x.x.x" #Replace x.x.x.x with your machine's public address.

recursive_acl ="0.0.0.0/0" #Para permitir conexiones desde cualquier lugar.

Puede obtener estos archivos de muestra desde aquí. No olvide reiniciar los servicios una vez más.

¡Eso es todo!


Cent OS
  1. Cómo instalar un servidor DNS en RHEL 8 / CentOS 8 Linux

  2. Cómo instalar y configurar VNC en CentOS 7

  3. Cómo instalar y usar TeamSpeak Server en CentOS 7

  4. Cómo instalar y configurar Gitlab en CentOS 8

  5. Cómo instalar y configurar Postgres 13 en Centos 8

Cómo instalar y configurar Zimbra Multi Server en CentOS 7

Cómo instalar y configurar el servidor VNC en CentOS 7 / RHEL 7

Cómo instalar y configurar Memcached en CentOS 8

Cómo instalar CentOS 7 Servidor y Escritorio

Cómo instalar y configurar el servidor DHCP en Centos 8

Cómo instalar y configurar Gitlab CE Server en Centos 8