instalar y configurar un servidor dns con ubuntu server paso a

8
Instalar y configurar un servidor DNS con Ubuntu Server paso a paso Un servidor DNS (Domain Name System) es un sistema que nos permite usar nombres de dominio en lugar de direcciones IP. Su principal ventaja es que para nosotros es mucho más fácil recordar un nombre que una dirección IP. El servidor DNS más utilizado es Bind y, aunque teníamos un poco abandonado a Ubuntu Server en Slice of Linux , hoy vamos a ver cómo instalarlo y configurarlo sobre él paso a paso. El contenido de este tutorial es genérico pero las pruebas y capturas de pantalla se han hecho sobre Ubuntu 10.04 Server. Los valores que debemos tener claros antes de comenzar son los siguientes: Dirección IP del servidor: 192.168.2.1 Nombre del servidor: servidor Dominio que vamos a crear: sliceoflinux.lan Estos valores deberemos sustituirlos por los que necesitemos en cada caso. Los pasos para instalar y configurar Bind en Ubuntu Server son los siguientes: 1. Actualizamos la información de los repositorios con el siguiente comando: sudo aptitude update 2. Instalamos el servidor DNS Bind9: sudo aptitude install bind9 3. Hacemos una copia de seguridad del archivo que vamos a modificar: sudo cp /etc/bind/named.conf.local{,.original} Este comando nos puede ahorrar mucho tiempo y está descrito en el artículo “hacer copias de seguridad de archivos rápidamente “. 4. Editamos el archivo /etc/bind/named.conf.local con el siguiente comando: sudo nano /etc/bind/named.conf.local y añadimos el siguiente contenido: zone "sliceoflinux.lan" { type master; file "db.sliceoflinux.lan"; }; zone "2.168.192.in-addr.arpa" { type master; file "db.192.168.2"; };

Upload: hilda-gutierrez-espinosa

Post on 02-Jan-2016

75 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Instalar y Configurar Un Servidor DNS Con Ubuntu Server Paso A

Instalar y configurar un servidor DNS con Ubuntu Server paso a paso

Un servidor DNS (Domain Name System) es un sistema que nos permite usar nombres de dominio en lugar de direcciones IP. Su principal ventaja es que para nosotros es mucho más fácil recordar un nombre que una dirección IP.El servidor DNS más utilizado es Bind y, aunque teníamos un poco abandonado a Ubuntu Server en Slice of Linux, hoy vamos a ver cómo instalarlo y configurarlo sobre él paso a paso. El contenido de este tutorial es genérico pero las pruebas y capturas de pantalla se han hecho sobre Ubuntu 10.04 Server.

Los valores que debemos tener claros antes de comenzar son los siguientes:

Dirección IP del servidor: 192.168.2.1 Nombre del servidor: servidor Dominio que vamos a crear: sliceoflinux.lan

Estos valores deberemos sustituirlos por los que necesitemos en cada caso.

Los pasos para instalar y configurar Bind en Ubuntu Server son los siguientes:

1. Actualizamos la información de los repositorios con el siguiente comando:sudo aptitude update

2. Instalamos el servidor DNS Bind9:sudo aptitude install bind9

3. Hacemos una copia de seguridad del archivo que vamos a modificar:sudo cp /etc/bind/named.conf.local{,.original}Este comando nos puede ahorrar mucho tiempo y está descrito en el artículo “hacer copias de seguridad de archivos rápidamente“.

4. Editamos el archivo /etc/bind/named.conf.local con el siguiente comando:sudo nano /etc/bind/named.conf.local

y añadimos el siguiente contenido:

zone "sliceoflinux.lan" { type master; file "db.sliceoflinux.lan";};

zone "2.168.192.in-addr.arpa" { type master; file "db.192.168.2";};

Esto se puede ver en la siguiente captura de pantalla:

Page 2: Instalar y Configurar Un Servidor DNS Con Ubuntu Server Paso A

Editamos el archivo /etc/bind/named.conf.localPara guardar el archivo debemos pulsar la combinación de teclasControl+O y para salir Control+X.

5. Para comprobar la sintaxis de los archivos de configuración ejecutamos el siguiente comando:named-checkconf

Si no aparece nada, la sintaxis de los archivos de configuración es correcta. ¡Ojo! Eso no significa que no haya ningún error, sólo que no hay errores de sintaxis.

Ejecución de named-checkconf sin erroresSi hubiésemos cometido un error de sintaxis, nos aparecería indicado junto a la línea en la que ocurre. En el siguiente ejemplo puede verse que en el archivo /etc/bind/named.conf.local en la línea 15 hay un error:

Ejecución de named-checkconf con un error6. Creamos el archivo /var/cache/bind/db.sliceoflinux.lan:

sudo nano /var/cache/bind/db.sliceoflinux.lan

e incluimos el siguiente contenido:

$ORIGIN sliceoflinux.lan.$TTL 86400 ; 1 dia@ IN SOA servidor postmaster ( 1 ; serie 6H ; refresco (6 horas) 1H ; reintentos (1 hora) 2W ; expira (2 semanas) 3H ; mínimo (3 horas)) NS servidorservidor A 192.168.2.1El contenido del archivo es bastante especial y no lo vamos a comentar pero para más información se puede leer el RFC 1912 y el RFC 2308. Aquí deberíamos añadir todos los equipos de nuestra red que quisiéramos mantener identificados pero como es más fácil hacerlo con DDNS(Dynamic DNS) ya lo veremos en otra ocasión.

7. Comprobamos la zona que acabamos de crear (sliceoflinux.lan):named-checkzone sliceoflinux.lan /var/cache/bind/db.sliceoflinux.lan

En esta ocasión siempre nos aparecerá una salida, ya sea para indicarnos que todo está bien (OK) o algún error.

Page 3: Instalar y Configurar Un Servidor DNS Con Ubuntu Server Paso A

Ejecución de named-checkzone sin errores8. A continuación creamos el archivo /var/cache/bind/db.192.168.2 para

la zona inversa:sudo nano /var/cache/bind/db.192.168.2

e incluimos el siguiente contenido:

$ORIGIN 2.168.192.in-addr.arpa.$TTL 86400 ; 1 dia@ IN SOA servidor postmaster ( 1 ; serie 6H ; refresco (6 horas) 1H ; reintentos (1 hora) 2W ; expire (2 semanas) 3H ; mínimo (3 horas)) NS servidor.sliceoflinux.lan.1 PTR servidor.sliceoflinux.lan.El número 1 se corresponde con el último dígito de la dirección IP del servidor (192.168.2.1).

9. Comprobamos la zona inversa recién creada:named-checkzone 2.168.192.in-addr.arpa /var/cache/bind/db.192.168.2

Al igual que antes obtendremos un mensaje para indicarnos tanto si la zona es correcta como si no lo es.

Ejecución de named-checkzone sin errores10. Reiniciamos el servicio:

sudo service bind9 restart

Si todo va bien, veremos que está OK.

Reiniciamos el servicio11. Revisamos el log para comprobar que todo ha ido bien. Aunque se

puede hacer con el comando tail, yo prefiero less porque me permite ver todo el contenido del mismo:less /var/log/syslog

El resultado se puede ver en la siguiente captura:

Page 4: Instalar y Configurar Un Servidor DNS Con Ubuntu Server Paso A

Comprobamos que no hay errores en syslogPara salir deberemos pulsar la tecla q.

12. Editamos el archivo /etc/resolv.conf para que nuestro servidor resuelva las peticiones DNS:sudo nano /etc/resolv.conf

Cambiando el primero de los servidores DNS por la IP del nuestro:

nameserver 192.168.2.1nameserver 8.8.8.8

13. Probamos nuestro servidor de nombres:dig sliceoflinux.lan

La respuesta será muy parecida a la siguiente:

Ejecución de dig sliceoflinux.lan14. Probamos la resolución inversa:

dig -x 192.168.2.1

Esta sería la salida esperada del comando anterior:

Ejecución de dig -x 192.168.2.1

15. Por último, para poder sacarle partido al servidor que hemos creado nos faltaría incluir este servidor DNS en la configuración de los clientes. Para esto puedes nuestro artículo Configurar el servidor DNS de Ubuntu Karmic desde la interfaz   gráfica .

Page 5: Instalar y Configurar Un Servidor DNS Con Ubuntu Server Paso A

Un servidor DHCP (Dynamic Host Configuration Protocol) es un servicio de red que provee direcciones IP entre otra información de configuración a los equipos que se encuentran conectados a este dentro de una red de datos sin importar el sistema operativo que posean las máquinas cliente aunque el servidor este corriendo sobreUbuntu Server.

Las máquinas configurados vía DHCP no tienen control sobre la configuración de red de las mismas, adquiriendo toda esta información directamente desde el servidor DHCP que se encarga de configurar automáticamente la dirección IP de la máquina, la mascara de subred, la puerta de enlace predeterminada o Gateway, el nombre del host, el nombre del dominio, entre otros datos importantes para el buen funcionamiento de la red.

A continuación aprenderemos como configurar un servidor DHCP usando Ubuntu Server 12.04 Precise Pangolin.

Para este caso en particular utilizaremos los siguientes datos a entregar por el servidor DHCP y la interfaz de red eth0:

Rango de direcciones IP: 192.168.2.10 – 192.168.2.20

Dirección de subred: 192.168.2.0

Mascara de red: 255.255.255.0

Dominio: dhcpserver.public

Puerta de enlace predeterminada: 192.168.2.1

Dirección Broadcast: 192.168.2.255

Servidores DNS: 208.67.222.222 y 208.67.220.220 (OpenDNS )

1. Instalamos el paquete del servidor DHCP

sudo apt-get install isc-dhcp-server

2. Editamos el archivo /etc/default/isc-dhcp-server

sudo nano /etc/default/isc-dhcp-server

Aquí nos dirigimos hasta la opción INTERFACES ubicada aproximadamente en

la linea 11 del documento, agregando eth0como se muestra a continuación# Defaults for dhcp initscript

# sourced by /etc/init.d/dhcp# installed at /etc/default/isc-dhcp-server by the maintainer scripts

## This is a POSIX shell fragment#

# On what interfaces should the DHCP server (dhcpd) serve DHCP requests?# Separate multiple interfaces with spaces, e.g. "eth0 eth1".

Page 6: Instalar y Configurar Un Servidor DNS Con Ubuntu Server Paso A

INTERFACES="eth0"

Guardamos pulsando Ctrl+O y salimos del archivo de configuración

pulsando Ctrl+X.

3. Editamos el archivo /etc/dhcp/dhcpd.conf creando primero un respaldo

del mismo en caso de que algo salga mal

sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.original

Ingresamos como root

sudo -i

Creamos el archivo de configuración dhcpd.confcat > /etc/dhcp/dhcpd.conf <<-EOFoption domain-name "preciseserver.public";option domain-name-servers ns1.preciseserver.public, ns2.preciseserver.public;

default-lease-time 600;max-lease-time 7200;

subnet 192.168.2.0 netmask 255.255.255.0 {range 192.168.2.10 192.168.2.20;option domain-name-servers 208.67.222.222, 208.67.220.220;option domain-name "serv.dhcpserver.public";option routers 192.168.2.1;option broadcast-address 192.168.2.255;default-lease-time 600;max-lease-time 7200;}EOF

4. Reiniciamos el servidor DHCP

sudo service isc-dhcp-server restartYa tenemos nuestro servidor DHCP corriendo libremente sobre Ubuntu Server 12.04 Precise Pangolin y listo para entregar la información necesaria a cada una de las máquinas que conectemos a la red en la que se encuentra.

Si tienes alguna duda acerca del procedimiento aquí publicado, no dudes en realizar un comentario al respecto.