Descarga inmediata tras la compraPDF sin DRM: léelo en cualquier dispositivoGarantía de Calidad y Atención 24/7Pago cifrado y 100% seguroEbooks gratis para probar antes de comprarDescarga inmediata tras la compraPDF sin DRM: léelo en cualquier dispositivoGarantía de Calidad y Atención 24/7Pago cifrado y 100% seguroEbooks gratis para probar antes de comprar

Tu servidor web está expuesto: endurece Apache y Nginx

  • 1 min de lectura
  • Gratis
Vídeo de esta pieza: en producción. Mientras tanto, todo el contenido está aquí en texto.
Para empezar

Dejar la configuración por defecto en Apache o Nginx es regalarle el acceso a cualquier atacante antes de que empiece el ataque.

Dato clave

El peligro por defecto

Más del 40 por ciento de los servidores web en producción mantienen activas las páginas de bienvenida y los módulos de diagnóstico predeterminados, revelando números de versión exactos que facilitan la selección de exploits públicos en cuestión de segundos.

Concepto

Hardening de Servidores

El endurecimiento o hardening consiste en eliminar toda funcionalidad innecesaria, restringir privilegios a nivel de sistema operativo y aplicar configuraciones estrictas para minimizar la superficie de ataque expuesta al exterior.

Practica

Ocultando la versión en Nginx

Por defecto, Nginx muestra su versión exacta y el sistema operativo en las cabeceras HTTP y páginas de error. Debemos desactivarlo explícitamente en el archivo de configuración principal.

terminal
$ sudo nano /etc/nginx/nginx.conf
http {
    server_tokens off;
}
Paso a paso

Directivas críticas en Apache

Para asegurar un entorno Apache robusto, implementa estas tres directivas obligatorias en tu configuración global o de virtual host:

Marca cada paso al entenderlo · 0/3

Cuidado

Cuidado con los permisos

Jamás ejecutes los servicios web bajo el usuario root. Apache y Nginx deben correr con usuarios sin privilegios dedicados, como www-data o nginx, asegurando que si la aplicación web es comprometida, el atacante no obtenga control total del sistema.

Practica

Verificación de cabeceras

Tras aplicar los cambios y reiniciar el servicio, utiliza curl para comprobar que ya no se filtra información sensible en la respuesta del servidor.

terminal
$ curl -I http://localhost
HTTP/1.1 200 OK
Server: nginx
Content-Type: text/html

Atajos: ← → para cambiar de pieza · / para buscar