Tengo una API que es algo popular (más de 10.000 solicitudes por día). Después de 10 solicitudes por día desde una dirección IP, devuelvo un mensaje que le dice al usuario que necesita un poco de efectivo si quiere usar más el servicio.¿Cómo puedo bloquear las solicitudes de China en mi aplicación?
Esta mañana, encontré que mi servicio web funcionaba terriblemente lento. Revisé la base de datos y recibí un spam completo con solicitudes de direcciones IP originarias de China. Utilizarían una dirección IP 10 veces y luego incrementarían el último octeto. Tiempos tristes.
Me gustaría limitar o cortar por completo las solicitudes de China, por el bien de mantener el sistema vivo. ¿Cuál es la mejor manera de hacer esto? Geolookup cada solicitud y prohibición por código de país en PHP? Esto parece una forma ineficiente. No hay nada que pueda hacer en el nivel de htaccess, ¿verdad?
No lo haga en el nivel .htaccess. En ese momento, la conexión ya está hecha y absorbiendo los recursos del servidor, incluso si solo se rechaza de inmediato. Bloquear el acceso en el firewall. –
¿Quizás solo pueda hacer una comprobación rápida si la IP en China está bloqueada? http://www.nirsoft.net/countryip/cn.html –
Supuestamente esta es una lista de rangos de IP chinos: http://www.wizcrafts.net/chinese-blocklist.html No tengo idea de lo legítimo que es, pero el relleno aquellos en su firewall en una regla de bloque teóricamente arreglarían lo peor de su problema de spam. –