NGINX: permitir o denegar IP condicionalmente

NGINX: permitir o denegar IP condicionalmente

¿Es posible permitir o denegar IP condicionalmente en NGINX? Esto no está permitido.

if($example){
  deny all;
}

if ($example2){
  allow all;
}

Respuesta1

Puedes hacer esto usando el módulo geo. Esto solo permitirá que las IP 1.1.1.1 y 2.2.2.2 accedan al punto final. Podrías revertir la lógica para permitir todas las ips y solo negar unas pocas específicas.

geo $trusted_user {
    default 0;
    1.1.1.1 1;
    2.2.2.2 1;
}

server
{
    if ( $trusted_user ~ 0 ) { return 444; }
}

información relacionada