Tengo un bloque de servidor escuchando 80 solicitudes de puerto en un nombre de servidor específico junto con algunas directivas de ubicación. ¿Cómo puedo hacer que nginx trate cualquier solicitud que no coincida como si no la hubiera recibido, es decir, dejar que se agote el tiempo de espera? Actualmente esas solicitudes se tratan con un error 404¿Cómo puedo decirle a nginx que ignore silenciosamente las solicitudes que no coinciden y deje que se agote en lugar de dar 404
Respuesta
Supongo que está tratando de desviar las solicitudes maliciosas. Algo como esto podría funcionar (no probado).
Configure un servidor por defecto (capturas todas aquellas peticiones que no coinciden con un nombre de servidor existente), y luego redirigir al cliente de nuevo a sí mismo:
server {
listen 80 default_server;
rewrite^http://127.0.0.1/;
}
usted tendría que configurar un Catch similares todo para ubicaciones no válidas dentro de los bloques de servidor válidos. Podría ser más un dolor de cabeza de lo que desea.
No sé qué tan útil sería esto en la práctica. Sería mejor considerar fail2ban o alguna otra herramienta que pueda monitorear sus registros y prohibir clientes en el firewall.
No es una forma de ignorar todas las peticiones y decirle a nginx para responder nada:
server {
listen 80 default_server;
return 444;
}
documenta aquí: http://nginx.org/en/docs/http/ngx_http_rewrite_module.html
La no-estándar de código 444 se cierra una conexión sin enviar una cabecera de respuesta .
La pregunta es pedir ignorar solicitud, no conexión cercana. –
- 1. Have sed ignore las líneas que no coinciden
- 2. ¿Cómo puedo decirle a poedit que ignore los errores de texto que no son ASCII?
- 3. Cómo decirle a un Applescript que deje de ejecutar
- 4. cómo decirle a pylint que ignore ciertas importaciones?
- 5. Deje que el mvc-mini-profiler ignore las solicitudes de Glimpse
- 6. Cómo puedo decirle a AngularJS que "actualice"
- 7. ¿Cómo se encuentran las etiquetas que no coinciden en HTML?
- 8. ¿Cómo puedo decirle a ReSharper que deje de crear campos de solo lectura?
- 9. ¿Cómo le digo a gcov que ignore las líneas de código C++ que no son hittables?
- 10. ¿Cómo decirle al diff de svn que ignore las diferencias en la sangría de espacio/tabulación?
- 11. ¿Cómo puedo decirle a Struts2 que no valide un formulario la primera vez que se muestra?
- 12. Consulta que muestra registros que NO coinciden entre las tablas
- 13. AFNetworking: cómo configurar las solicitudes para volver a intentarlas en caso de que se agote el tiempo de espera?
- 14. ¿Cómo puedo depurar complementos que se ignoran silenciosamente?
- 15. ¿Cómo decirle a jQuery que deje de buscar DOM cuando se encuentre el primer elemento?
- 16. ¿Cómo decirle a TextMate que ignore mi carpeta Katz's Bundler en "Ir a archivo"?
- 17. ¿Cómo decirle a lapply que ignore un error y procese lo siguiente en la lista?
- 18. ¿Cómo decirle a Maven que ignore una dependencia si no puede resolverla?
- 19. ¿Puedo hacer que valgrind ignore las bibliotecas glibc?
- 20. ¿Cómo puedo decirle a ProGuard que mantenga mi función que se usa para onClick?
- 21. ¿Cómo puedo decirle a las plantillas de Django que no analicen un bloque que contiene código que se parece a las etiquetas de plantilla?
- 22. ¿Cómo puedo hacer que una UITableView deje de desplazarse
- 23. ¿Cómo bloquear las solicitudes de bot a las URL que coinciden con un patrón común en Apache?
- 24. ¿Cómo puedo decirle al compilador que ignore un método en los rastros de pila?
- 25. ¿Cómo puedo decirle a querydsl-maven-plugin que genere NumberPath con Long en lugar de BigDecimal?
- 26. ¿Cómo decirle a Google que se ha movido una página?
- 27. ¿Cómo hacer que nginx deje de procesar otras reglas y sirva una ubicación específica?
- 28. ¿Cómo decirle a Boost.Test que se detenga en el primer caso de prueba que falla?
- 29. ¿Cómo puedo decirle a emacs que no rompa las líneas largas?
- 30. ¿Cómo decirle a Eclipse que ignore los errores en Ant build.xml?
Sí, para las solicitudes no deseadas, quiero simular la situación en la que mi enrutador simplemente no reenvía el puerto en cuestión, y la solicitud agota el tiempo de espera. Y no puedo hacer eso en el firewall, porque las solicitudes del mismo host: puerto podrían ser realmente necesarias. El filtrado se realiza en todo el uri ... – Paralife
También podría consultar un WAF como http://code.google.com/p/naxsi/ –
. ¿El bloque de servidor mencionado anteriormente no provocaría un bucle infinito? Reescribe la URL y luego muestra sus contenidos, pero recuperar los contenidos reescritos hará que nginx evalúe nuevamente la reescritura para reescribir "http://127.0.0.1/" consigo mismo en un ciclo infinito. Suena como una receta para el comportamiento inesperado/colapsado. – Eric