NGINX - 조건부로 IP를 허용하거나 거부합니다.

NGINX - 조건부로 IP를 허용하거나 거부합니다.

NGINX에서 IP를 조건부로 허용하거나 거부할 수 있나요? 이는 허용되지 않습니다.

if($example){
  deny all;
}

if ($example2){
  allow all;
}

답변1

geo 모듈을 사용하면 이 작업을 수행할 수 있습니다. 이렇게 하면 IP 1.1.1.1 및 2.2.2.2만 엔드포인트에 액세스할 수 있습니다. 모든 IP를 허용하고 특정 IP만 거부하도록 논리를 반대로 할 수 있습니다.

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

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

관련 정보