blumeops/ansible/roles/forgejo
Erich Blume 7a42aeb77c
All checks were successful
Deploy Fly.io Proxy / deploy (push) Successful in 1m35s
Mitigate Forgejo archive endpoint DoS from crawler abuse
Crawlers hitting /archive/ endpoints with unique commit SHAs generated 54GB
of git bundles in 2 days, pegging Forgejo at 43% CPU. Fix at multiple layers:

- Redirect archive requests to tailnet at Fly proxy (302)
- Expand robots.txt: block /users/, /*/archive/, /*/releases/download/
- Cache release artifact downloads at nginx (immutable, 7d TTL)
- Enable [cron.archive_cleanup] with 2h TTL and run-at-start

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-17 14:21:22 -07:00
..
defaults Migrate Forgejo from Homebrew to source build (#316) 2026-03-28 08:19:23 -07:00
handlers Migrate Forgejo from Homebrew to source build (#316) 2026-03-28 08:19:23 -07:00
tasks Migrate Forgejo from Homebrew to source build (#316) 2026-03-28 08:19:23 -07:00
templates Mitigate Forgejo archive endpoint DoS from crawler abuse 2026-04-17 14:21:22 -07:00