Clicky

Error ModSecurity: Failed to access DBM file "/var/log/httpd//global": Permission denied

La solución es otorgar al directorio /var/log/httpd permisos de escritura

mod security de ApacheLlevaba tiempo con este error en los logs de los servidores virtuales tras instalar el mod_security de Apache. Hoy, tras instalar una actualización de la versión 2.5.12-2.el6 a la 2.6.7-1.el6, me seguía dando el mismo error y yo pensaba que se solucionaría el bugg con esta nueva versión según comentan en varios foros de desarrolladores.

No se ha solucionado y los errores que saltan en los logs son estos dos (pongo el ejemplo de uno de los virtual servers):

[Sun Sep 09 06:45:28 2012] [error] [client 69.175.50.165] ModSecurity: Failed to access DBM file "/etc/httpd/logs//global": Permission denied [hostname "www.photojesus.es"] [uri "/account/register.php"] [unique_id "UEwe6C5pe3gAAFGlzSMAAAAD"]
[Sun Sep 09 06:45:28 2012] [error] [client 69.175.50.165] ModSecurity: Failed to access DBM file "/etc/httpd/logs//ip": Permission denied [hostname "www.photojesus.es"] [uri "/account/register.php"] [unique_id "UEwe6C5pe3gAAFGlzSMAAAAD"]

Detalle:

ModSecurity: Failed to access DBM file "/etc/httpd/logs//global": Permission denied

ModSecurity: Failed to access DBM file "/etc/httpd/logs//ip": Permission denied

Finalmente esta página de The Mail Archive ha hecho que se me encendiera la bombilla. En la misma le preguntan al que pide ayuda sobre este error qué permisos tiene en el directorio /var/log/httpd , he ido corriendo a mirar los de mi servidor y... ¡Oh sorpresa! el directorio no era escribible pues tenía permisos CHMOD 700.

La solución es hacer que este directorio sea escribible otorgándole permisos a partir de 750 (podrían ser 750, 755 o más permisivos 777)

La duda que me asalta es que en ese directorio que tenía permisos 700 si se estaban escribiendo otros logs del servidor, debe ser que el mod_security es muy especial...

Jesus_Caceres