Transferencias de zona seguras BIND9
TSIG - Transaction SIGnature.
BIND9 dispone de un mecanismo para asegurar las transmisiones de datos entre servidores. Este mecanismo firma la información enviada asegurando que el servidor maestro cifra la información mediante una clave compartida con el receptor, consiguiendo asegurar que la información no ha sido alterada por el camino.
Nos posicionamos en el servidor maestro.
Para ello generamos una clave con el comando dnnsec-keygen:
dnssec-keygen -a HMAC-MD5 -b 256 -n HOST tsig.miempresa.com
Donde "-a" indica el algoritmo de encriptación y -b la "fortaleza" del mismo.
Nos genera los siguientes ficheros:
Ktsig.miemrpesa.com.+157+42018.key
Ktsig.miemrpesa.com.+157+42018.private
Editamos Ktsig.miemrpesa.com.+157+42018.private:
cat Kclave-key.+157+21621.private
Private-key-format: v1.3
Algorithm: 157 (HMAC_MD5)
Key: qYqPgrdJoEiqrzangQDomQ3oW/VWYy/7mqbcCuTgJ3k=
Bits: AAA=
Created: 20121106210305
Publish: 20121106210305
Activate: 20121106210305
Algorithm: 157 (HMAC_MD5)
Key: qYqPgrdJoEiqrzangQDomQ3oW/VWYy/7mqbcCuTgJ3k=
Bits: AAA=
Created: 20121106210305
Publish: 20121106210305
Activate: 20121106210305
Editamos named.conf.options:
vim named.conf.options
Fuera de "options" añadimos lo siguiente:
key tsig.miempresa.com {
algorithm hmac-md5;
secret "Sp+HVFPou2ckGUlmJa4fuluEbrtI2TTEa7Ujet/PU30=";
};
server 192.168.1.5 {
keys { tsig.miempresa.com };
};
keys { tsig.miempresa.com };
};
Donde llamamos a la clave creada anteriormente y le indicamos que para el server esclavo (192.168.1.5) utilice la clave para hacer la transferencia.
Reiniciamos named:
service bind9 restart
Hemos de editar el fichero named.conf.options en el servidor esclavo y añadir fuera de "options" lo siguiente:
key tsig.miempresa.com {
algorithm hmac-md5;
secret "Sp+HVFPou2ckGUlmJa4fuluEbrtI2TTEa7Ujet/PU30=";
};
server 192.168.1.6 {
keys { tsig.miempresa.com };
};
keys { tsig.miempresa.com };
};
Indicando en este caso la IP del servidor maestro.
Reiniciamos el servidor maestro.
Posible error:
Este error se produce por no haber sincronización en las horas de los servidores. Si no tenemos el servicio NTP (Network Time Protocol) instalado, lo instalamos con:
aptitude install ntp
Sincronizamos la hora con los servidores. (se pueden cambiar editando un fichero)
ntpq -p
Este paso lo repetimos en el server esclavo.
Comprobamos syslog en el servidor esclavo:
Listo.
No hay comentarios:
Publicar un comentario