Cómo configurar la seguridad en Apache 2.4

Se propone realizar las siguientes acciones para mejorar la seguridad del servidor web Apache:

  • Actualizar el ServidorWeb Apache
  • Prevenir Ataques de Denegación de Servicio
  • Prevenir Ataques de Fuerza Bruta
  • Ocultar la Versión de Apache y del Sistema Operativo
  • Deshabilitar Listado de Directorio y FollowSymLinks
  • Deshabilitar TRACE HTTP Request
  • Seguridad de Encabezados

Actualizar el Servidor Web Apache

Es crucial contar con las últimas actualizaciones del servidor, que prevengan los posibles problemas a encontrar.

apt-get update
apt-get dist-upgrade

Prevenir Ataques de Denegación de Servicio

Poner en una lista negra el IP desde el que provienen muchas solicitudes, que se dirigen a una página varias veces por segundo.

apt install libapache2-mod-evasive -y
systemctl restart apache2
apachectl -M | grep evasive

Prueba de validación:

Prevenir Ataques de Fuerza Bruta

Previene ataques de fuerza bruta a aplicaciones de servidores web.

apt install libapache2-mod-security2 -y
systemctl restart apache2

Pruebade validación:

Ocultar la Versión de Apache y del Sistema Operativo

Esta práctica puede ocultar información a los atacantes que recolecteninformación del servidor WEB.

nano /etc/apache2/conf-enabled/security.conf

Modificar los siguientes valores:

ServerSignature Off 
ServerTokens Prod

Reiniciar el servidor

systemctl reload apache2

Prueba de validación:

Revisar las cabeceras de respuestas del servidor Web

Deshabilitar Listado de Directorio y FollowSymLinks

Esto impide que los hackers analisen los archivos del servidor web.

a2dismod autoindex -f
systemctl reload apache2

Prueba de validación:

Medianteun navegador acceder a una carpeta publicada en el servidor Web.

Deshabilitar TRACE HTTP Request

Esto impide que un atacante robe la información de las cookies.

nano /etc/apache2/conf-enabled/security.conf

Modificar el siguiente valor:

TraceEnable Off
systemctl reload apache2

Prueba de validación:

Seguridad de Encabezados

Los encabezados le indican al navegador que tenga en cuenta los tipos de archivos definidos y no permite el rastreo de contenido.

# a2enmod headers
# nano /etc/apache2/conf-enabled/security.conf

Modificar los siguientes valores:

Header set X-Content-Type-Options: "nosniff"

Los encabezados le indican al navegador que tenga en cuenta los tipos de archivos definidos y no permite el rastreo de contenido.

Header always set X-Frame-Options: "SAMEORIGIN"

Previene el ataque Clickjacking

Header always set Referrer-Policy: "no-referrer"

Este parámetro indica que nunca se envíe el origen del visitante al acceder a un link. De esta manera, todos los usuarios que llegan a una web desde otra configurada como no-referrer aparecerán con el origen NULL.

Header set X-XSS-Protection: "1; mode=block"

Habilita el filtro XSS. En lugar de sanitizar la página, el navegador evitará la visualización de la página en caso de que algún ataque sea detectado.

Reiniciar el servidor:

systemctl restart apache2

Prueba de validación:

Revisar las cabeceras de respuesta delservidor Web apache.

Referencia:

https://httpd.apache.org/docs/2.4/misc/security_tips.html

Entradas relacionadas