자료실

Default Image

구충제 모듈 v2

2024.10.27 06:42
1,385
32
자료 유형 모듈
간단한 소개 서버 자원과 트래픽을 낭비하는 기생충 로봇을 차단합니다.
설치 경로 ./modules/allbandazole
코어 지원 범위 Rhymix 2.1
PHP 지원 범위 8.4, 8.3, 8.2, 8.1, 8.0, 7.4
자료 구분 공개 자료
라이선스 GPL v2
저장소 URL https://github.com/poesis/rhymix-allbandazole
파일명버전날짜용량다운로드 수
allbandazole-2.0.1.zip 2.0.1 2025.11.01 34.1KB 54
allbandazole-2.0.0.zip 2.0.0 2025.11.01 32.4KB 14
allbandazole-1.0.0.zip 1.0.0 2024.10.27 16.1KB 163

ALL-BAN-dazole

anti-parasite module for Rhymix

 

귀중한 서버 자원과 트래픽을 쪽쪽 빨아먹는 기생충 같은 로봇들을 차단합니다.

암 예방에 도움이 될지도 모릅니다.

 

 

1. 널리 알려진 불량 로봇 user-agent 목록이 기본 적재되어 있습니다.

 

image.png

 

불량 로봇으로 간주하는 기준은

1) 검색 노출을 통한 방문자 유입, SNS 공유, 광고 수익 등 명백한 혜택을 주지 않으면서

2) 운영자의 동의 없이 국내 홈페이지를 대량으로 크롤링하여

3) 서버 부하 증가, 해외 트래픽 요금 등의 피해를 입힌 이력이 있는 user-agent 또는 IP 대역입니다.

 

통계 작성이나 마케팅을 위한 데이터 수집, AI 학습 데이터 수집은 대부분 해당됩니다. (만약 특정 업체의 크롤링에 동의하셨다면 해당 user-agent나 IP 대역을 목록에서 제외하세요.)

 

물론 .htaccess나 서버 설정으로 차단하는 것이 훨씬 더 효율적이겠지만, 웹호스팅에서는 서버 설정을 임의로 수정하기도 어렵고, .htaccess를 수정하면 코어 업데이트시 덮어씌워질 수 있으므로 좀더 관리하기 편한 방법을 제공합니다. User-agent 목록을 수정하실 경우, 정상적인 방문자를 차단하지 않도록 조심하세요.

 

 

2. 해외 접속을 국가별로 통제할 수 있습니다.

 

image.png

(스크린샷은 예시이며, 해당 국가들을 차단하라는 뜻이 아닙니다.)

 

위의 1번과 같은 user-agent 기반의 AI 봇 차단이 보편화되면서, 최근에는 일반 브라우저로 user-agent를 위장한 채 다수의 IP에서 무작위로 접속하여 서버 부하를 일으키고 해외 트래픽을 유발하는 AI 봇이 늘어나고 있습니다. 어느 나라 IP가 많이 등장하는지는 그때그때 다릅니다. 중국일 때도 있고 브라질일 때도 있고... 그렇다고 해외 접속을 모두 차단하면 해외 회원들이 불편을 겪는 것은 물론, 구글 노출과 광고에도 악영향이 있겠지요?

 

그래서 구충제 모듈 v2부터는 해외 특정 국가에서 접속할 경우 클라우드플레어처럼 캡챠를 표시하거나, 로그인을 강제하도록 설정할 수 있도록 개선했습니다. 즉, 특정 국가에서만 회원제 사이트로 전환하는 효과를 얻을 수 있습니다.

 

Googlebot, bingbot, facebookexternalhit 등 널리 알려진 검색로봇이나 SNS 공유 로봇은 예외처리할 수 있습니다.

 

 

3. 클라우드 서버 IP를 차단할 수 있습니다.

 

image.png

(스크린샷은 예시이며, 해당 업체들을 차단하라는 뜻이 아닙니다.)

 

국내외 클라우드의 VPS나 서버리스 상품을 사용하여 다수의 IP를 돌려쓰며 무단 크롤링하는 봇을 일괄 차단할 수 있습니다. 개발자를 위한 API 서비스를 운영하지 않는 사이트라면, 클라우드 서버 IP를 통한 접속은 대부분 봇이라고 가정해도 무방합니다.

 

아마존이나 구글처럼 자사의 클라우드 서비스에 사용하는 IP 대역 목록을 공식적으로 제공하는 업체는 그 정보를 활용하여 차단하고, 그렇지 않은 업체는 ASN 단위로 차단합니다.

 

차단된 사용자에게는 아래와 같은 화면이 표시되며, 안내 문구는 커스터마이징할 수 있습니다. 이미 대부분의 사람들이 익숙해진 클라우드플레어의 주황색 안내 화면처럼, 해외 접속자분들은 이 화면에도 곧 익숙해지지 않을까 합니다.^^

 

image.png

 

 

4. 국가 및 클라우드 IP 대역 DB를 제공합니다.

 

국가나 기업이 사용하는 IP 대역은 종종 변경될 수 있으므로, 구충제 모듈이 사용하는 IP 대역 DB는 모듈과 별도로 종종 업데이트할 예정입니다. 한 달에 한 번 정도 IP 대역 업데이트 버튼을 클릭해 주시는 것을 추천합니다.

 

모든 차단 기능은 서버 부하와 트래픽을 최소화하는 방법으로 구현되어 있습니다. (차단 화면을 예쁘게 꾸밀 수도 있겠지만, 추천하지 않습니다.) 원치 않는 AI 봇을 차단하는 과정에서 오히려 더 많은 부하와 트래픽이 발생한다면 곤란하니까요.

 

작동 환경: 라이믹스 2.1.x (2024년 하반기 이후 릴리즈된 버전)

 

기진곰 Lv. 26
이 구역의 전속 곰탱이입니다. 라이믹스를 개발하고 있어요.

댓글 31

  • 와우! 굿입니다
  • 필요했던 기능입니다. htaccess로 사용하고 있었는데, 이 모듈이면 간편하게 걸러낼 수 있겠네요.
    모듈이름이 재밌네요ㅎㅎ~~

  • 구충제 ㅎㄷㄷ 세다
  • @팀워크

    알벤다졸은 연가시도 잡을 수 있고, 암까지 치료한다는 괴소문이 있지요. ㅋㅋㅋ

  • 오,,, 저도 nginx에서 주로 설정하고있었는데 감사합니다 :)
  • 굿~
  • htaccess를 이용 했었는데.... 잘 쓰겠습니다. 감사합니다.
  • 헉 너무 좋은 자료 감사드립니다^^
  • 피해를 입힌 이력이 있는 user-agent 이라니 믿음직 스럽네요 ㅎㅎ
  • @톰캣
    여러 서버에서 뜬금없이 튀는 부하를 잡다 보면 "또 너냐?" 싶은 녀석들이 자주 보여요.
    물론 요즘은 인간인 척 하는 로봇도 늘고 있어서, 100% 구분은 어렵습니다. ㅠ
  • 잘 쓰겠습니다. 감사합니다.
  • 네이밍이 죽이네요.ㅎㅎㅎ 잘쓰겠습니다. 감사합니다.
  • 1f44d.png

  • 서버가 php버전업을 안해주고 있어서... 2.1로 못가고 있는데요. 2.0 버전대에서도 사용가능하면 좋겠습니다.
  • @goldworm

    호스팅을 옮기세요...

    2.1에서만 지원하는 기능을 활용하는 모듈이므로

    2.0에서 작동하도록 하려면 사실상 처음부터 다시 설계해야 합니다.

  • @goldworm
    이정도면 호스팅을 옮기는게 맞습니다.
  • @goldworm
    라이믹스는 기본적으로 최신 버전만 지원 대상입니다. 호스팅사에 요청하시거나 안되면 호스팅을 옮기셔야지 구버전을 무작정 유지하시면 곤란합니다...(벌써 마지막 2.0 버전 이후 보안패치 버전이 5개나 나왔습니다)
  • 감사합니다. 잘 쓸게요^^
  • 구충제의 이름으로 모든 먼지들은 박멸될 지어다! ㅋ
  • 기본적으로 차단리스트 봇들은 차단해주는게 좋은게 맞는거죠?
  • @톰캣
    트래픽이 아무리 몰려도 중단되지 않을 사이트거나 서버가 넉넉해서 상관이 없다면 모르지만 차단을 해주는게 당연히 좋죠.. 설명에도 나오듯 사이트에는 아무런 도움도 못주면서 피만 빨아먹는 봇들이니까요
  • @미이풍

    사이트에 따라서는 마케팅을 위해 특정 봇을 허용하는 편이 나을 수도 있습니다. 예를 들어 ChatGPT에게 내 상품이나 서비스에 대한 정보를 전달하고 싶다면 GPTBot을 허용해야겠지요. 득실을 따지는 것은 운영자의 판단이고요.

  • 지난 수개월동안, 매달 수회씩은 트래픽 과다도 홈페이지가 차단되는 일이 반복되었는데,
    요즘은 정오부터 차단되기도하는... 어떻게 해야될지 몰라 문답게시판에 올렸다가 이 파일을 소개받아 설치했는데~ 와~ 파악 줄어들었네요.
    만들어 주시고 공개해 주셔서 대단히 고맙습니다. ^^
  • 정말 암 걸릴 것을 예방해 주셨습니다. ^^
    정말 감사합니다.

    잘 운영하던 사이트가 지난해 중반부터 미친 것같이 로드(Load average)가 오르더라고요..
    보통 1 미만이었는데 엄청나게 폭주해서 10~18을 왔다 갔다.. 덕분에 리소스는 텅텅 비어 버리고..

    혹시나 해서 설치해 보니.. 와우 ~~~~
    구충제 모듈이 제 사이트는 물론 제가 암 걸릴 것을 막아 주셨습니다. ~~ ^^
  • 좋은 자료 감사합니다. 

    잘 사용하겠습니다. 

  • 세상에 너무 감사합니다.

  • 와우..좋은 자료 업데이트 감사합니다. 

  • 감솨^^ 지금은 관리하고 있는 곳이 없지만 일단 다운. 

  • v2 기능 최고네요!! 좋은자료 너무 감사합니다 :)

  • 감사합니다. 잘쓰겠습니다. 

    혹시나 설치하시고 관리자에서  모듈실행시

    Rhymix\Framework\Exception #0 "Cannot write template cache file: /var/www/html/files/cache/template/modules/allbandazole/views/admin/config.blade.php.compiled.php" in index.php on line 60 (via common/framework/Template.php on line 373)
    common/framework/Template.php:373

    이런 에러 나시는분은 nginx 서버의 경우 config상에서 /files/cache 폴더가 쓰기 금지 되어있는지 확인하시고

     

    터미널로 서버에 접속하셔서 

    sudo chown -R www-data:www-data /var/www/html/files/cache

    sudo chmod -R 755 /var/www/html/files/cache

    (www-data는 서버에 맞게 바꾸시면 됩니다)

    sudo rm -rf /var/www/html/files/cache/template/*

    하시면 됩니다. 

  • 너무 좋은 기능들로 업그레드 해주셔서 너무 감사드립니다 흑흑

     

    일단 "대한민국 제외 모두 차단"으로 해봤더니 3000개 정도 해외봇들이 거의 사라졌어요 하하

    다른 기능들은 차차 이용해봐야겠어요.

     

    최근 서버에 mod_maxminddb 설치(https://rhymix.org/qna/1916106) 하려고 글 올렸는데 굳이 적용안해도 되겠어요^^

     

    사이트방문자.png

     

    사이트방문자1.png