Configuración Bind9
Pasos a seguir para la instalación y configuración del servidor DNS BInd9 en entorno Debian 0 que hará de interno y externo usando visitas.
NOTA: Dentro de la configuración no se toma en cuenta el SPF, DKIM o DMARK.
Instalación:
sudo apt install bind9
Habilitar bind en modo ipv4:
sudo nano /etc/default/bind9
OPTIONS="-u bind -4"
Reiniciar el servidor:
sudo systemctl restart bind9
Generar respaldos de los siguientes archivos del directorio /etc/bind/
- named.conf
- named.conf.locla
- named.conf.options
Crear directorios para zonas directas e inversas tanto para resolución interna y externa:
cd /etc/bind/
sudo mkdir zones
cd zones
sudo mkdir internal
sudo mkdir external
Editar el archivo named.conf.local
para establecer la vista interna y externa, así como sus zonas directas e inversas. Se toma como ejemplo el dominio obscd.gob.bo
acl "red-interna" {
192.168.100.0/24;
};
view "interno" {
match-clients { red-interna; };
recursion yes;
allow-recursion { red-interna; };
# zona directa
zone "obscd.gob.bo" {
type master;
file "/etc/bind/zones/internal/db.obscd.gob.bo";
allow-transfer { none; };
forwarders {
1.1.1.1;
8.8.8.8;
};
};
# zona inversa
zone "100.168.192.in-addr.arpa" {
type master;
file "/etc/bind/zones/internal/db.100.168.192";
allow-transfer { none; };
};
include "/etc/bind/zones.rfc1918";
include "/etc/bind/named.conf.default-zones";
};
view "externo" {
match-clients { any; };
recursion no;
# zona directa
zone "obscd.gob.bo" {
type master;
file "/etc/bind/zones/external/db.obscd.gob.bo";
allow-transfer { none; };
};
# zona inversa
zone "146.243.121.186.in-addr.arpa" {
type master;
file "/etc/bind/zones/external/db.146.243.121.186";
allow-transfer { none; };
};
include "/etc/bind/zones.rfc1918";
include "/etc/bind/named.conf.default-zones";
};
Editar el archivo named.conf y comentar la última línea
include "/etc/bind/named.conf.default-zones";
Crear el archivo de zona directa para la vista interna /et/bind/zones/internal/db.obscd.gob.bo
;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA ns.obscd.gob.bo. admin.obscd.gob.bo. (
4 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
; name server - NS records
@ IN NS ns.obscd.gob.bo.
@ IN A 192.168.100.31
; name server - A records
ns IN A 192.168.100.31
; A records
www IN A 192.168.100.31
smtp IN A 192.168.100.31
; MX records
@ IN MX 10 smtp.obscd.gob.bo.
Crear el archivo de zona inversa para la vista interna /et/bind/zones/internal/db.100.168.192
;
; BIND reverse data file for local loopback interface
;
$TTL 604800
@ IN SOA ns.obscd.gob.bo. admin.obscd.gob.bo. (
4 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns.obscd.gob.bo.
31 IN PTR ns.obscd.gob.bo.
32 IN PTR mail.obscd.gob.bo.
33 IN PTR www.obscd.gob.bo.
34 IN PTR smtp.obscd.gob.bo.
Crear el archivo de zona directa para la vista externa /et/bind/zones/external/db.obscd.gob.bo
;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA ns.obscd.gob.bo. admin.obscd.gob.bo. (
4 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
; name server - NS records
@ IN NS ns.obscd.gob.bo.
@ IN A 186.121.243.146
; name server - A records
ns IN A 186.121.243.146
; A records
www IN A 186.121.243.146
smtp IN A 186.121.243.146
; MX records
@ IN MX 10 smtp.obscd.gob.bo.
Crear el archivo de zona inversa para la vista externa /et/bind/zones/external/db.146.243.121.186
;
; BIND reverse data file for local loopback interface
;
$TTL 604800
@ IN SOA ns.obscd.gob.bo. admin.obscd.gob.bo. (
3 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns.obscd.gob.bo.
146 IN PTR ns.obscd.gob.bo.
147 IN PTR smtp.obscd.gob.bo.
148 IN PTR www.obscd.gob.bo
Probar la configuración de zonas, el resultado esperado es OK
sudo named-checkconf
sudo named-checkzone obscd.gob.bo /etc/bind/zones/internal/db.obscd.gob.bo
sudo named-checkzone obscd.gob.bo /etc/bind/zones/external/db.obscd.gob.bo
sudo named-checkzone 100.168.192.-in-addr-arpa /etc/bind/zones/internal/db.100.168.192
sudo named-checkzone 100.168.192.-in-addr-arpa /etc/bind/zones/external/db.146.243.121.186
Aplicar la configuración
sudo systemctl reload bind9.service
Si hubiera errores al probar o aplicar la configuración se recomienda analizar los mensajes de error para posteriormente solucionar.