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
[...] # # 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> [...] |
#! /bin/sh
#
# mydns Start the MyDNS server
#
# Author: Philipp Kern <example@unixlinux.online>.
# Based upon skeleton 1.9.4 by Miquel van Smoorenburg
# <example@unixlinux.online> and Ian Murdock <example@unixlinux.online>.
#
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 |





