Auditoría de sistemas UNIX. Parte 16. Configuración de red

Nuestra siguiente parada en el capítulo de red es el análisis de la configuración básica de la misma. Para ello vamos a analizar los permisos y ubicación de los siguientes ficheros: resolv.conf, nsswitch.conf, hosts y services

  1. El fichero resolv.conf contiene la configuración que dictamina el dominio al que pertenece la máquina (domain) así como las direcciones de los servidores de nombres que se utilizarán (nameserver)
  2. El fichero hosts ya lo vimos ayer. Contiene un mapeo de nombres de host a direcciones IP que, en ausencia de DNS, facilita la resulución de nombres con los que nuestra máquina debe comunicarse.
  3. El fichero services contiene una lista de servicios de red, así como los puertos TCP o UDP empleados para el establecimiento de la comunicación. Lo veremos en secciones posteriores de este pequeño curso.
  4. En el caso de nsswitch.conf, se trata de un fichero en el que se configura la relación de los servicios que hay que utilizar para determinar información del sistema concerniente a nombres de host, ficheros de clave y ficheros de grupo. Lo normal es que las instalaciones por defecto no incluyan el fichero nsswitch.conf, y en caso de incluírse, la información relacionada con los ficheros de clave y grupo sólo tendrá sentido si empleamos servcios NIS (Network Information Service), lo cual tampoco tiene por qué ser lo usual.

Estos cuatro ficheros suelen residir bajo el directorio /etc, aunque como siempre, pueden existir varianzas entre sistemas. Así pues, para la resolución de nombres, la dupla que forman /etc/resolv.conf y /etc/hosts se aglutina en un único fichero /etc/netsvc.conf en el caso de AIX, HP-UX o DG/UX. En Mac OS X, bastará con emplear el comando NetInfo, mientras que en distribuciones menos populares como Reliant, la información reside en el fichero /etc/netconfig.

El objetivo de auditoría será analizar los permisos, propietario y grupo de estos cuatro ficheros. También procuraremos deducir cuál es el rango de comunicaciones posible para la máquina en función a los resultados que arrojen dichos ficheros.

Ejemplo práctico

Lo primero que tenemos que hacer es volcar los contenidos del directorio /etc a fichero. Lo haremos de tal manera que el volcado ofrezca los detalles suficientes que perseguimos analizar.

ls /etc/ -Rla >> directorioetc.txt

Ahora basta con localizar los cuatro ficheros en el listado generado. Un simple script puede resultarnos útil:

#!/bin/bash
for i in services resolv.conf hosts services nsswitch.conf; do
grep $i directorioetc.txt
done

Los resultados (Linux 2.6.17-10-386 instalación por defecto) son, una vez limpiados a mano los resultados supérfluos:

-rw-r–r– 1 root root 17750 2006-07-21 03:06 services
-rw-r–r– 1 root root 65 2007-01-24 15:51 resolv.conf
-rw-r–r– 1 root root 284 2007-01-23 13:10 hosts
-rw-r–r– 1 root root 470 2005-09-29 19:40 nsswitch.conf

Como es fácil comprobar, son todos propiedad del root y pertenecen al grupo root. Los permisos son -rw-r–r–, lo que equivale a 644 (lectura y escritura para el propietario, lectura para grupo y otros).

Sin entrar a la configuración y contenidos de los ficheros, fuera de nuestro ámbito, dictaminamos que estos ficheros están correctamente configurados. Tampoco existen anormalidades en los alcances de la máquina.

Resumen

Para auditar la configuración de red haremos un estudio de los permisos y asignaciones de los ficheros de configuración que se estén empleando. Estudiaremos los ficheros usuales que dictaminan los parámetros de operación en red, según la plataforma que estemos analizando, y observaremos si el alcance de las máquinas, en cuanto a posibilidad de comunicación, es el adecuado.

2 comentarios sobre “Auditoría de sistemas UNIX. Parte 16. Configuración de red

Comentarios cerrados.