ngx_http_access_module

ngx_http_access_module 모듈을 사용하면 특정 클라이언트 주소로 액세스를 제한할 수 있습니다.

액세스는 비밀번호, 하위 요청의 결과, JWT로 제한할 수 있습니다. 주소와 비밀번호를 사용한 액세스 동시 제한은 satisfy 명령으로 제어합니다.

예제 구성

location / {
    deny  192.168.1.1;
    allow 192.168.1.0/24;
    allow 10.1.1.0/16;
    allow 2001:0db8::/32;
    deny  all;
}

규칙은 첫 매치를 발견할 때까지 순차적으로 검사합니다. 이 예시에서는 IPv4 네트워크의 경우 192.168.1.1를 제외한 10.1.1.0/16과 192.168.1.0/24에 대해서만 액세스가 허용되고, IPv6 네트워크의 경우 2001:0db8::/32만 허용합니다. 규칙이 많은 경우에는 ngx_http_geo_module 모듈 변수를 사용하는 것이 좋습니다.

Directives

Syntax:  allow address | CIDR | unix: | all;
Default: —
Context: http, server, location, limit_except

지정된 네트워크 또는 주소에 대해 액세스를 허용합니다. 특수 값 unix:를 지정하는 경우(1.5.1), 모든 UNIX 도메인 소켓에 대해 액세스를 허용합니다.

Syntax:  deny address | CIDR | unix: | all;
Default: —
Context: http, server, location, limit_except

지정된 네트워크나 주소에 대한 액세스를 거부합니다. 특수 값 unix:를 지정하는 경우(1.5.1), 모든 UNIX 도메인 소켓에 대한 액세스를 거부합니다.