Instalar DNS en Rocky Server (Red Hat Linux)

Entre los principales servicios que podemos encontrar en entornos Linux el DNS es vital para el despliegue de toda un arquitectura web con dominio. En este laboratorio montaremos uno en Rocky Server, el cual maneja paquetes rpm como ya sabemos.
En un laboratorio anterior en este post ya hemos montado un dns en ubuntu server (paquetería deb), notaremos en este laboratorio que la isntalación requiere tratamientos adicionales. Empecemos.
Paso 1
Entorno: VirtualBox (Host-Only)
Dominio: cybersen.local
IP del servidor: 192.168.56.110 (puede varias)
Verfiquemos el sistema operativo:
cat /etc/os-releaseVerficar Hostname:
hostnamectlPaso 2
Cambiar nombre del servidor:
sudo hostnamectl set-hostname cybersenVerificamos el hostname:
hostnamectlEditamos archivo host:
sudo nano /etc/hostsDebemos asegurar que estas 2 lineas esten presente, sobre todo la de cybersen apuntando a la ip del servidor.
127.0.0.1 localhost
192.168.56.110 cybersenParte 3
Verificar ip de Rocky, debe ser estatica y debe ser la misma que estamos colocando en el paso anterior.
Asi mismo tener presente la topología que usaremos ya que eso define si usaremos adaptador solo anfitrion o modo puente.
El adaptador solo anfitrion permite al anfitrion comunicarse con la maquina virtual y en muchas ocaciones obtiene su ip por dhcp si es que esta configuración esta activa (lo normal).
El modo puente pone la tarjeta virtual de tu maquia virtual al mismo nivel que las tarjetas de red de tu lan, es decir tu equipo estará disponible en la red lan como si fuese cualquier otro equipo en red.
Paso 4
Instalar BIND (Servidor DNS)
sudo dnf install bind bind-utils -yVerificamos:
named -vHabilitamos el servicio:
sudo systemctl enable namedParte 5
Configurar named.conf
sudo nano /etc/named.confVerifica que se cumplan estas configuraciones, ojo no es necesario borrar o sobre escribir todo el documento, solo verificar y actualizar la configuración para permitir solicitudes de cualquier red.
options {
listen-on port 53 { any; };
listen-on-v6 port 53 { any; };
directory "/var/named";
allow-query { any; };
recursion yes;
dnssec-validation yes;
managed-keys-directory "/var/named/dynamic";
};Validar que no cometamos errores en named:
sudo named-checkconfParte 6
Declarar zona DNS cybersen.local en named.conf
zone "cybersen.local" IN {
type master;
file "cybersen.local.zone";
allow-update { none; };
};Crear archivo de zona:
sudo nano /var/named/cybersen.local.zoneContenido del archivo cybersen.local.zone:
$TTL 86400
@ IN SOA cybersen.local. admin.cybersen.local. (
2026030301
3600
1800
604800
86400 )
@ IN NS cybersen.local.
@ IN A 192.168.56.110
cybersen IN A 192.168.56.110
www IN A 192.168.56.110Actualizamos permisos:
sudo chown root:named /var/named/cybersen.local.zone
sudo chmod 640 /var/named/cybersen.local.zoneValidar la zona creada:
sudo named-checkzone cybersen.local /var/named/cybersen.local.zonePaso 7
Abrir Firewall e Iniciar DNS
Abrir puerto DNS:
sudo firewall-cmd --permanent --add-service=dns
sudo firewall-cmd --reloadIniciamos servicio:
sudo systemctl start namedVerificamos servicio:
sudo systemctl status namedPaso 8
Verificar servicio Web.
Nuestro Rocky server usado en los laboratorios ya tiene apache corriendo, sin embargo se dejan los comandos a fin de instalaer y habilitar el servicio facilmente por si no estuviera presente:
sudo dnf install httpd -y
sudo systemctl enable httpd
sudo systemctl start httpd
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reloadPaso 9
Crear VirtualHost
Crear directorio:
sudo mkdir -p /var/www/cybersen.localCrear index.html dentro del directorio creado:
sudo nano /var/www/cybersen.local/index.htmlContenido del index.html:
<h1>Servidor DNS + Apache funcionando</h1>
<h2>Dominio: cybersen.local</h2>Brindamos permisos:
sudo chown -R apache:apache /var/www/cybersen.local
sudo chmod -R 755 /var/www/cybersen.localContexto SELinux (IMPORTANTE)
sudo chcon -R -t httpd_sys_content_t /var/www/cybersen.local
sudo restorecon -Rv /var/www/cybersen.localCreamos el virtual host en apache
sudo nano /etc/httpd/conf.d/cybersen.local.confy su contenido:
<VirtualHost *:80>
ServerName cybersen.local
ServerAlias www.cybersen.local
DocumentRoot /var/www/cybersen.local
<Directory /var/www/cybersen.local>
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/httpd/cybersen_error.log
CustomLog /var/log/httpd/cybersen_access.log combined
</VirtualHost>Reiniciamos Apache:
sudo systemctl restart httpdPaso 10
Configurar dns en tu tarjeta de red.
Recordar que configuramos dns en la tarjeta de red virtual host onluy si estamos en modo anfitrion o configuramos el dns en nuestra tarjeta fisica (real) si estamos en modo puente.
Presentar al instructor.
