Volver a la página principal
miércoles 13 noviembre 2024
23

Cómo habilitar y configurar mod_status en Apache para monitorear el estado del servidor

El módulo mod_status en Apache permite a los administradores obtener información detallada sobre el estado del servidor web. Proporciona un resumen en tiempo real que incluye datos como la carga del servidor, el número de solicitudes activas y el tiempo de actividad. Esto es especialmente útil para monitorear el rendimiento y solucionar problemas en el servidor.

¿Qué es mod_status?

mod_status es un módulo de Apache que muestra un informe detallado del estado del servidor en una página web especial (usualmente accesible en la ruta /server-status). Esta página incluye información como:

  • Número de solicitudes activas y en espera
  • Información sobre cada solicitud en proceso
  • Tiempo de actividad del servidor
  • Estadísticas de tráfico
  • Carga del servidor

Esta herramienta es fundamental para administradores que necesitan monitorear el rendimiento de Apache y detectar problemas o cuellos de botella.

Instalación y activación de mod_status en Apache

En la mayoría de las instalaciones de Apache, mod_status está incluido pero puede que necesite ser activado manualmente.

1. Verificar si mod_status está activado:

apachectl -M | grep status

Si status_module no aparece, debes activarlo.

2. Activar mod_status:

sudo a2enmod status

3. Reiniciar Apache para aplicar los cambios:

sudo systemctl restart apache2

Configuración básica de mod_status

Para acceder al informe del estado del servidor, es necesario configurar el acceso a la página /server-status. Esto se hace en el archivo de configuración del sitio, como /etc/apache2/sites-available/000-default.conf.

Ejemplo de configuración para el acceso a /server-status

Añade la siguiente configuración en el archivo del sitio o en el archivo de configuración global de Apache:

<Location "/server-status">
    SetHandler server-status
    Require local
</Location>
  • SetHandler server-status indica que /server-status mostrará el estado del servidor.
  • Require local permite que solo se acceda a la página desde el mismo servidor (localhost). Si deseas permitir el acceso desde una IP específica, reemplaza Require local por Require ip 192.168.0.1.

Habilitar estadísticas detalladas

Para obtener estadísticas más detalladas sobre cada solicitud, agrega ExtendedStatus On a la configuración de Apache:

ExtendedStatus On

Esto proporciona información adicional, como el tiempo de respuesta de cada solicitud y el tiempo total de procesamiento del servidor.

Visualización del estado del servidor

Una vez configurado, puedes acceder al estado del servidor visitando http://localhost/server-status desde el navegador en el servidor o desde una IP autorizada. Aquí verás datos en tiempo real sobre el rendimiento de Apache.

Información mostrada en /server-status

  • Server Version y Server MPM: Muestra la versión de Apache y el tipo de procesamiento multiproceso.
  • Uptime: Tiempo que el servidor ha estado activo.
  • Current Load: Carga actual del servidor en términos de solicitudes.
  • CPU Usage y Request Count: Información sobre el uso de CPU y el número de solicitudes atendidas.
  • Worker Status: Muestra el estado de cada hilo de trabajo (en espera, leyendo, respondiendo, etc.).

Ejemplo de configuración de seguridad adicional

Para limitar el acceso a /server-status y mejorar la seguridad, es recomendable proteger esta página con autenticación básica o restringir el acceso a direcciones IP específicas.

<Location "/server-status">
    SetHandler server-status
    Require ip 192.168.1.0/24
    AuthType Basic
    AuthName "Restricted Access"
    AuthUserFile /etc/apache2/.htpasswd
    Require valid-user
</Location>

En este ejemplo:

  • Require ip 192.168.1.0/24 limita el acceso a la subred local.
  • La autenticación con contraseña se implementa utilizando un archivo .htpasswd.

Referencias adicionales

Para más información sobre las opciones de configuración de mod_status, consulta la documentación oficial de Apache sobre mod_status.

Etiquetas:
apache
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer