GNU/Linux >> Tutoriales Linux >  >> Panels >> Panels

Instalación de MyDNS-NG y MyDNSConfig 3 en Debian Lenny

Instalando MyDNS-NG y MyDNSConfig 3 en Debian Lenny

En este tutorial, describiré cómo instalar y configurar MyDNS-NG y MyDNSConfig 3 en Debian Lenny. MyDNS-NG (basado en MyDNS escrito originalmente por Don Moore -http://mydns.bboy.net/) es un servidor DNS que utiliza una base de datos MySQL como backend en lugar de archivos de configuración como, por ejemplo, Bind o djbdns. La ventaja es que MyDNS simplemente lee los registros de la base de datos y no tiene que reiniciarse/recargarse cuando cambian los registros DNS o se crean/editan/eliminan zonas. Se puede configurar fácilmente un servidor de nombres secundario instalando una segunda instancia de MyDNS que acceda a la misma base de datos o, para ser más redundante, use las funciones de replicación maestro/esclavo de MySQL para replicar los datos en el servidor de nombres secundario.

MyDNSConfig es una interfaz basada en web fácil de usar para MyDNS-NG. MyDNSConfig puede crear todos los tipos de registros DNS que están disponibles en MyDNS y agrega funciones como administración de usuarios y privilegios de acceso.

¡No emito ninguna garantía de que esto funcione para usted!

1 nota preliminar

En este tutorial utilizo el nombre de host server1.example.com con la dirección IP 192.168.0.100. Estas configuraciones pueden diferir para usted, por lo que debe reemplazarlas cuando corresponda.

2 Instalación de MySQL

Podemos instalar MySQL de la siguiente manera:

aptitude install mysql-client mysql-server

Se le harán las siguientes preguntas:

Nueva contraseña para el usuario "root" de MySQL:<-- yourrootsqlpassword
Repetir la contraseña para el usuario "root" de MySQL:<-- yourrootsqlpassword

3 Instalación de Apache2, PHP, phpMyAdmin

MyDNSConfig necesita un servidor web con soporte PHP; por lo tanto instalo Apache2. También instalo phpMyAdmin para poder acceder a la base de datos más tarde a través de una interfaz web (aunque esto es opcional):

aptitude install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick vlogger

Verá la siguiente pregunta:

Servidor web para reconfigurar automáticamente:<-- apache2

Luego ejecute el siguiente comando para habilitar los módulos de Apache suexec, rewrite, ssl, actions e include:

a2enmod suexec rewrite ssl actions include

Proteja phpMyAdmin eliminando el archivo /etc/phpmyadmin/htpasswd.setup...

rm -f /etc/phpmyadmin/htpasswd.setup

... y elimine o comente la siguiente sección en /etc/phpmyadmin/apache.conf:

vi /etc/phpmyadmin/apache.conf

Reinicie Apache después:

/etc/init.d/apache2 restart

Ahora puede acceder a phpMyAdmin en http://server1.example.com/phpmyadmin/ o http://192.168.0.100/phpmyadmin/.

4 Instalación de MyDNS

Antes de instalar MyDNS, debemos instalar algunos requisitos previos:

aptitude install g++ libc6 gcc gawk make texinfo libmysqlclient15-dev

MyDNS no está disponible en los repositorios de Debian Lenny, por lo que tenemos que construirlo nosotros mismos de la siguiente manera:

cd /tmp
wget http://heanet.dl.sourceforge.net/sourceforge/mydns-ng/mydns-1.2.8.27.tar.gz
tar xvfz mydns-1.2.8.27.tar.gz
cd mydns-1.2.8
./configure
make
make install

A continuación, creamos el script de inicio/detención para MyDNS:

vi /etc/init.d/mydns
[...]
#       # Authorize for setup
#       <Files setup.php>
#           # For Apache 1.3 and 2.0
#           <IfModule mod_auth.c>
#               AuthType Basic
#               AuthName "phpMyAdmin Setup"
#               AuthUserFile /etc/phpmyadmin/htpasswd.setup
#           </IfModule>
#           # For Apache 2.2
#           <IfModule mod_authn_file.c>
#               AuthType Basic
#               AuthName "phpMyAdmin Setup"
#               AuthUserFile /etc/phpmyadmin/htpasswd.setup
#           </IfModule>
#           Require valid-user
#       </Files>
[...]

Luego, hacemos que el script sea ejecutable y creamos los enlaces de inicio del sistema para él:

chmod +x /etc/init.d/mydns
update-rc.d mydns defaults

Instalación de MyDNS-NG y MyDNSConfig 3 en Debian Lenny - Página 2

5 Instalación de MyDNSConfig 3

Podemos instalar MyDNSConfig 3 de la siguiente manera:

cd /tmp
wget http://downloads.sourceforge.net/mydnsconfig/MyDNSConfig-3.0.1.tar.gz?use_mirror=
tar xvfz MyDNSConfig-3.0.1.tar.gz
cd mydnsconfig/install/
php -q install.php

Esto iniciará el instalador de MyDNSConfig 3:

servidor1:/tmp/mydnsconfig/install# php -q install.php


----------------------- -------------------------------------------------- -------
 __  __       _____  _   _  _____  _____             __ _
| \/  | | __ \| \ | |/ ____|/ ____| / _(_)
| \  / |_   _| | | | \| | (___ | |     ___  _ __ | |_ _  __ _
| |\/| | | | | |  | | . ` |\___ \| |    / _ \| '_ \|  _| |/ _ ` |
| |  | | |_| | |__| | |\  |____) | |___| (_) | | | | | | | (_| |
|_|  |_|\__, |_____/|_| \_|_____/ \_____\___/|_| |_|_| |_|\__, |
         __/|                                            __/ |
        |___/                                           -------------- -------------------------------------------------- --


>> Configuración inicial

Sistema operativo: Debian Lenny/Sid o compatible

    A continuación, habrá algunas preguntas para configuración principal, así que tenga cuidado.
    Los valores predeterminados están entre [paréntesis] y se pueden aceptar con .
    Toque "salir" (sin las comillas) para detener el instalador.


Seleccionar idioma (en,de) [en]: <-- ENTRAR

Modo de instalación (estándar, experto) [estándar]: <-- ENTRAR

Nombre de host completo (FQDN) del servidor, por ejemplo, server1.domain.tld  [server1.example.com]: <-- ENTER

MySQL server hostname [localhost]: <-- ENTER

Nombre de usuario raíz de MySQL [raíz]: <-- ENTRAR

MySQL roo t contraseña []: <-- sucontraseñarootsql

Base de datos MySQL para crear [dbmydnsconfig]: <-- ENTRAR

Juego de caracteres MySQL [utf8]: <-- ENTRAR

Configurar MyDNS
Configurar Apache
Configurar Firewall
Instalar MyDNSConfig
Puerto MyDNSConfig [8080]: <-- ENTRAR

Instalar Crontab
no crontab para root
Reiniciando servicios ...
Reiniciando servidor web: apache2 ... esperando.
Instalación completada.
servidor1:/tmp/mydnsconfig/install#

El instalador configura automáticamente todos los servicios subyacentes, por lo que no es necesaria una configuración manual.

Luego puede acceder a MyDNSConfig 3 en http://server1.example.com:8080/ o http://192.168.0.100:8080/. Inicie sesión con el nombre de usuario admin y la contraseña admin (debe cambiar la contraseña predeterminada después de su primer inicio de sesión):

6 Uso de MyDNSConfig 3

La pestaña DNS es la parte más importante de MyDNSConfig porque ahí es donde puede crear zonas y registros, así que me centraré en esa pestaña.

Para crear una nueva zona, haga clic en el botón Agregar nueva zona DNS (SOA):

Ahora puede completar los detalles de la zona, p. el nombre de dominio, el servidor de nombres principal y la dirección de correo electrónico del administrador de la zona (¡tenga en cuenta que debe reemplazar el signo @ con un punto!); ¡estos tres detalles deben terminar con un punto! Puedes dejar los demás detalles como están. Ahora puede guardar la zona o ir directamente a la pestaña Registros (esto guardará los detalles de la zona automáticamente):

En la pestaña de registros, ahora puede crear todo tipo de registros DNS (A, CNAME, MX, NS, TXT, etc.), simplemente haga clic en el botón correspondiente:

Por ejemplo, este es el formulario para crear registros NS (tenga en cuenta que si escribe nombres de host completos, ¡deben terminar con un punto!):

Esta es la descripción general:como puede ver, he creado algunos registros más:

7 Actualización de MyDNSConfig 3

Siempre que haya una versión más reciente de MyDNSConfig 3, puede actualizar su instalación de MyDNSConfig 3 de la siguiente manera:

mydnsconfig_update.sh

Esto abrirá el asistente de actualización. TENGA EN CUENTA:puede actualizar a la última versión estable y a la versión svn. Se recomienda encarecidamente actualizar a la última versión estable, ya que la versión svn se utiliza para el desarrollo y puede contener errores. ¡¡¡ESTÁS ADVERTIDO!!!

8 Actualización de MyDNSConfig 1.x a MyDNSConfig 3.x

No hay una ruta de actualización directa de MyDNSConfig 1.x a MyDNSConfig 3.x, sin embargo, es fácil importar los registros DNS de MyDNSConfig 1.x a MyDNSConfig 3.x.

En este capítulo, asumo que su antiguo MyDNSConfig 1.x usa la tabla de base de datos mydns, y que su nueva instalación de MyDNSConfig 3 usa la base de datos dbmydnsconfig.

Primero instale MyDNSConfig 3 de la siguiente manera:

cd /tmp
wget http://downloads.sourceforge.net/mydnsconfig/MyDNSConfig-3.0.1.tar.gz?use_mirror=
tar xvfz MyDNSConfig-3.0.1.tar.gz
cd mydnsconfig/install/
php -q install.php

Siga el asistente de instalación. Una vez finalizada la instalación (y ANTES de crear cualquier registro en la interfaz web de MyDNSConfig 3), abra phpMyAdmin o un shell de MySQL y ejecute las siguientes consultas MySQL (como usuario root de MySQL) para importar los registros DNS de su antiguo Instalación de MyDNSConfig 1.x en MyDNSConfig 3 (asegúrese de usar los nombres de base de datos correctos; debe reemplazar `mydns` y `dbmydnsconfig` si los nombres de su base de datos son diferentes):

ALTER TABLE `mydns`.`rr` ADD `server_id` int(11) NOT NULL default '1',
ADD `active` enum('N','Y') NOT NULL default 'Y',
AÑADIR `sello` marca de tiempo NO NULL predeterminado CURRENT_TIMESTAMP,
AÑADIR `serial` int(10) NULL predeterminado sin firmar;

ALTER TABLE `mydns`.`rr` MODIFY `sys_userid` int(11) sin firmar NO NULO DESPUÉS de `id`,
MODIFICAR `sys_groupid` int(11) sin firmar NO NULO DESPUÉS de `sys_userid`,
MODIFICAR `sys_perm_user` varchar(5) NO NULO DESPUÉS DE `sys_groupid`,
MODIFICAR `sys_perm_group` varchar(5) NO NULO DESPUÉS DE `sys_perm_user`,
MODIFICAR `sys_perm_other` varchar(5) NO NULO DESPUÉS DE `sys_perm_group `,
MODIFY `server_id` int(11) NOT NULL predeterminado '1' DESPUÉS de `sys_perm_other`;

INSERTAR EN `dbmydnsconfig`.`dns_rr`
SELECCIONAR *
DESDE `mydns`.`rr`;

ACTUALIZAR "dbmydnsconfig". br />`sys_perm_other` ='',
`server_id` =1;

ALTER TABLE `mydns`.`soa` ADD `server_id` int(11) NOT NULL default '1';

ALTER TABLE `mydns`.`soa` MODIFY `sys_userid` int(11) sin firmar NO NULO DESPUÉS de `id`,
MODIFICAR `sys_groupid` int(11) sin firmar NO NULO DESPUÉS de `sys_userid`,
MODIFICAR `sys_perm_user` varchar(5) NO NULO DESPUÉS DE `sys_groupid`,
MODIFICAR `sys_perm_group` varchar(5) NO NULO DESPUÉS DE `sys_perm_user`,
MODIFICAR `sys_perm_other` varchar(5) NO NULO DESPUÉS DE `sys_perm_group `,
MODIFY `server_id` int(11) NOT NULL predeterminado '1' DESPUÉS de `sys_perm_other`;

INSERTAR EN `dbmydnsconfig`.`dns_soa`
SELECCIONAR *
DESDE `mydns`.`soa`;

ACTUALIZAR "dbmydnsconfig". br />`sys_perm_other` ='',
`server_id` =1;

Luego, puede acceder a MyDNSConfig 3 en el puerto 8080 (por ejemplo, http://server1.example.com:8080 o http://192.168.0.100:8080); el inicio de sesión predeterminado es administrador de nombre de usuario y administrador de contraseña.

Tenga en cuenta que estas consultas de MySQL hacen que todas las zonas sean propiedad del administrador. Si tiene zonas que deberían ser propiedad de otra persona, cree un cliente para cada usuario en MyDNSConfig 3, vaya a la pestaña DNS y seleccione el cliente correcto para las zonas.

9 Enlaces

  • MyDNS-NG:http://www.mydns.pl/
  • MyDNSConfig:http://www.mydnsconfig.org/
  • Debian:http://www.debian.org/

Panels
  1. Cómo instalar Z-Push en un servidor ISPConfig 3 (Debian Lenny)

  2. Cómo instalar phpMyAdmin en Debian 9

  3. Instalar GLPI en Debian 7

  4. Instalar osCommerce en Debian 8

  5. Instalando bbm.sty en linux

Cómo instalar R en Debian 9

Cómo instalar R en Debian 10

Cómo instalar Debian 11

Instale PostgreSQL 13 en Debian 11

Cómo instalar Go en Debian 10

Instalación de OpenVZ + Gestión de máquinas virtuales a través de ISPConfig 3 (Debian 6.0)

    #! /bin/sh
    #
    # mydns         Start the MyDNS server
    #
    # Author:       Philipp Kern <[email protected]>.
    #               Based upon skeleton 1.9.4 by Miquel van Smoorenburg
    #               <[email protected]> and Ian Murdock <[email protected]>.
    #
    
    set -e
    
    PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
    DAEMON=/usr/local/sbin/mydns
    NAME=mydns
    DESC="DNS server"
    
    SCRIPTNAME=/etc/init.d/$NAME
    
    # Gracefully exit if the package has been removed.
    test -x $DAEMON || exit 0
    
    case "$1" in
      start)
            echo -n "Starting $DESC: $NAME"
            start-stop-daemon --start --quiet \
                    --exec $DAEMON -- -b
            echo "."
            ;;
      stop)
            echo -n "Stopping $DESC: $NAME"
            start-stop-daemon --stop --oknodo --quiet \
                    --exec $DAEMON
            echo "."
            ;;
      reload|force-reload)
            echo -n "Reloading $DESC configuration..."
            start-stop-daemon --stop --signal HUP --quiet \
                    --exec $DAEMON
            echo "done."
            ;;
      restart)
            echo -n "Restarting $DESC: $NAME"
            start-stop-daemon --stop --quiet --oknodo \
                    --exec $DAEMON
            sleep 1
            start-stop-daemon --start --quiet \
                    --exec $DAEMON -- -b
            echo "."
            ;;
      *)
            echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
            exit 1
            ;;
    esac
    
    exit 0