다른 사람이 자신의 도메인을 내 도메인에 Proxy_pass하는 것을 방지하는 방법은 무엇입니까?

다른 사람이 자신의 도메인을 내 도메인에 Proxy_pass하는 것을 방지하는 방법은 무엇입니까?

사람들은 Nginx를 사용하여 다음을 수행할 수 있습니다.프록시패스내 도메인과 브라우저에서는 콘텐츠가 내 것이지만 주소 표시줄에서는 해당 도메인입니다.

요청이 Proxy_pass를 통과하는 시기를 감지하고 이를 거부하는 방법은 무엇입니까?

예를 들어 의도적으로 google.com에 Proxy_pass를 실행하면 404 오류가 발생합니다.

server {
  listen 80;
  server_name test.com;

  location / {
    proxy_pass https://google.com;
  }
}

이를 방지하는 것은 불가능해 보입니다. 예를 들어 해당 사람들은 프록시가 일반 브라우저처럼 작동하도록 만듭니다. 그러나 간단한 Nginx Proxy_pass를 사용하는 경우 어떻게 방지할 수 있습니까?

답변1

이론적으로는 가능하지만 많은 노력 없이는 불가능합니다.

아마도 당신은 HTTP/2 지원 웹사이트를 운영하고 있을 것입니다.

귀하의 웹사이트를 탐지하는 것은 이러한 연결이 항상 를 통해 시작되고 결코 를 통해 proxy_pass시작되지 않는다는 사실을 토대로 구축될 수 있습니다 .HTTP/1.xHTTP/2

그런 다음 이를 브라우저 기능과 일치시킬 수 있습니다.

따라서 본질적으로 HTTP/2 지원 브라우저가 이전 HTTP/1.x 프로토콜을 통해 웹 사이트에 연결되는 경우 해당 브라우저가 NGINX proxy_pass또는 일부 프로토콜을 통해 있다고 안전하게 가정할 수 있습니다.다른프록시(NGINX 제외).

따라서 이것이 작동할 수는 있지만 일종의 프록시를 통해 검색하는 모든 클라이언트를 차단할 수 있습니다.

이것이 바로 소극적인 접근 방식입니다.

활성 접근 방식은 단순히 동일한 IP 주소에서 여러 연결을 확인하는 것입니다. 동일한 IP 주소에서 다른 사용자 에이전트를 사용하거나 전혀 사용하지 않는 여러 연결에 대한 로그(예: Fail2ban 또는 기타 로그 스캐너)를 확인하게 됩니다.

다양한 사용자 에이전트/액세스가 있는 IP 주소는 일종의 프록시일 가능성이 높습니다.

마지막으로 RDNS 확인/whois 쿼리를 수행하여 요청이 알려진 호스팅 공급자로부터 오는지 확인할 수 있습니다.

관련 정보