Plugin de limitación de velocidad Kong Gateway.
Establece reglas límite actuales basadas en año, mes, día, hora, minuto y segundo, y múltiples restricciones entran en vigor al mismo tiempo.
Por ejemplo, no más de 10 llamadas al día, no más de 3 veces por minuto.
Cuando hay más de 3 visitas en un minuto, se reportará un error en la cuarta vez.
Cuando el número de visitas supera las 10 veces en un día, se reportará un error por undécima vez.
Escenario: Necesito limitar la interfaz de la API a una sola IP que solo pueda solicitarse 3 veces por minuto; cuando activo el plug-in, no hay problema para acceder al gateway Kong a través de la IP normalmente, pero la capa superior de Kong sigue teniendo nginx como carga, así que la IP obtenida por Kong es siempre la IP privada de la máquina nginx, de modo que todas las IPs solo pueden acceder a la interfaz de la API 3 veces por minuto, y ninguna IP accede a la interfaz 3 veces por minuto.
Como se muestra en la figura siguiente, mientras la interfaz se solicite 3 veces por minuto, todos los visitantes serán rechazados.
Instalé el plugin http-log para registrar la solicitud y la información correspondiente, para poder depurarla.
Dado que Kong no recibe client_ip dirección normalmente, ¿cómo puedo corregir este problema?
Solución
Modifica el archivo de configuración Kong,
/etc/kong/kong.conf文件,增加trusted_ips = 0.0.0.0/0,::/0
real_ip_header = X-Enviado-Para
FinalmenteReiniciar Kong, comando: Kong reiniciar
trusted_ips
Defina un bloque de direcciones IP confiables que se sepa que envían el encabezado X-Forwarded-* correcto. Las solicitudes de IPs confiables hacen que Kong reenvíe su cabecera a X-Forwarded-* aguas arriba. Las solicitudes no confiables hacen que Kong inserte su propio encabezado X-Forwarded-*.
Esta propiedad también establece la directiva en la configuración set_real_ip_fromNginx. Acepta valores del mismo tipo (bloques CIDR), pero listas separadas por comas.
¡Confiar en todos /! \IP, por favor establece este valor en 0.0.0.0/0,::/0.
Si unix: especifica un valor especial, todos los sockets de dominio UNIX serán confiables. Documentación de referencia:https://docs.konghq.com/0.14.x/configuration/#trusted_ips
Una vez completada la modificación, Kong puede obtener correctamente la dirección IP del cliente, como se muestra en la figura siguiente:
(Fin)
|