nginx 접근 제어 allow, deny

1722 단어
nginx 모듈 명 ngx_http_access_module 만 보면 많은 사람들 이 낯 설 겠 지만, deny 는 allow 에 비해 아무 도 모 르 는 사람 이 없다. 실제로 deny 와 allow 명령 은 ngx 에 속한다.http_access_module. 우 리 는 특정한 uri 나 경 로 를 제어 하여 접근 하지 못 하 게 하려 면 nginx 에서 그것 에 의지해 야 합 니 다.
nginx 의 접근 제어 모듈 문법 은 매우 간단 합 니 다. 적어도 apache 보다 이해 하기 쉽 습 니 다. apache 의 allow 와 deny 의 순 서 는 많은 초보 자 들 에 게 머리 를 잡 게 합 니 다. 자, 이 플러그 인의 사용 방법 을 구체 적 으로 보 세 요.
1. 설치 모듈
이 모듈 은 nginx 에 내장 되 어 있 습 니 다. 설치 에 사용 되 지 않 는 한 – without - httpaccess_module。만약 당신 이 아직 nginx 를 설치 하지 않 았 다 면, ttlsa 가 이전에 쓴 nginx 설 치 를 참고 하 십시오.
2. 지령
allow 문법:    allow address | CIDR | unix: | all;기본 값:    —설정 세그먼트:    http, server, location, limit_except
ip 이나 ip 세그먼트 에 접근 할 수 있 습 니 다. 유 닉 스: 를 지정 하면 socket 에 접근 할 수 있 습 니 다. 주의: 유 닉 스 가 1.5.1 에 새로 추 가 된 기능 입 니 다. 버 전이 이것 보다 낮 으 면 이 방법 을 사용 하지 마 십시오.
deny 문법:    deny address | CIDR | unix: | all;기본 값:    —설정 세그먼트:    http, server, location, limit_except
어떤 ip 이나 ip 세그먼트 에 접근 하 는 것 을 금지 합 니 다. 유 닉 스: 를 지정 하면 socket 에 접근 하 는 것 을 금지 합 니 다. 주의: 유 닉 스 는 1.5.1 에 새로 추 가 된 기능 입 니 다. 버 전이 이것 보다 낮 으 면 이 방법 을 사용 하지 마 십시오.
3. allow, deny 인 스 턴 스
location / {deny  192.168.1.1;allow 192.168.1.0/24;allow 10.1.1.0/16;allow 2001:0db8::/32;deny  all;}
위 에서 아래로 의 순서, iptables 와 유사 합 니 다.일치 하면 튀 어 나 옵 니 다.위의 예 와 같이 먼저 192.16.1.1 을 금 지 했 고 그 다음 에 3 개의 네트워크 를 허용 했다. 그 중에서 ipv 6 가 포함 되 어 있 고 마지막 에 일치 하지 않 는 IP 는 모두 접근 을 금지 했다.  실제 생산 환경 에서 저 희 는 nginx 의 geo 모듈 을 사용 하여 함께 사용 할 것 입 니 다. 관심 이 있 는 것 은 ttlsa 관련 글 nginx geo 사용 방법 을 참고 하 십시오.
4. 종결 어
nginx 접근 제어 모듈 은 nginx 에서 가장 간단 한 명령 을 세 어야 합 니 다. 누가 접근 하지 못 하 게 하려 면 deny 에 IP 를 추가 하고 허용 하려 면 allow ip 를 추가 하여 모든 것 을 금지 하거나 허용 하려 면 allow all 또는 deny all 을 사용 하면 됩 니 다.

좋은 웹페이지 즐겨찾기