Configurando Servidores DNS seguros

(1/1)

el-brujo:
Mantener BIND actualizado.

Versión 9.x

Obteniendo información:

nslookup www.ejemplo.com
Server: localhost
Address: 127.0.0.1

Name: www.ejemplo.com
Address: 172.26.105.20

host www.ejemplo.com

www.ejemplo.com has adress 172.26.105.20
www.ejemplo.com mail is handled (pri=10) by mailhost.ejemplo.com
www.ejemplo.com mail is handled (pri=20) by mailbackup.ejemplo.com

Campos de información:

Tipos de registros:

SOA: Autoridad de la zona: Incluye la dirección de correo del administrador del DNS y varios números que señalan los tiempos de actualización, de caché y transferencia.

A: Registros de direcciones: La/s dirección/es que pertenecen a un cierto nombre dé máquina.

CNAME: Nombre cánonico: Para un cierto nombre de máquina, una referencia a otro nombre de máquina, en vez de a una dirección IP. Algo así como un enlace simbólico. Yo a veces le llamo alias, ejemplo, CNAME apuntando a un A.

PTR: Registro Puntero: El nombre de máquina asociado a una dirección IP.

HINFO: Información de una máquina: La arquitectura y el sistema operativo de esa máquina.

TXT: Texto descriptivo: Otro texto descriptivo sobre esa máquina, normalmente su propósito y su ubicación.

RP: Persona responsable: La dirección de correo de la persona responsable de es máquina.

Los registros HINFO y TXT no son necesarios.

Transferencia de zonas

Aqui empieza lo divertido.

Editar el fichero named.conf

Añadiendo un dns secundario (esclavo)

zone "elhacker.net" {
type slave; file "slave/elhacker.net";
    masters { 217.125.24.22; 217.125.24.23; };

Los servidores dns secundarios deben poder realizar transferencias de zonas con el servidor primario, de tal forma que mantengan toda su información actualizada. SIN EMBARGO, NO DEBERIAS PERMITIR A NINGUNA OTRA MAQUINA REALIZAR ESTE TIPO DE TRANSFERNCIAS.

Veamos esto ultimamente.

Si quieres permitir allow-transfers, hazlo bien almenos:

options {
...

allow-transfers {217.125.24.22;};
....
}

zone "elhacker.net"{
type master;
file "master/elhacker.net";
allow-transfers {192.168.14.20; 192.168.80.29;};
};

zone "elhacker.info"{
type master;
file "master/elhacker.net"
};

zone "elhacker.dot" {
type slave;
masters { 10.14.102.18; };
file "slave/elhacker.dot";
allow-transfers { none; };
}

Con esta configuracón, el dominio elhacker.INFO únicamente permitiría solicitudes de la transferncias de zona desde 217.125.24.22 (debido a las opciones globales). El dominio elhacker.net puede ser solo transferido por 192.168 etc y ninguna otra maquina podria hacer una transferencia del dominio elhacker.dot

Búsquedas inversas.

Las búsquedas inversas son una forma de obtener nombres de máquina partiendo de direcciones IP.

ftpserver IN CNAME 217-125-24-22
217-125-24-22 IN A 217.125.24.22

$ORIGIN 105.26.172.IN-ADDR.ARPA
85 IN PTR 217-125-24-22.elhacker.net

Asegurate que:

1.host ftpserver.elhacker.net
ftpserver.elhacker.net is a nickname for host 217-125-24-22.elhacker.net

host 217-125-24-22 has address 217.125.24.22

2. host 217-125-24-22.elhacker.net

217-125-24-22.elhacker.net has address 217.125.24.22

3. host 217.125.24.22
217-125-24-22.elhacker.net has address 217.125.24.22


Corrupción de la caché de BIND

Solo ocurre con versiones viejas de BIND.

Pero lo mejor es utilizar para tu servicio de nombres dos clases: uno interno y otro externo.

Si es posible ejecuta estos dos servidores de nombres de maquinas en maquinas distintas.

Listas  de acceso ACL en etc/named.conf

//servidor de nombres interno
acl "red-iterna"{
localhost; // importante!
10.0.0.0/24; // nuestas direcciones internas traducidas
};

Luego aplica esta lista de acceso añadiendo el siguiente bloque "options" en el fichero /etc/named.conf

//servidor de nombres interno
options{
allow-query { red-interna };
};

Caché:

//servidor de nombres externo
options
recursion no; // no responderás a consultas de zonas que no controles!
};

Si tienes varios servidores de nombres externos (deberia ser asi)

//servidor de nombres externo
acl "nuestros-servidores-dns"{
172.16.1.2 // ns1.example.com
172.16.2.2 // ns2.example.com
192.168.5.3 // ns3.example.com

zone "elhacker.net" { // nuestro nombre de dominio)
type master;
file "master/elhacker.net";
allow-query{
any; //todos pueden preguntar a este dominio!
};
allow-transfer{
nuestros-servidores-dns; // pero solo los servidores pueden transferir zonas
};
};

DNS Spoof.

Utilizar DNS Security (DNSSEC) que permite a los servidores DNS firmar sus respuestas.


Información sacada del libro:

"Hackers en Linux" de la editorial Mc-Graw Hill

Lolaine:
de nada  :P

Navegación

[0] Índice de Mensajes