DNS: named-chroot comandos comunes

A la hora de administrar un servidor de nombres DNS sobre bind, debemos tener en cuenta algunos aspectos importantes.

Chroot

Es mejor aislar mediante chroot el servicio de DNS, de forma que los ataques sobre bind, no comprometan el resto de la máquina. En el caso de redhat enterprise linux, nos lo paquetizan como named-chroot

yum install -y named-chroot

Administración gráfica: webmin

Para evitar errores de escritura, la interfaz de webmin, es una ayuda para hacer cambios, y verificar la sintáxis de todos los archivos.

Comprobación de sintáxis tras los cambios named-checkconf

Si preferimos usar el editor de textos, antes de cargar el servicio y, ante la posibilidad de que haya errores de sintáxis, lo mejor es usar named-checkconf.

named-checkconf -t /var/named/chroot /etc/named.conf

Replicando los cambios mediante puppet

Si estamos usando puppet para replicar los cambios en distintos DNS, es mejor poner un indicador en los archivos que, tras un cambio, deben reiniciar el servicio de nombres.

 # add a notify to the file resource
  file { '/var/named/chroot/etc/named.conf':
    notify  => Service['named-chroot'],  # this sets up the relationship
    ......
  }

Windows: Configurar un cluster con quorum en unidad compartida de red.

Al trabajar con cluster de microsoft en máquinas virutales, es imposible crear un disco de quorum compartido entre 2 máquinas sin que haya dependencia del host. Renunciar a los movimientos de máquinas virtuales entre hosts, hace imposible el mantenimiento. Por ello, es mejor configurar las máquinas windows en cluster con el disco de quorum en una unidad de red.

Creación del cluster

Cada una de las máquinas tendrá sus discos de datos, configurados como discos normales.

  • win1

  • win2

Se crea un cluster de conmutación por error, con los dos nuevos nodos windows.

Cuando ya lo tenemos, tenemos que crear su nuevo disco de quorum.

Seleccionar el testigo de quorum.

ms.quorum.error018

Configurar un testigo de recurso compartido de archivos.

ms.quorum.error023

Configuramos la ruta de red compartida.

ms.quorum.error024

En este punto, nos puede dar un error de permisos de quorum.ms.quorum.error025

El problema radica en que en windows, es la cuenta del sistema local quien está ejecutando el servicio de cluster. Esta cuenta local (distinta para cada nodo del cluster) no tiene permisos sobre la carpeta compartida del quorum.

Forzando el servicio de cluster a ejecutar con una cuenta de dominio que tenga permisos sobre la unidad de red, ya no hay problema en configurar el quorum.

También se puede optar por otra opción, que es dar permisos a los usuarios de máquina local que ejecutarán el servicio, sobre el almacenamiento en red, de forma que tengan acceso de lectura y escritura sobre los archivos del quorum.

Nagios: Monitorización de servicios de windows

Configuración en windows

Instalación de NSCLient++.

En la instalación, necesitamos especificar desde qué equipos se va a hacer la monitorización (puede ser una subred) y qué clave concertada van a usar tanto cliente como servidor.

Toda la configuración se guarda en un archivo nsclient.ini

[/settings/default]
; ALLOWED HOSTS - A comaseparated list of allowed hosts. You can use netmasks (/ syntax) or * to create ranges.
allowed hosts = 192.168.2.2/25
; PASSWORD - Password used to authenticate against server
password = concerted

Para poder hacer checks sobre servicios, necesitamos además que nsclient acepte argumentos. Para ello, añadimos la sección de nrpe server:

[/settings/NRPE/server]
allow arguments = true

Configuración en Nagios

En nuestro caso, hemos optado por el uso del comando check_nrpe.

El nuevo servicio en services.cfg, quedará algo como esto:

 check_nrpe!checkServiceState -a ShowAll 'My Servicio de Windows'

Configurando ntp con el real observatorio de la armada

Desde hace unos años, los servicios públicos deben tener la hora configurada contra el real observatorio de la armada.

En los sistemas linux, basta con configurar los paquetes del servicio ntp contra los servidores de hora.roa.es y reiniciar el servicio:

 

[root@server] ~# apt-get install ntp ntpdate

[root@server] ~# cat /etc/ntp.conf 
server pool.ntp.org iburst maxpoll 9 minpoll 6
# XXX: this doesn't work as documented
#restrict default ignore
restrict 127.0.0.1
restrict -6 ::1

server hora.roa.es

disable bclient

[root@server] ~# service ntp restart