Cómo instalar y configurar ‘PowerDNS’ (con MariaDB) y ‘PowerAdmin’ en RHEL/CentOS 7

Cómo instalar y configurar ‘PowerDNS’ (con MariaDB) y ‘PowerAdmin’ en RHEL/CentOS 7

PowerDNS. es un servidor DNS que se ejecuta en muchos derivados de Linux/Unix. Se puede configurar con diferentes backends, incluidos archivos de zona de estilo BIND, bases de datos relacionales o algoritmos de equilibrio de carga/conmutación por error. También se puede configurar como un recursor DNS que se ejecuta como un proceso separado en el servidor.

La última versión del servidor autorizado PowerDNS es 3.4.4. pero la que está disponible en el El repositorio de EPEL en este momento es 3.4.3. Recomendaría instalar el del repositorio EPEL. debido a que esta versión está probada en CentOS y Fedora. De esa forma, también podrá actualizar fácilmente PowerDNS. en el futuro.

Este artículo pretende mostrarle cómo instalar y configurar el servidor maestro PowerDNS. con un backend MariaDB. y PowerAdmin. una herramienta de administración de interfaz web amigable para PowerDNS.

Para el propósito de este artículo, usaré el servidor con:

Nombre de host: centos7.localhost Dirección IP 192.168.0.102

Paso 1: Instalar PowerDNS con MariaDB Backend

1.. Primero debe habilitar el repositorio EPEL para su servidor simplemente use:

# yum install epel-release.noarch  Habilitar repositorio Epel  Habilitar repositorio Epel Habilitar el repositorio Epel freestar.config.enabled_slots.push

2.. El siguiente paso es instalar el servidor MariaDB. Esto se puede hacer fácilmente ejecutando el siguiente comando:

# yum-y install mariadb-server mariadb  Instalar MariaDB Server  Instalar MariaDB Server Instalar MariaDB Server

3.. A continuación, configuraremos MySQL para que se active y se inicie al arrancar el sistema:

# systemctl enable mariadb.service # systemctl iniciar mariadb.service  Habilitar el inicio del sistema MariaDB Arranque  Habilitar Inicio Arranque del sistema MariaDB Habilitar el inicio de MariaDB System Boot

4.. Ahora que el servicio MySQL se está ejecutando, aseguraremos y configuraremos una contraseña para MariaDB ejecutando:

# mysql_secure_installation Siga las instrucciones/bin/mysql_secure_installation: línea 379: find_mysql_client: comando no encontrado NOTA: ¡SE RECOMIENDA EJECUTAR TODAS LAS PARTES DE ESTE SCRIPT PARA TODOS LOS SERVIDORES MariaDB EN USO DE PRODUCCIÓN! POR FAVOR LEA CADA PASO DETENIDAMENTE. Para iniciar sesión en MariaDB para protegerlo, necesitaremos la contraseña actual para el usuario root. Si acaba de instalar MariaDB y aún no ha establecido la contraseña de root, la contraseña estará en blanco, por lo que solo debe presionar enter aquí. Ingrese la contraseña actual para root (ingrese para ninguna): Presione ENTER. OK, contraseña usada con éxito, continuando … Establecer la contraseña de root asegura que nadie pueda iniciar sesión en Usuario root de MariaDB sin la debida autorización. ¿Establecer contraseña de root? [S/n] y Nueva contraseña: ← Establecer nueva contraseña. Vuelva a ingresar la nueva contraseña: ← Repetir la contraseña anterior. ¡Contraseña actualizada correctamente! Recarga de tablas de privilegios … … ¡Éxito! De forma predeterminada, una instalación de MariaDB tiene un usuario anónimo, lo que permite que cualquiera pueda iniciar sesión en MariaDB sin tener que tener una cuenta de usuario creada para ellos. Esto está diseñado solo para pruebas y para que la instalación sea un poco más fluida. Debe eliminarlos antes de pasar a un entorno de producción. ¿Eliminar usuarios anónimos? [Y/n] y ← Elija “y” para deshabilitar a ese usuario. … ¡Éxito! Normalmente, a root solo se le debe permitir conectarse desde ‘localhost’. Esto asegura que alguien no pueda adivinar la contraseña de root de la red. ¿Deshabilitar el inicio de sesión de root de forma remota? [Y/n] n ← Elija “n” para no. … omitir. De forma predeterminada, MariaDB viene con una base de datos llamada ‘prueba’ a la que cualquiera puede acceder. Esto también está diseñado solo para pruebas y debe eliminarse antes de pasar a un entorno de producción. ¿Eliminar la base de datos de prueba y acceder a ella? [Y/n] y ← Elija “y” para sí. Eliminando la base de datos de prueba … … ¡Éxito!-Eliminando privilegios en la base de datos de prueba … … ¡Éxito! Recargar las tablas de privilegios garantizará que todos los cambios realizados hasta el momento entren en vigor de inmediato. ¿Recargar tablas de privilegios ahora? [Y/n] y ← Elija “y” para sí. … ¡Éxito! Limpiando … ¡Todo listo! Si ha completado todos los pasos anteriores, su instalación de MariaDB ahora debería ser segura. ¡Gracias por usar MariaDB!

5.. Una vez que la configuración de MariaDB se haya realizado correctamente, podemos continuar con la instalación de PowerDNS. Esto se completa fácilmente ejecutando:

# yum-y install pdns pdns-backend-mysql Instalar PowerDNS con MariaDB Backend  Instalar PowerDNS con MariaDB Backend Instalar PowerDNS con MariaDB Backend

6.. El archivo de configuración para PowerDNS. se encuentra en/etc/pdns/pdns, pero antes de editarlo, configuraremos una base de datos MySQL para PowerDNS. servicio. Primero nos conectaremos al servidor MySQL y crearemos una base de datos con el nombre powerdns.

# mysql-u root-p MariaDB [(none)]>. CREAR BASE DE DATOS powerdns;  Crear base de datos PowerDNS Crear base de datos PowerDNS Crear base de datos PowerDNS

7.. A continuación, w Crearé un usuario de base de datos llamado powerdns.

MariaDB [(none)]>. GRANT ALL ON powerdns. * TO ‘powerdns ‘@’ localhost ‘IDENTIFICADO POR’ tecmint123 ‘; MariaDB [(none)]>. OTORGAR TODOS EN powerdns. * A ‘powerdns’@’centos7.localdomain’ IDENTIFICADO POR ‘tecmint123’; MariaDB [(ninguno)]>. PRIVILEGIOS DE FLUSH;  Crear usuario de PowerDNS Crear usuario de PowerDNS Crear usuario de PowerDNS

Nota:. Reemplazar “ tecmin t123. ”con la contraseña real que desea utilizar para su configuración.

8.. Procedemos a crear las tablas de base de datos utilizadas por PowerDNS . Ejecuta esos bloque por bloque:

MariaDB [(ninguno)]>. USE powerdns; MariaDB [(none)]>. CREATE TABLE dominios (id INT auto_increment, nombre VARCHAR (255) NOT NULL, master VARCHAR (128) DEFAULT NULL, last_check INT DEFAULT NULL, escriba VARCHAR (6) NOT NULL, notificadas_serial INT DEFAULT NULL, cuenta VARCHAR (40) DEFAULT NULL, clave primaria (id));  Crear dominios de tabla para PowerDNS Crear dominios de tabla para PowerDNS Crear dominios de tabla para PowerDNS MariaDB [(none)]>. CREAR ÍNDICE ÚNICO name_index ON dominios (nombre); MariaDB [(none)]>. CREATE TABLE registros (id INT auto_increment, domain_id INT DEFAULT NULL, nombre VARCHAR (255) DEFAULT NULL, escribe VARCHAR (6) DEFAULT NULL, contenido VARCHAR (255) DEFAULT NULL, ttl INT DEFAULT NULL, prio INT DEFAULT NULL, change_date INT DEFAULT NULL, clave primaria (id));  Crear índices de dominios para PowerDNS Crear dominios de índice para PowerDNS Crear dominios de índice para PowerDNS MariaDB [(none)]>. CREAR ÍNDICE rec_name_index ON registros (nombre); MariaDB [(none)]>. CREAR ÍNDICE nametype_index ON registros (nombre, tipo); MariaDB [(ninguno)]>. CREAR ÍNDICE domain_id ON registros (domain_id);  Crear registros de índice  Crear registros de índice Crear registros de índice MariaDB [(none)]>. CREAR TABLE supermasters (ip VARCHAR (25) NOT NU LL, servidor de nombres VARCHAR (255) NOT NULL, cuenta VARCHAR (40) DEFAULT NULL);  Create Table Supermaster  Create Table Supermaster Create Table Supermaster

Ahora puede salir de la consola MySQL escribiendo: