> 운영 및 유지보수 > Apache > 악성 봇과 스크레이퍼를 차단하도록 Apache를 어떻게 구성합니까?

악성 봇과 스크레이퍼를 차단하도록 Apache를 어떻게 구성합니까?

Karen Carpenter
풀어 주다: 2025-03-12 18:54:54
원래의
566명이 탐색했습니다.

악성 봇과 스크레이퍼를 차단하도록 아파치를 구성하는 방법은 무엇입니까?

악성 봇과 스크레이퍼를 효과적으로 차단하도록 아파치를 구성하려면 다양한 기술을 결합한 다층 접근 방식이 포함됩니다. 단일 솔루션은 어리석지 않지만 방법의 조합은 강력한 보호를 제공합니다. 다음은 효과적인 전략의 분류입니다.

1. Modsecurity : 이것은 아마도 봇 완화를위한 가장 강력한 Apache 모듈입니다. Modsecurity는 WAF (Web Application Firewall)로, 사용자 지정 규칙을 정의하여 악의적 인 트래픽을 감지하고 차단할 수 있습니다. IP 주소, 사용자 에이전트, 요청 패턴 및 HTTP 헤더를 포함한 다양한 기준에 따라 규칙을 만들 수 있습니다. 예를 들어, 스크레이퍼가 자주 사용하는 특정 키워드가 포함 된 요청을 차단하거나 알려진 악성 IP 범위에서 발생하는 요청을 차단할 수 있습니다. OWASP Modsecurity Core Rule Set (CRS)과 같은 소스에서 사전 구축 된 규칙 세트를 활용하여 강력한 기준을 빠르게 구현할 수 있습니다. 적절한 구성에는 정규 표현식 및 HTTP 요청 구조를 이해해야하지만 보안 측면에서 지불이 중요합니다.

2. htaccess 파일 규칙 : 더 간단한 차단을 위해 .htaccess 파일을 사용하여 기본 규칙을 구현할 수 있습니다. 이 규칙은 Modsecurity보다 강력하지 않지만 빠른 수정 또는 특정 알려진 나쁜 행위자를 차단하는 데 유용 할 수 있습니다. 예를 들어, 지침 Deny from 사용하여 특정 IP 주소 또는 범위를 차단할 수 있습니다. 또한 RewriteEngineRewriteCond 지시문을 사용하여보다 정교한 규칙을 사용하여 사용자 에이전트, URL 또는 기타 헤더를 ​​기반으로 요청을 분석 할 수 있습니다. 그러나 잘못 쓰여진 규칙이 사이트의 성능 또는 기능에 부정적인 영향을 줄 수 있으므로 복잡한 .htaccess 규칙에주의하십시오.

3. 사용자 에이전트 필터링 : 봇은 종종 독특하거나 의심스러운 사용자 에이전트로 자신을 식별합니다. Modsecurity 또는 .htaccess 규칙을 사용하여 특정 사용자 에이전트를 기반으로 요청을 차단할 수 있습니다. 그러나 정교한 봇이 사용자 에이전트를 쉽게 스푸핑 할 수 있으므로 이것은 완벽한 방법이 아닙니다. 이것을 일차 방어가 아니라 보충 조치라고 생각하십시오.

4. 요금 제한 : 여기에는 특정 기간 내의 단일 IP 주소에서 허용되는 요청 수를 제한하는 것이 포함됩니다. 이것은 무차별 대기 공격을 완화하고 과도한 스크래핑에 중요합니다. mod_evasive 또는 mod_limitipconn 과 같은 Apache 모듈은 비율 제한을 효과적으로 구현할 수 있습니다. 이 모듈을 사용하면 초당 또는 분당 요청에 대한 임계 값을 구성 할 수 있으며, 초과 할 때 차단 작업이 트리거됩니다.

5. CAPTCHAS : 양식 제출 또는 계정 생성과 같은 민감한 조치의 경우, 빌을 구현하면 봇을 효과적으로 저지 할 수 있습니다. Apache 구성이 직접적으로 구성되지는 않지만 Captcha 서비스를 통합하면 자동화 된 공격에 대한 또 다른 보호 계층이 추가됩니다.

자동화 된 공격으로부터 보호하기위한 최고의 Apache 모듈은 무엇입니까?

몇몇 Apache 모듈은 자동화 된 공격으로부터 보호하는 데 탁월합니다. 선택은 특정 요구와 기술 전문 지식에 따라 다릅니다.

  • Modsecurity : 이것은 가장 포괄적이고 강력한 옵션입니다. 유연성을 통해 고도로 사용자 정의 된 규칙이 봇 활동을 포함하여 광범위한 공격을 감지하고 완화 할 수 있습니다. 그러나 다른 모듈에 비해 더 가파른 학습 곡선이 필요합니다.
  • mod_evasive : 이 모듈은 구성된 요청 임계 값을 초과하는 IP 주소를 차단하는 효과적인 속도 제한을 제공합니다. 비교적 쉽게 구성하고 기본 봇 완화를위한 좋은 출발점입니다.
  • mod_limitipconn : mod_evasive 와 유사 하게이 모듈은 단일 IP 주소에서 동시 연결 수를 제한합니다. 이것은 종종 봇에 의해 시작되는 서비스 거부 (DOS) 공격을 방지하는 데 특히 유용합니다.
  • FAIL2BAN : Apache 모듈은 엄격하지 않지만 Fail2ban은 Apache 로그와 통합하여 반복 된 실패 로그인 시도와 같은 의심스러운 활동을 나타내는 IP 주소를 감지하고 금지합니다. 이를 통해 서버를 대상으로하는 무차별 적 공격을 완화하는 데 도움이 될 수 있습니다.

Apache의 봇 활동을 완화하기 위해 단일 IP 주소의 요청을 효과적으로 제한하려면 어떻게해야합니까?

단일 IP 주소의 요청을 효과적으로 제한하는 것은 mod_evasive 또는 mod_limitipconn 과 같은 속도 제한 모듈을 사용하는 데 의존합니다. 이 모듈을 사용하면 초당 요청에 대한 임계 값을 지정할 수 있습니다. 이러한 임계 값을 초과하면 임시 또는 영구 IP 차단과 같은 동작이 발생합니다.

구성 예제 (mod_evasive) :

특정 구성은 선택한 모듈에 따라 다르지만 다음은 mod_evasive 사용하는 일반적인 아이디어입니다.

 <code class="apache"><ifmodule mod_evasive20.c> EvasiveHTTPDDenyStatus 403 EvasiveHTTPDLogFormat "%h %l %u %t \"%r\" %>s %b" DOSEmail nobody@example.com DOSWhitelist 127.0.0.1 DOSPageCount 2 DOSSiteCount 5 DOSPageInterval 1 DOSSiteInterval 1 DOSThreshold 10 </ifmodule></code>
로그인 후 복사

이 예제는 1 초 간격 ( DOSThreshold 10 , DOSSiteInterval 1 ) 내에 10 번의 요청 후 IP 주소를 차단하도록 mod_evasive 구성합니다. 트래픽 패턴 및 공차 수준에 따라 이러한 매개 변수를 조정하십시오. 필요에 따라 이메일 주소와 화이트리스트를 조정해야합니다.

봇 완화를위한 쉽게 사용할 수있는 Apache 구성 예제가 있습니까?

단일 "완벽한"구성은 없지만 많은 예제와 리소스를 온라인으로 제공합니다. "봇 완화를위한 Apache mod_security 규칙", "Apache .htaccess Bot Protection"또는 "Apache Rate Limiting Configuration"을 검색하면 많은 예제가 생성됩니다. 그러나이 예를 조정할 때 주의를 기울이십시오 . 제작 서버에서 구현하기 전에 규칙을 신중하게 검토하여 그 의미를 이해하십시오. 잘못 구성된 규칙은 합법적 인 사용자에게 부정적인 영향을 줄 수 있습니다. 기본 구성으로 시작하고 필요에 따라 더 제한적인 규칙을 점차적으로 추가하여 의도하지 않은 결과에 대해 서버 로그를 면밀히 모니터링하십시오. 규칙을 정기적으로 업데이트하고 진화하는 봇 기술에 적응하는 것은 장기적인 효과에 중요합니다.

위 내용은 악성 봇과 스크레이퍼를 차단하도록 Apache를 어떻게 구성합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿