Se preparó una traducción del artículo para los estudiantes del curso de seguridad de Linux . ¿Es interesante desarrollar en esta dirección? Vea la grabación de la transmisión de la clase magistral por Ivan Piskunov "Seguridad en Linux en comparación con Windows y MacOS"

En este artículo, describiré los pasos para configurar un servidor DNS en RHEL 7 o CentOS 7. Para la demostración, utilicé Red Hat Enterprise Linux 7.4. Nuestro objetivo es crear un registro A y un registro PTR para las zonas de búsqueda directa e inversa, respectivamente.
Primero instale los paquetes rpm necesarios para el servidor DNS.
NOTA: Para RHEL, debe tener una suscripción a RHN activa , o puede configurar un repositorio local independiente con el que el administrador de paquetes yum pueda instalar los paquetes y dependencias rpm necesarios.
Mi configuración:
 
Como usaremos chroot, debemos deshabilitar el servicio.
 
Luego copie los archivos necesarios al directorio chroot.
NOTA Use el argumento -p para el comando cp para preservar la propiedad y la propiedad.
 [root@golinuxhub-client ~] 
Luego copie los archivos asociados con la zona a una nueva ubicación.
 [root@golinuxhub-client ~] 
Borre el contenido de named.conf y pegue lo siguiente.
 [root@golinuxhub-client etc] 
La información relacionada con la zona debe agregarse a /var/named/chroot/etc/named.rfc1912.zones . Agregue las entradas a continuación. El archivo example.zone es el archivo de búsqueda directa, y example.rzone es el archivo de zona inversa.
NOTA IMPORTANTE: La zona de búsqueda inversa contiene 1.168.192, ya que mi dirección IP es 192.168.1.7
 zone "example" IN { type master; file "example.zone"; allow-update { none; }; }; zone "1.168.192.in-addr.arpa" IN { type master; file "example.rzone"; allow-update { none; }; }; 
Los archivos asociados con las zonas se encuentran aquí:
 
A continuación, cree archivos para las zonas de avance y retroceso. Los nombres de los archivos serán los mismos que en el archivo named.rfc1912.zones . Ya tenemos algunas plantillas predeterminadas que podemos usar.
 
Como puede ver, los permisos actuales en todos los archivos y directorios pertenecen a la raíz .
 [root@golinuxhub-client named] 
Cambie los derechos de todos los archivos, especificando la raíz y el grupo nombrado como el propietario del usuario.
 
Pero para los datos, el propietario debe ser nombrado: nombrado .
 
Agregue el siguiente contenido al archivo de zona de reenvío. Aquí creamos un registro A para localhost (golinuxhub-client) y otro para el servidor (golinuxhub-server).
 
A continuación, agregue el contenido al archivo de zona inversa. Aquí creamos un registro PTR para golinuxhub-client y para golinuxhub-server.
 
Antes de comenzar el servicio named-chroot , verifique la configuración del archivo de zona.
 [root@golinuxhub-client named] 
Todo se ve bien. Ahora verifique el archivo de configuración con el siguiente comando.
 [root@golinuxhub-client named] 
Entonces, todo es exitoso.
 [root@golinuxhub-client named] 
NOTA IMPORTANTE: mi SELinux está en modo permisivo
 
Todo se ve bien, así que es hora de comenzar nuestro servicio de nombre-chroot .
 [root@golinuxhub-client named] 
 [root@golinuxhub-client named] 
Como puede ver, recibimos una respuesta positiva (RESPUESTA) a nuestra solicitud (PREGUNTA).
 [root@golinuxhub-client named] 
Del mismo modo, podemos verificar la zona directa.
 [root@golinuxhub-client named] 
Este artículo está un poco anticuado ya que RHEL 7 ya no necesita copiar archivos de configuración de enlace en chroot. Tutorial paso a paso: configure el servidor DNS utilizando bind chroot (CentOS / RHEL 7) .