Saltar la navegación

6.- Monitorización del acceso: Archivos de registro (logs).

Caso práctico

Ilustración de Antonio, trabajador de la empresa BK programación. Tiene conocimientos de informática a nivel de usuario, maneja paquetes ofimáticos y le gusta jugar con el ordenador.

¿Qué, quién, dónde, cuándo, por qué ha pasado? Eso es lo que queremos saber en todo momento -comentó María-. Recordad que es necesario guardar los archivos de registro al menos durante 1 año según la LSSI/CE. Tenemos que estar preparados ante cualquier petición de los logs (requerimiento judicial) por parte de las administraciones. Es por esto que tú, Antonio, vas a realizar una batería de pruebas: accesos a páginas existentes y no existentes, búsqueda de listado de ficheros y no solamente el index.html, accesos no permitidos a bases de datos, accesos controlados por IP, por usuario, etc.

Muy bien, eso está hecho -dijo Antonio-.

Tan importante como es configurar un servidor web lo es mantener y comprobar su correcto funcionamiento, y para ello debes ayudarte de los logs o archivos de registro que te permiten revisar y estudiar su funcionamiento

Apache permite mediante diversas directivas crear archivos de registro que guardarán la información correspondiente a las conexiones con el servidor. Esta información es guardada en formato CLF (Common Logon Format) por defecto. Ésta es una especificación utilizada por los servidores web para hacer que el análisis de registro entre servidores sea mucho más sencillo, de tal forma que independientemente del servidor web utilizado podamos emplear el mismo método de análisis de registro, ya sea mediante lectura, mediante programas ejecutables (scripts) o mediante programas propios de análisis de registro.

En un archivo de registro en formato CLF cada línea identifica una solicitud al servidor web. Esta línea contiene varios campos separados con espacios. Cada campo sin valor es identificado con un guión (-). Los campos empleados en una configuración por defecto de Apache2 son los definidos en la siguiente tabla:

Ejemplo log Apache en formato CLF.
Ejemplo log Apache en formato CLF
192.168.200.100 - - [05/May/2020:17:19:18 +0200] "GET /index.html HTTP/1.1" 200 20
Campos (especificadores) Definición Ejemplo
host (%h) Identifica el equipo cliente que solicita la información en el navegador. 192.168.200.100
ident (%l) Información del cliente cuando la máquina de éste ejecuta identd y la directiva IdentityCheck está activada.
authuser ( %u) Nombre de usuario en caso que la URL solicitada requiera autenticación HTTP.
date ( %t) Fecha y hora en el que se produce la solicitud al servidor. Va encerrado entre corchetes. Este campo tiene su propio formato: [dia/mes/año:hora:minuto:segundo zona] [05/May/2020:17:19:18 +0200]
request (%r) Petición del cliente, esto es, la página web que está solicitando. En el ejemplo: /index.html, esto es, dentro de la raíz del dominio que se visite la página /index.html
status ( %s ó %>s) Identifica el código de estado HTTP de tres dígitos que se devuelve al cliente. 200
Bytes (%b) Sin tener en cuenta las cabeceras HTTP el número de bytes devueltos al cliente. 20

 

Cada campo tiene su especificador, el cual se emplea en las directivas de Apache para indicar que campo queremos registrar.