>  기사  >  운영 및 유지보수  >  Nginx가 IP 주소를 기반으로 액세스 제어 구성을 구현하는 방법

Nginx가 IP 주소를 기반으로 액세스 제어 구성을 구현하는 방법

PHPz
PHPz원래의
2023-11-08 16:28:501581검색

Nginx가 IP 주소를 기반으로 액세스 제어 구성을 구현하는 방법

Nginx가 IP 주소를 기반으로 액세스 제어 구성을 구현하려면 특정 코드 예제가 필요합니다.

Nginx는 현재 널리 사용되는 고성능 웹 서버 소프트웨어로, 웹 서버로도 사용할 수 있습니다. 역방향 프록시 서버, 로드 밸런서 등 웹 서버 애플리케이션에서 보안은 매우 중요한 고려 사항입니다. Nginx는 관리자가 웹 사이트 리소스에 대한 액세스를 효과적으로 제어하는 ​​데 도움이 될 수 있는 IP 주소 기반 액세스 제어 구성을 구현하는 다양한 방법을 제공합니다.

1. Nginx 구성의 IP 주소 변수

Nginx 구성 파일에서 일부 변수는 클라이언트의 IP 주소를 나타내는 데 사용됩니다. 가장 일반적으로 사용되는 것은 클라이언트의 IP 주소를 나타내는 $remote_addr 변수입니다.

2. 간단한 IP 주소 필터링 구성

  1. 특정 IP 주소 액세스 허용

    location / {
      allow 192.168.1.100;
      deny all;
    }

    위 구성은 IP 주소가 192.168.1.100인 클라이언트만 위치 블록에 액세스할 수 있음을 의미하며, 다른 IP 주소를 가진 클라이언트는 거부되었습니다. 모두 거부는 다른 모든 IP 주소에 대한 액세스를 거부하는 것을 의미합니다.

  2. 특정 IP 주소에 대한 접근 거부

    location / {
      deny 192.168.1.200;
      allow all;
    }

    위 구성은 IP 주소가 192.168.1.200인 클라이언트는 위치 블록에 접근할 수 없으며, 다른 IP 주소를 가진 클라이언트는 허용된다는 의미입니다. 그 중 모두 허용은 다른 모든 IP 주소의 접근을 허용하는 것을 의미합니다.

3. 다중 IP 주소 필터링 구성

  1. 여러 특정 IP 주소에 대한 액세스 허용

    location / {
      allow 192.168.1.100;
      allow 192.168.1.200;
      deny all;
    }

    위 구성은 IP 주소가 192.168.1.100 및 192.168.1.200인 클라이언트만 위치 블록에 액세스할 수 있음을 의미합니다. 기타 IP 주소가 있는 클라이언트는 거부됩니다. 모두 거부는 다른 모든 IP 주소에 대한 액세스를 거부하는 것을 의미합니다.

  2. 여러 특정 IP 주소에 대한 접근 거부

    location / {
      deny 192.168.1.100;
      deny 192.168.1.200;
      allow all;
    }

    위 구성은 IP 주소가 192.168.1.100 및 192.168.1.200인 클라이언트는 위치 블록에 접근할 수 없으며 다른 IP 주소를 가진 클라이언트는 허용된다는 의미입니다. 그 중 모두 허용은 다른 모든 IP 주소의 접근을 허용하는 것을 의미합니다.

4. IP 주소 세그먼트를 사용한 필터링 구성

Nginx는 액세스 제어 구성을 위해 IP 주소 세그먼트 사용도 지원합니다.

geo $whitelist {
  default         0;
  192.168.1.0/24  1;
}

location / {
  if ($whitelist) {
      allow all;
  }
  deny all;
}

위 구성에서 geo 지시어는 $ Variable이라는 파일을 정의합니다. 화이트리스트의 경우 클라이언트의 IP 주소가 192.168.1.0/24 네트워크 세그먼트에 있는지 여부에 따라 이 변수의 값을 1 또는 0으로 설정합니다. 그런 다음 if 문을 사용하여 위치 블록에 대한 액세스가 허용되는지 여부를 결정합니다. $whitelist 값이 1이면 모든 클라이언트 액세스가 허용되고, 그렇지 않으면 모든 액세스가 거부됩니다.

요약하자면 Nginx는 IP 주소 기반 액세스 제어 구성을 구현하는 다양한 방법을 제공합니다. Nginx 구성 파일을 적절하게 설정함으로써 관리자는 실제 요구 사항에 따라 웹 사이트 리소스에 대한 액세스를 유연하게 제어하고 웹 사이트 보안을 향상시킬 수 있습니다.

참조: https://docs.nginx.com/nginx/admin-guide/security-controls/controlling-access-by-client-ip/

위 내용은 Nginx가 IP 주소를 기반으로 액세스 제어 구성을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.