Recientemente nos encontramos con un error ip_10_secs_limit como resultado de un usuario que utiliza iCloud Private Relay, que utiliza un grupo de IPs compartidas.
¿Hay alguna forma de relajar esta configuración? Sospecho que solo estamos activando esta regla y no hemos tenido problemas con el spam.
Encontré esta mención en el código y un GlobalSetting.max_reqs_per_ip_per_10_seconds, pero no he podido encontrarlo al buscar en la configuración de Discourse.
¿Tus registros muestran las direcciones IP de los usuarios o muestran las direcciones de iCloud? Si es lo último, necesitas arreglar la configuración de nginx para que la IP del usuario final llegue a Discourse en lugar del proxy. Los temas sobre la ejecución de Discourse con otros servidores tienen el código que necesitas agregar a app.yml para arreglar eso. Necesitas cambiar el x-forwarded-for, si la memoria no me falla.
Puedes anular esa configuración con una variable de entorno
iCloud podría haber sido una falsa alarma; tengo un informe adicional de un usuario de Chrome que también está viendo esto. Sorprendentemente, este problema recién ha comenzado a ocurrir, a pesar de que no ha habido cambios en la configuración del servidor, etc. (ejecutando 2.9.0.beta9), así que me pregunto por qué ha comenzado a ocurrir.
Puedes anular esa configuración con una variable de entorno
¿Significa que puedo configurar ip_10_secs_limit como una variable de entorno en el servidor? ¿Todo está en minúsculas, necesita un prefijo? Estaba confundido porque el mensaje de error mostraba ip_10_secs_limit, pero el código fuente de Discourse mostraba GlobalSetting.max_reqs_per_ip_per_10_seconds, así que no estoy seguro de qué nombre de variable usar.
Creo que puede tener razón sobre la dirección IP; parece que se informa como una dirección IP de Cloudflare. Parece que hay algunos problemas conocidos aquí, ¡leeré un poco!