Búsqueda de sitios web

Cómo configurar un solucionador de DNS local con Unbound en Rocky Linux 9


Unbound es un software de servidor DNS gratuito y de código abierto que se puede utilizar para validar, recursivo y almacenar en caché solucionadores de DNS. Es un servidor DNS rico en funciones que admite DNS sobre TLS (DoT), DNS sobre HTTPS (DoH), minimización de nombres de consultas, uso agresivo de caché validada por DNSSEC y compatibilidad con zonas de autoridad. Unbound se centra en la privacidad y seguridad del DNS, pero sin sacrificar la velocidad y el rendimiento.

Unbound está desarrollado principalmente por NLnet Labs y se distribuye bajo la licencia BSD, y admite funciones modernas en estándares abiertos de servidor DNS. Unbound ha sido auditado rigurosamente y puede ejecutarse en Linux, BSD y macOS. Unbound está disponible para la mayoría de estos sistemas operativos y se puede instalar a través del administrador de paquetes del sistema.

En este tutorial, configuraré un servidor DNS local con Unbound en un servidor Rocky Linux 9. Configurará Unbound como un DNS autoritativo, de validación y de almacenamiento en caché recursivo. Además de eso, también configurará Unbound como un solucionador de DNS para su red local con DNS sobre TLS (DoT) habilitado encima.

Hasta el final de este tutorial, también configurará registros de Unbound a través de Rsyslog y Logrotate, y también configurará una máquina cliente Linux para usar Unbound como solucionador de DNS y verificar toda su instalación desde allí.

Requisitos previos

Antes de comenzar con este tutorial, asegúrese de tener los siguientes requisitos:

  • Un servidor con Rocky Linux 9 instalado: este ejemplo utiliza un Rocky Linux con el nombre de host 'unbound-rocky' y la dirección IP '192.168.5.25'.
  • Un usuario no root con privilegios de administrador root/sudo.
  • Un SELinux se está ejecutando en modo permisivo.

Y eso es. Si se cumplen todos los requisitos, continúe y comience a instalar Unbound en su servidor.

Instalación de Unbound

Unbound es un software de servidor DNS que admite la mayoría de los sistemas operativos, incluidos Linux, BDS y macOS. En Rocky Linux, el paquete Unbound está disponible de forma predeterminada en el repositorio oficial de Rocky Linux AppStream.

En este primer paso, instalará el paquete Unbound en su sistema Rocky Linux.

Ahora ejecute el siguiente comando dnf para verificar el paquete 'unbound' disponible en el repositorio de AppStream. Al momento de escribir este artículo, el repositorio Rocky Linux AppStream proporciona Unbound 1.16.

sudo dnf info unbound

Producción :

Instale Unbound mediante el comando dnf a continuación. Cuando se le solicite, ingrese y para confirmar y presione ENTER para continuar.

sudo dnf install unbound

Producción :

Una vez instalado unbound, inicie y habilite el servicio 'unbound' a través de la siguiente utilidad de comando systemctl. Esto iniciará Unbound en su servidor Rocky Linux y permitirá que se ejecute automáticamente al iniciar el sistema.

sudo systemctl start unbound
sudo systemctl enable unbound

Verifique el servicio Unbound usando el siguiente comando systemctl. El resultado 'activo (en ejecución)' confirma que el servicio Unbound se está ejecutando. Y la salida 'cargada....; enable;...' confirma que el servicio Unbound está habilitado.

sudo systemctl status unbound

Producción :

Su Unbound ahora está instalado y ejecutándose con el archivo de configuración predeterminado '/etc/unbound/unbound.conf'. A continuación, modificará el archivo de configuración de Unbound '/etc/unbound/unbound.conf' y configurará Unbound como un DNS autoritativo, de validación y de almacenamiento en caché recursivo, y también habilitará Unbound como solucionador de DNS. con DoT habilitado.

Configurar independiente

De forma predeterminada, el archivo de configuración de Unbound se encuentra en '/etc/unbound/unbound.conf'. En este paso, modificará el archivo de configuración '/etc/unbound/unbound.conf' y luego configurará y optimizará la instalación de Unbound.

Configurará Unbound para que se ejecute como DNS autoritativo, de validación y de almacenamiento en caché recursivo. Además de eso, también optimizará la instalación de Unbound en términos de rendimiento, privacidad y seguridad. Y, por último, configurará Unbound como solucionador de DNS para redes locales.

Primero, ejecute el siguiente comando wget para descargar el archivo DNS raíz en '/etc/unbound/root.hints'. Luego, cambie la propiedad del archivo '/etc/unbound/root.hints' al usuario y grupo 'unbound'.

wget https://www.internic.net/domain/named.root -O /etc/unbound/root.hints
sudo chown unbound:unbound /etc/unbound/root.hints

A continuación, haga una copia de seguridad del archivo de configuración predeterminado de Unbound en '/etc/unbound/unbound.conf.orig' y modifique el archivo original '/etc/unbound/unbound.conf' usando el siguiente comando del nano editor.

sudo cp -v /etc/unbound/unbound{.conf,.conf.orig}
sudo nano /etc/unbound/unbound.conf

Ahora comencemos a configurar Unbound.

Configuración básica independiente

Primero, configurará qué dirección IP y puerto debe ejecutar el servicio Unbound. Luego, también configurará un paquete de certificados que se utilizará para autenticar las conexiones realizadas en sentido ascendente y agregará los servidores DNS raíz a través del parámetro 'root-hints'.

Agregue las siguientes líneas dentro de la sección 'servidor:'. Con esta configuración, ejecutará Unbound en una dirección IP local '192.168.5.25' con el puerto UDP predeterminado '53'.

server:
    ...
    ...
    # interface-automatic: no
    do-ip6: no
    interface: 192.168.5.25
    port: 53
    prefetch: yes
    tls-cert-bundle: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
    root-hints: /etc/unbound/root.hints

Parámetros detallados:

  • do-ip6: use 'yes' para ejecutar Unbound con IPv6 o establezca 'no' para deshabilitar IPv6.
  • interfaz: interfaz de red o dirección IP en la que se ejecutará unbound. Puede utilizar una dirección IP o el nombre de la interfaz como 'eth0'. Además, puede ejecutar en un puerto específico agregando un formato como este 'IP-ADDRESS@PORT'.
  • puerto: especifique el puerto en el que se ejecutará Unbound y las conexiones del cliente serán manejadas por este puerto. El puerto DNS predeterminado es 53.
  • captura previa: establezca en 'yes' para habilitar la captación previa de entradas de caché de mensajes casi caducadas.
  • tls-cert-bundle: certificados utilizados para autenticar conexiones realizadas en sentido ascendente. En la distribución basada en RHEL, el archivo de certificado se encuentra en '/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem'.
  • root-hints: un archivo que contiene detalles del servidor DNS raíz. Ha descargado este archivo en '/etc/unbound/root.hints'.

Habilitar caché DNS

Ahora agregue las siguientes líneas para habilitar el almacenamiento en caché recursivo de DNS a través de Unbound. Esto almacenará en caché las consultas DNS realizadas por los clientes en el servidor Unbound durante un período de tiempo.

    cache-max-ttl: 14400
    cache-min-ttl: 1200

Parámetros detallados:

  • cache-max-ttl: TTL o Time To Live para RRSets y mensajes en caché DNS. El formato es en segundos.
  • cache-min-ttl: tiempo de vida mínimo para el caché. El valor predeterminado es 0, pero puede cambiarlo a su gusto, como '1200' segundos. No configure esto por más de 1 hora o tendrá problemas debido a datos obsoletos.

Endurecimiento sin consolidar

Algunos parámetros de privacidad y seguridad para Unbound están habilitados de forma predeterminada en la distribución basada en RHEL. Pero también puedes agregar más parámetros como estas líneas.

    hide-identity: yes
    hide-version: yes
    use-caps-for-id: yes

Parámetros detallados:

  • hide-identity: establezca en sí para deshabilitar las respuestas de consultas vinculantes sobre id.server o hostname.bind.
  • hide-version: configúrelo en sí para deshabilitar las consultas version.server y version.bind.
  • use-caps-for-id: configúrelo en sí para habilitar el uso de '0x20-encoded' en la consulta para frustrar los intentos de falsificación.

Definición de listas de control de acceso y direcciones privadas

A continuación, deberá definir direcciones privadas y ACL (listas de control de acceso) para sus redes locales. Asegúrese de cambiar la subred local en las líneas siguientes con su entorno de red actual.

    private-address: 192.168.0.0/16
    private-address: 169.254.0.0/16
    private-address: 172.16.0.0/12
    private-address: 10.0.0.0/8
    private-address: fd00::/8
    private-address: fe80::/10
    #control which clients are allowed to make (recursive) queries
    access-control: 127.0.0.1/32 allow_snoop
    access-control: ::1 allow_snoop
    access-control: 127.0.0.0/8 allow
    access-control: 192.168.5.0/24 allow

Parámetros detallados:

  • dirección-privada: define subredes de red privadas en su infraestructura. Sólo los nombres de 'dominio-privado' y 'datos-locales' pueden tener estas direcciones privadas.
  • control de acceso: define el control de acceso en el que los clientes pueden realizar consultas (recursivas) al servidor Unbound. El parámetro 'allow' habilitará la recursividad, mientras que 'allow_snoop' habilitará tanto la recursiva como la no recursiva.

Configuración de nombres de dominio locales y subdominios

Después de configurar las listas de control de acceso y direcciones privadas, ahora creará nombres de dominio locales a través del parámetro 'zona-local' Unbound. Esto es muy útil, especialmente si tiene varias aplicaciones autohospedadas en su red local. Puede definir fácilmente su nombre de dominio o subdominios y apuntar a la dirección IP de destino específica.

En este ejemplo, configurará un dominio local 'estático' 'garden.lan' y creará múltiples subdominios a través de 'datos locales ' parámetro. Cada subdominio apuntará a una dirección IP específica y también creará registros PTR a través del parámetro 'local-data-ptr'.

    # local zone
    local-zone: "garden.lan." static
    local-data: "firewall.garden.lan.  IN A 10.0.0.1"
    local-data: "vault.garden.lan.    IN A 10.0.0.2"
    local-data: "media.garden.lan.   IN A 10.0.0.3"
    local-data: "docs.garden.lan.       IN A 10.0.0.4"
    local-data: "wiki.garden.lan.     IN A 10.0.0.5"
    local-data-ptr: "10.0.0.1  firewall.garden.lan"
    local-data-ptr: "10.0.0.2  vault.garden.lan"
    local-data-ptr: "10.0.0.3  media.garden.lan"
    local-data-ptr: "10.0.0.4  docs.garden.lan"
    local-data-ptr: "10.0.0.5  wiki.garden.lan"

Parámetros detallados:

  • local-zone: define aquí el dominio local.
  • datos-locales: define un registro para subdominios y qué dirección IP local se resolverá.
  • local-data-ptr: define el registro ptr para tus subdominios.

Optimización y ajustes ilimitados

A continuación, agregue las siguientes líneas para optimizar su instalación de Unbound. Puede ajustar y modificar los parámetros a continuación según su entorno actual.

    msg-cache-slabs: 8
    rrset-cache-slabs: 8
    infra-cache-slabs: 8
    key-cache-slabs: 8
    rrset-cache-size: 256m
    msg-cache-size: 128m
    so-rcvbuf: 8m

Parámetros detallados:

  • msg-cache-slabs: el número de losas que se utilizarán para la caché de mensajes. Configúrelo en 8 para optimizar Unbound y utilizar más memoria para el almacenamiento en caché.
  • rrset-cache-slabs: el número de losas que se utilizarán para el caché de RRset. Configúrelo en 8 para optimizar Unbound para usar más memoria para el caché RRSet.
  • infra-cache-slabs: el número de losas que se utilizarán para la caché de infraestructura. Configúrelo en 8 para optimizar Unbound y utilizar más memoria para la caché de la infraestructura.
  • key-cache-slabs: el número de losas que se utilizarán para el caché de claves. Configúrelo en 8 para optimizar Unbound para usar más memoria para el caché de claves.
  • rrset-cache-size: especifica la cantidad de memoria para el caché RRSet. Este ejemplo utiliza 256 MB, y el valor predeterminado es solo 4 MB.
  • msg-cache-size: especifica la cantidad de memoria para el caché de mensajes. Este ejemplo utiliza 128 MB, y el valor predeterminado es solo 4 MB.
  • so-rcvbuf: configure el tamaño del búfer para el puerto DNS 53/udp en 8 MB.

Configure Unbound como solucionador de DNS con DNS sobre TLS (DoT)

Por último, agregue una nueva sección 'forward-zone' para configurar Unbound como solucionador de DNS para sus redes locales. Este ejemplo utiliza servidores DNS Quad9 con DoT (DNS-over-TLS) habilitado como resolución de DNS ascendente.

forward-zone:
    name: "."
    forward-ssl-upstream: yes
    ## Also add IBM IPv6 Quad9 over TLS
    forward-addr: 9.9.9.9@853#dns.quad9.net
    forward-addr: 149.112.112.112@853#dns.quad9.net

Parámetros de detalles:

  • zona de avance: define la zona de avance para Unbound.
  • nombre: establezca en "." para reenviar todas las consultas de DNS.
  • forward-addr: utiliza un reenviador específico para reenviar todas las consultas DNS. Este ejemplo utiliza DNS Quad9 con DNS-over-TLS (DoT) habilitado.

Ahora guarde y salga del archivo '/etc/unbound/unbound.conf' cuando todo haya terminado.

A continuación, ejecute el siguiente comando para verificar las configuraciones de Unbound y asegurarse de que tiene la configuración correcta y adecuada. Cuando tenga éxito, debería obtener el resultado 'unbound-checkconf: no hay errores en /etc/unbound/unbound.conf'.

unbound-checkconf

Ahora reinicie el servicio Unbound a través de la utilidad de comando systemctl a continuación y aplique los cambios.

sudo systemctl restart unbound

Con esto, ya ha finalizado la configuración de Unbound y ahora se está ejecutando en la dirección IP '192.168.5.25' con el puerto UDP predeterminado '53'.

En los siguientes pasos, configurará el firewalld para abrir el puerto DNS y configurará el registro independiente a través de Rsyslog y Logrotate.

Configurando el firewall

Entonces, Unbound está funcionando en el puerto UDP predeterminado 53. Ahora debe abrir el puerto DNS 53/UDP en firewalld y permitir que los clientes accedan a su servidor DNS Unbound.

Ejecute el siguiente comando firewall-cmd para agregar el nuevo servicio 'dns'. Luego, recarga el firewalld para aplicar los cambios. Cuando tenga éxito, debería obtener un resultado como 'éxito' en su terminal.

sudo firewall-cmd --add-service=dns --permanent
sudo firewall-cmd --reload

A continuación, ejecute el siguiente comando para verificar la lista de servicios habilitados en firewalld. Y debería ver el servicio 'dns' agregado al firewalld.

sudo firewall-cmd --list-all

Producción :

Configuración de Unbound Log a través de Rsyslog y Logrotate

Después de configurar firewalld, ahora configurará un archivo de registro para Unbound a través de rsyslog y logrotate. El servicio rsyslog creará un archivo de registro específico para Unbound y logrotate rotará el archivo de registro de Unbound en un tiempo determinado.

Cree un nuevo archivo de configuración '/etc/rsyslog.d/unbound.conf' usando el siguiente comando del editor nano.

sudo nano /etc/rsyslog.d/unbound.conf

Agregue las siguientes líneas al archivo. Con esto, Rsyslog creará un nuevo archivo de registro '/var/log/unbound.log' para '$programname' == 'unbound'.

# Log messages generated by unbound application 
if $programname == 'unbound' then /var/log/unbound.log
# stop processing it further
& stop

Guarde y salga del archivo '/etc/rsyslog.d/unbound.conf' cuando haya terminado.

A continuación, cree un nuevo archivo de configuración de Logrottate '/etc/logrotate.d/unbound' usando el siguiente comando del nano editor.

sudo nano /etc/logrotate.d/unbound

Agregue las siguientes líneas al archivo. Esto creará una rotación de registros para el archivo de registro no vinculado '/var/log/unbound.log' diariamente.

/var/log/unbound.log {
  daily
  rotate 7
  missingok
  create 0640 root adm
  postrotate
    /usr/lib/rsyslog/rsyslog-rotate
  endscript
}

Guarde el archivo y salga del editor cuando haya terminado.

Por último, ejecute la siguiente utilidad de comando systemctl para reiniciar los servicios Rsyslog y Logrotate y aplicar los cambios a su sistema.

sudo systemctl restart rsyslog
sudo systemctl restart logrotate

Con esto, ya ha finalizado la instalación de Unbound. En el siguiente paso, aprenderá cómo configurar una máquina cliente local para usar Unbound como solucionador de DNS usando dos métodos, luego verificará el servidor DNS de Unbound desde allí.

Configurar DNS Resolver para el cliente

Para configurar la resolución de DNS en las máquinas cliente, puede utilizar diferentes métodos. En este paso, aprenderá cómo configurar solucionadores de DNS a través de NetworkManager y mediante systemd-resolved combinado con NetworkManager.

A través del administrador de red

Si desea configurar la resolución de DNS a través de NetworkManager directamente, debe editar las configuraciones de su interfaz de red, que se almacenan en el directorio '/etc/NetworkManager/system-connections/'.

En este ejemplo, la conexión principal para la máquina cliente es 'eth0', por lo que la configuración en NetworkManager debe ser '/etc/NetworkManager/system-connections/eth0.nmconnection '. Es posible que tenga diferentes nombres de interfaz, como eth1 y muchos más.

Abra el archivo de configuración de la interfaz de NetworkManager '/etc/NetworkManager/system-connections/eth0.nmconnection' usando el siguiente comando del nano editor.

sudo nano /etc/NetworkManager/system-connections/eth0.nmconnection

Agregue las siguientes líneas a la sección '[ipv4]'. Además, asegúrese de cambiar la dirección IP en el parámetro 'dns' con su servidor DNS Unbound.

[ipv4]
...
dns=192.168.5.25
ignore-auto-dns=true

Guarde y salga del archivo cuando haya terminado.

A continuación, ejecute el siguiente comando systemctl para reiniciar el servicio NetworkManager y aplicar los cambios. Luego, verifique el archivo de configuración del solucionador de DNS '/etc/resolv.conf' mediante el comando cat.

sudo systemctl restart NetworkManager
cat /etc/resolv.conf

Debería obtener un resultado de que la dirección IP '192.168.5.25' está configurada como el solucionador de DNS predeterminado para su máquina cliente.

A través de systemd-resolved y NetworkManager

Otra forma de configurar un solucionador de DNS es a través de systemd-resolved y NetworkManager. Con esto, puede cambiar fácilmente el sistema de resolución de DNS en todo el sistema y no depender de las interfaces de red de su sistema.

En distribuciones basadas en RHEL, systemd-resolved aún no está instalado. Puede instalarlo fácilmente mediante el comando dnf a continuación. Cuando se le solicite, ingrese y para confirmar y presione ENTER para continuar.

sudo dnf install systemd-resolved

Producción :

Después de instalar systemd-resolved, abra el archivo de configuración '/etc/systemd/resolved.conf' usando el siguiente comando del nano editor.

sudo nano /etc/systemd/resolved.conf

En la sección '[Resolver]', descomente el parámetro 'DNS' y agregue la dirección IP de su servidor DNS Unbound.

[Resolver]
DNS=192.168.5.25

Guarde y salga del archivo cuando haya terminado.

A continuación, ejecute el siguiente comando systemctl para iniciar y habilitar el servicio 'systemd-resolved'.

sudo systemctl start systemd-resolved
sudo systemctl enable systemd-resolved

Ahora verifique el servicio 'systemd-resolved' para asegurarse de que se esté ejecutando. Debería recibir un resultado como 'activo (en ejecución)', que confirma que el servicio se está ejecutando. Y la salida 'Loaded ../../systemd-resolved.service; habilitado;..' confirma que el servicio está habilitado y se iniciará automáticamente al iniciar el sistema.

sudo systemctl status systemd-resolved

Producción :

Con systemd-resolve en ejecución, a continuación modificará el servidor DNS para el servicio NetworkManager.

Abra el archivo de configuración de NetworkManager '/etc/NetworkManager/NetworkManager.conf' usando el siguiente comando del editor nano.

sudo nano /etc/NetworkManager/NetworkManager.conf

En la sección '[main]', agregue el parámetro 'dns' con el valor 'systemd-resolved'. Esto anulará el servidor DNS en su NetworkManager para usar el servicio 'systemd-resolved'.

[main]
dns=systemd-resolved

Guarde y salga del archivo cuando haya terminado.

Ahora ejecute el siguiente comando systemctl para reiniciar el servicio NetworkManager y aplicar los cambios. El nuevo solucionador de DNS para NetworkManager está escrito en el archivo '/run/NetworkManager/resolv.conf'.

sudo systemctl restart NetworkManager

Ejecute el siguiente comando para eliminar el archivo predeterminado '/etc/resolve.conf'. Luego, cree un nuevo archivo de enlace simbólico de '/run/NetworkManager/resolv.conf' a '/etc/resolv.conf'.

rm -f /etc/resolv.conf
ln -s /run/NetworkManager/resolv.conf /etc/resolv.conf

Con esto, su máquina cliente ahora está usando systemd-resolved como solucionador de DNS. Detrás de 'systemd-resolved', estás usando el servidor DNS independiente.

A continuación se muestran los detalles del archivo '/etc/resolv.conf' después de usar systemd-resolved y NetworkManager.

cat /etc/resolv.conf

Producción :

Verificación del servidor DNS independiente

Ejecute el comando dig a continuación para asegurarse de que el DNS independiente esté funcionando como un solucionador de DNS. El parámetro '@192.168.5.25' garantiza que está utilizando un servidor DNS independiente que se ejecuta en la dirección IP '192.168.5.25'.

dig @192.168.5.25

Cuando tenga éxito, recibirá una respuesta del servidor DNS raíz como la que se muestra a continuación. Además, observará el indicador 'ad' (datos auténticos) en el resultado del encabezado, lo que significa que DNSSEC está habilitado.

A continuación, ejecute el siguiente comando para asegurarse de que los clientes puedan acceder a los nombres de dominio en Internet.

dig google.com
dig fb.com

Cuando tenga éxito, debería recibir un registro DNS de detalles de salida para el dominio 'google.com' y 'fb.com'. Puede ver que el solucionador de DNS que responde a la consulta es '127.0.0.53#53', que es el solucionador de systemd que utiliza Unbound como solucionador predeterminado. Además, puede ver el 'Tiempo de consulta' para cada consulta, el 'Tiempo de consulta' para el dominio 'google.com' es '74ms' y para 'fb.com' es '154ms'.

Salida para google.com:

Salida para fb.com:

Si vuelve a ejecutar el comando de excavación en la parte superior, el 'Tiempo de consulta' debería reducirse. Y esto confirma que sus consultas se han almacenado en caché y que el caché de DNS está funcionando.

dig google.com
dig fb.com

Producción :

A continuación, verifique el dominio o subdominio local mediante el comando dig a continuación. Si tiene éxito, cada subdominio apuntará a la dirección IP correcta según lo configurado en el archivo de configuración de Unbound '/etc/unbound/unbound.conf'.

dig firewall.garden.lan +short
dig vault.garden.lan +short
dig media.garden.lan +short

Producción :

Ahora ejecute el siguiente comando dig para asegurarse de que los registros PTR apunten al nombre de dominio correcto.

dig -x 10.0.0.1 +short
dig -x 10.0.0.2 +short
dig -x 10.0.0.3 +short

Producción :

Por último, también puede verificar DoT (DNS sobre TLS) mediante tcpdump. Instale el paquete 'tcpdump' en su servidor Unbound mediante el comando dnf a continuación.

sudo dnf install tcpdump

Ingrese y cuando se le solicite y presione ENTER para continuar.

Ahora ejecute el siguiente comando tcpdump para monitorear el tráfico en la interfaz 'eth0' con el puerto DoT 853. En este ejemplo, el DNS independiente se ejecuta en la dirección IP '192.168.5.25' con la interfaz 'eth0'.

tcpdump -vv -x -X -s 1500 -i eth0 'port 853'

Vaya a la máquina cliente y ejecute el siguiente comando para acceder a nombres de dominio externos/de Internet mediante el siguiente comando dig.

dig twitter.com

Producción :

Después de eso, regrese al servidor Unbound y ahora debería obtener un resultado similar a este en la salida de tcpdump.

Con esto, ya ha instalado y configurado el servidor DNS local a través de Unbound. Además, ha configurado un solucionador de DNS en clientes RHEL a través de systemd-resolved y NetworkManager.

Conclusión

En esta guía, ha instalado el servidor DNS local Unbound en un servidor Rocky Linux 9. Ha habilitado la caché de DNS, DNSSEC (habilitado de forma predeterminada), configuró la dirección privada y las ACL, agregó el dominio local a través de la zona local y luego configuró Unbound como resolución de DNS con DoT (DNS sobre TLS).

Además de eso, configuró la privacidad y seguridad de DNS básica, optimizó Unbound y configuró registros de Unbound a través de rsyslog y logrotate.

Hasta el final de esta guía, también ha aprendido cómo configurar un solucionador de DNS en distribuciones basadas en RHEL a través de NetworkManager y systemd-resolved. Y también aprendí el uso básico del comando dig para verificar el servidor DNS.

Artículos relacionados: