Para empezarDejar la configuración por defecto en Apache o Nginx es regalarle el acceso a cualquier atacante antes de que empiece el ataque.
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.
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.
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.
$ sudo nano /etc/nginx/nginx.conf
http {
server_tokens off;
}
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 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.
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.
$ curl -I http://localhost
HTTP/1.1 200 OK
Server: nginx
Content-Type: text/html
Atajos: ← → para cambiar de pieza · / para buscar
