- 공개 Gitea 서버
git.xeserv.us가 AmazonBot 요청으로 불안정해져, 운영자는 AmazonBot 팀에 해당 도메인을 차단 목록에 넣어 달라고 요청함
robots.txt로 모든 봇을 Disallow: / 처리했지만 요청이 계속 들어와, 공개 Git 서버 운영 자체를 접어야 할 수 있는 상황이 됨
- AI 크롤러는 사용자 에이전트를 바꾸거나 주거용 IP 프록시를 쓰는 방식으로 차단을 어렵게 만듦
- nginx ingress에서
Amazon 사용자 에이전트에 418을 반환하도록 막았지만, 요청은 다른 IP에서 계속됐고 약 10% 는 amazonbot 사용자 에이전트도 없었음
- 결국 Gitea 서버는 다시 VPN 뒤로 이동했고, 요청 전 작업 증명 검사를 거치는 리버스 프록시
Anubis가 만들어짐
AmazonBot 요청과 robots.txt 한계
- 운영자는 AmazonBot 운영자에게
git.xeserv.us를 차단 도메인 목록에 추가해 달라고 요청함
- Git 서버를 크롤링하려면 과도한 리소스 사용을 감당할 하드웨어 업그레이드 비용을 지불할 수 있도록 연락해 달라고 함
- 모든 봇을 막는
robots.txt를 이미 설정했지만, 실제 요청 차단에는 충분하지 않았음
User-agent: *
Disallow: /
- AI 크롤러 봇 차단이 어려운 이유도 함께 정리함
- 봇이 거짓말을 함
- 사용자 에이전트를 바꿈
- 주거용 IP 주소를 프록시로 사용함
- 그 밖의 방법도 사용함
nginx ingress 차단과 Anubis 공개
- 2025-01-17 17:50 UTC에 nginx ingress 설정으로 사용자 에이전트 차단을 추가함
nginx.ingress.kubernetes.io/configuration-snippet: |
if ($http_user_agent ~* "(Amazon)" ){
return 418;
}
- 이 설정 뒤에도 봇은 매번 다른 IP에서 계속 요청했고, 약 10%의 요청에는
amazonbot 사용자 에이전트가 없었음
- 2025-01-18 19:00 UTC에 Gitea 서버를 다시 VPN 뒤로 옮김
- 이후 Gitea 서버 앞단에서 요청을 허용하기 전에 작업 증명을 검사하는 리버스 프록시를 만들기 시작함
- 2025-01-18 23:50 UTC에 해당 프록시는
Anubis라는 이름으로 https://git.xeserv.us/에서 확인 가능해짐
- 2025-03-26 14:27 UTC 기준
Anubis는 문서 사이트가 있는 독립 프로젝트가 됨