Las 10 mejores formas de endurecer Nginx para Windows
Con el 13% de la cuota de mercado total de servidores web, el servidor HTTP de código abierto de alto rendimiento Nginx es una estrella en ascenso en el panteón de los pesos pesados de los servidores web. Incluso los aficionados más acérrimos de Microsoft están abandonando IIS en favor de Nginx en entornos de Windows Server; para aquellos con estrictos requisitos de rendimiento/velocidad, Nginx no puede ser superado. Pero como todos los servidores web, la solución de más rápido crecimiento en el mercado no está exenta de deficiencias de seguridad. Las siguientes son las 10 mejores formas de endurecer Nginx para Windows.
Las 10 mejores formas de endurecer Nginx para Windows
El archivo de configuración de Nginx (nginx.conf)
Las configuraciones principales del servidor web de Nginx residen en el archivo nginx.conf. Esto incluye muchas de las configuraciones de seguridad para fortalecer su instancia de servidor web, por lo que vale la pena familiarizarse con este archivo. Para Windows, el archivo nginx.conf se puede encontrar en [Directorio de instalación de Nginx]/conf/.
1. Redirigir el tráfico HTTP a HTTPS.
Obligar a todas las conexiones a usar cifrado puede reducir la posibilidad de espionaje y ataques de intermediario (MITM). Usando la directiva return 301 https://$server_name$request_uriestablecerá una redirección de URL permanente para todas las solicitudes realizadas al puerto 80.
Nginx es posiblemente el servidor web más seguro listo para usar; Dicho esto, las medidas de endurecimiento adicionales, como las 10 mencionadas anteriormente, pueden aumentar la protección de su sitio web contra los inevitables ataques cibernéticos. Y para mantenerse al tanto de las vulnerabilidades críticas y las fallas de seguridad, la plataforma de resiliencia digital de UpGuard ofrece un monitoreo y validación de seguridad continuos necesarios para sobrevivir en el duro panorama actual de amenazas cibernéticas.
2. Habilite solo TLS y deshabilite SSL.
Todas las versiones de SSL se han considerado efectivamente inseguras, por lo que se debe usar TLS en su lugar siempre que sea posible. Esto se puede especificar en el parámetro ssl_protocols (por ejemplo, TLSv1, TLSv1.1, TLSv1.2).
3. Limite el número de conexiones permitidas por dirección IP.
Básicamente, esto evita las fugas de conexión del cliente y podría ayudar a mitigar los ataques de denegación de servicio (DoS). Para ello, establezca los valores adecuados en la directiva limit_conn_zon.
4. Agregue protección de secuencias de comandos entre sitios (XSS) a Nginx.
Cuando add_header X-XSS-Protection "1; mode=block"; está incluido en su archivo de configuración, Nginx agregará protección X-XSS a los encabezados para mitigar los ataques XSS y clickjacking.
5. Negar a determinados agentes de usuario o bots la realización de solicitudes.
Esto evita que los spammers y los escáneres web ataquen su servidor web con solicitudes superfluas. Para hacer esto, deberá escribir una condición para olfatear ciertos valores de $http_user_agent (por ejemplo, Baiduspider, scrapbot) y devolver un 403 al coincidir.
6. Establezca limitaciones de búfer para todos los clientes.
Los ciberdelincuentes suelen emplear los ataques de desbordamiento de búfer para poner en peligro los servidores web. Al establecer las directivas adecuadas en el archivo de configuración de Nginx, es decir, los parámetros client_body_buffer_size, client_header_buffer_size, client_max_body_size large_client_header_buffers, puede protegerse contra dichos ataques.
7. Apague Nginx server_tokens para evitar la fuga de datos.
Las páginas 404 del servidor web suelen mostrar algunos bits de información privilegiada: en el caso de Nginx, desactivar server_tokens impedirá que muestre la versión del servidor web que se está utilizando.
8. Deshabilite los módulos de servidor web Nginx no deseados.
Al hacerlo, se reduce la superficie de ataque de su servidor web al restringir las operaciones que podrían ser explotadas por los atacantes, incluso a través de procesos de piratería automatizados. Lo mejor es determinar qué módulos se van a desactivar antes de la instalación; después de la instalación, los cambios deberán ir seguidos de una recompilación de Nginx. Los módulos se desactivan con la opción de configuración durante la instalación.
9. Utilice el encabezado x-frame-options.
Al configurar Nginx para usar el encabezado X-Frame-Options con el valor "SAMEORIGIN", los navegadores que representan páginas dentro de un <frame> o <iframe> no estarán sujetos tan fácilmente a ataques de clickjacking.
10. Deshabilite los métodos HTTP que no se utilicen.
Esto se puede establecer en la sección "servidor" de la configuración de Nginx. Al agregar una condición para permitir solo los métodos GET/HEAD/POST, los métodos menos inocuos como TRACE y DELETE se cumplen con un código de estado 444 Sin respuesta.
En UpGuard, podemos proteger su negocio de las violaciones de datos y ayudarlo a monitorear continuamente la postura de seguridad de todos sus proveedores.
¿Su empresa corre el riesgo de sufrir una violación de seguridad?
¡HAGA CLIC AQUÍ para obtener su calificación de seguridad gratuita ahora!