En este tutorial, le mostraremos cómo instalar y configurar un servidor DNS en Ubuntu 16.04 LTS. Para aquellos de ustedes que no lo sabían, BIND es un servidor DNS ampliamente utilizado. Idealmente , un servidor DNS consiste en 2 máquinas que funcionan juntas simultáneamente, una actúa como maestro y la otra actúa como esclavo. Si su registrador de dominio no le proporciona un servidor DNS gratuito, o si desea crear un registro DNS personalizado, es posible que deba alojar su propio servidor DNS.
Este artículo asume que tiene al menos conocimientos básicos de Linux, sabe cómo usar el shell y, lo que es más importante, aloja su sitio en su propio VPS. La instalación es bastante simple y asume que se están ejecutando en la cuenta raíz, si no, es posible que deba agregar 'sudo
' a los comandos para obtener privilegios de root. Le mostraré la instalación paso a paso y configuraré el servidor DNS en ubuntu en un servidor Ubuntu 16.04 (Xenial Xerus).
Requisitos previos
- Un servidor que ejecuta uno de los siguientes sistemas operativos:Ubuntu 16.04 (Xenial Xerus).
- Se recomienda que utilice una instalación de sistema operativo nueva para evitar posibles problemas.
- Acceso SSH al servidor (o simplemente abra Terminal si está en una computadora de escritorio).
- Un
non-root sudo user
o acceder al root user
. Recomendamos actuar como un non-root sudo user
, sin embargo, puede dañar su sistema si no tiene cuidado al actuar como root.
Instalar y configurar el servidor DNS en Ubuntu 16.04 LTS
Host | Rol | FQDN privado | Dirección IP privada |
ns1 | Servidor DNS primario | | 108.100.100.1 |
ns2 | Servidor DNS secundario | | 108.100.100.2 |
host | Host genérico | tu-dominio.com | 216.239.38.120 |
Paso 1. Primero, asegúrese de que todos los paquetes de su sistema estén actualizados ejecutando el siguiente apt-get
comandos en la terminal.
sudo apt-get update
sudo apt-get upgrade
Paso 2. Instalación del Servidor DNS Bind9.
Después de actualizar el sistema, ejecute el siguiente comando para instalar los paquetes BIND9 que se utilizan para configurar el servidor DNS:
apt-get install bind9 bind9utils bind9-doc
Paso 3. Configurar Bind9.
Es hora de mostrarle una configuración básica de cómo configurar su dominio para resolver en su servidor:
### nano /etc/bind/named.conf.options
options {
directory "/var/cache/bind";
additional-from-auth no;
additional-from-cache no;
version "Bind Server";
// If there is a firewall between you and nameservers you want
// to talk to, you may need to fix the firewall to allow multiple
// ports to talk. See http://www.kb.cert.org/vuls/id/800113
// If your ISP provided one or more IP addresses for stable
// nameservers, you probably want to use them as forwarders.
// Uncomment the following block, and insert the addresses replacing
// the all-0's placeholder.
forwarders {
8.8.8.8;
8.8.4.4;
};
//========================================================================
// If BIND logs error messages about the root key being expired,
// you will need to update your keys. See https://www.isc.org/bind-keys
//========================================================================
dnssec-validation auto;
allow-recursion { 127.0.0.1; };
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};
Paso 4. Configurar archivo local.
A continuación, configuraremos el archivo local, para especificar nuestras zonas DNS:
### nano /etc/bind/named.conf.local
//place these lines at the bottom of file
zone "your-domain.com" {
type master;
file "/etc/bind/zones/your-domain.com.db";
allow-transfer { 108.200.200.2; };
also-notify { 108.200.200.200.2; };
};
Porque en la configuración anterior colocamos el archivo de zona en “/etc/bind/zones/your-domain.com.db
“, luego necesitamos crear la carpeta y el archivo:
mkdir /etc/bind/zones
nano /etc/bind/zones/your-domain.com.db
$TTL 86400
$ORIGIN your-domain.com.
@ IN SOA ns1.your-domain.com. root.your-domain.com. (
1 ; Serial
86400 ; Refresh
7200 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns1.your-domain.com.
@ IN NS ns2.your-domain.com.
ns1 IN A 108.100.100.1
ns2 IN A 108.100.100.2
;also list other computers
@ IN A 216.239.38.120
www IN A 216.239.38.120
Y luego reinicie el servicio bind9 para que los cambios surtan efecto:
systemctl restart bind9
Paso 5. Configurar el servidor DNS secundario.
Configurar opciones de enlace esclavo:
### nano /etc/bind/named.conf.options
zone "your-domain.com" {
type slave;
file "/var/cache/bind/your-domain.com.db";
masters {108.100.100.1;};
};
Reinicie el servicio bind9 para aplicar los cambios:
systemctl restart bind9
Este servidor DNS no funcionará hasta que cambie el servidor de nombres de su dominio. Puede hacerlo desde el sitio web del registrador de su dominio. En este escenario, cambiamos el servidor de nombres a:
ns1.su-dominio.com
ns2.su-dominio.com
Paso 6. Probar BIND.
Finalmente, esta prueba se puede hacer en el propio servidor DNS o desde otro servidor, o desde su propia PC. En este caso, haremos la prueba desde otro servidor con sistema operativo Ubuntu.
Instalar dnsutils:
apt-get install dnsutils
Haga la prueba DNS de excavación:
dig your-domain.com
Realice la prueba nslookup dns:
nslookup your-domain.com
¡Felicitaciones! Ha instalado correctamente el servidor DNS. Gracias por usar este tutorial para instalar el servidor DNS en el sistema Ubuntu 16.04 LTS (Xenial Xerus). Para obtener ayuda adicional o información útil, le recomendamos para consultar el sitio web oficial de bind9.