>  기사  >  운영 및 유지보수  >  geo 모듈을 통해 Nginx에서 화이트리스트를 설정하는 방법

geo 모듈을 통해 Nginx에서 화이트리스트를 설정하는 방법

WBOY
WBOY앞으로
2023-05-26 13:10:511143검색

원래 구성:

http {
......
limit_conn_zone $binary_remote_addr zone=one:10m;
limit_req_zone $binary_remote_addr zone=fifa:10m rate=5r/s;
......
server {
......
limit_conn one 5;
limit_req zone=fifa burst=100;
......
}}

화이트리스트 구성:

http {
......
geo $whiteiplist {
 default 1;
 127.0.0.1 0;
 10.10.0.0/24 0;
}
map $whiteiplist $limit {
 1 $binary_remote_addr;
 0 "";
}
limit_conn_zone $limit zone=one:10m;
limit_req_zone $limit zone=fifa:10m rate=5r/s;
......
server {
......
limit_conn one 5;
limit_req zone=fifa burst=100;
......
}}

설명:

geo 지시문은 화이트리스트 $whiteiplist를 정의하며 기본값은 1이며 모두 제한됩니다. 클라이언트 IP가 화이트리스트에 나열된 IP와 일치하는 경우 $whiteiplist 값은 0이며 이는 제한되지 않음을 의미합니다.

map 명령은 제한된 IP인 $whiteiplist 값 1을 클라이언트 IP에 매핑합니다. 화이트리스트 IP인 $whiteiplist 값 0을 빈 문자열에 매핑합니다.

null 값이 있는 키에 대해서는limit_conn_zone 및limit_req_zone 명령이 무시되므로 나열된 IP에 제한이 없습니다.

위 내용은 geo 모듈을 통해 Nginx에서 화이트리스트를 설정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제