• 0 Posts
  • 50 Comments
Joined 1 year ago
cake
Cake day: November 23rd, 2024

help-circle




  • While the comment was obviously a bit rude, perhaps you can take something constructive out of it. I see that you have a nice compose file prepared as an example with postgres, and a curl into bash for ‘automatic installation’.

    Many feel a bit uncomfortable with doing that - especially if the script ultimately just sets up docker containers again. Maybe you could add a ‘quickstart’ section there which just consists of a single docker run command setting up the sqlite version.

    That way you have the best of both worlds and both people wanting a production setup example and those just wanting to quickly try are served.






  • The code forge is gitea/forgejo, and the proxy in front used to be traefik. I tried fail2ban in front for a while as well but the issue was that everything appeared to come from different IPs.

    The bots were also hitting my other public services pretty hard but nowhere near as bad. I think it’s a combination of 2 things:

    • most things I host publicly beside git are smaller or static pages, so quickly served and not draining resources as much
    • they try to hit all ‘exit nodes’ (i.e. links) off a page, and on repos with a couple hundred+ commits, with all the individual commits and diffs that are possible to hit that’s a lot.

    A small interesting observation I made was that they also seemed to ‘focus’ on specific projects. So my guess would be you get unlucky once by having a large-ish repo targeted for crawling and then they just get stuck in there and get lost in the maze of possible pages. On the other hand it may make targeted blocking for certain routes more feasible…

    I think there’s a lot to be gained here by everybody pooling their knowledge, but on the other hand it’s also an annoying topic and most selfhosting (including mine) is afaik done as a hobby, so most peeps will slap an Anubis-like PoW in front and call it a day.


  • I’m providing hosting for a few FOSS services, relatively small scale, for around 7 years now and always thought the same for most of that time. People were complaining about their servers being hit but my traffic was alright and the server seemed bulky enough to have a lot of buffer.

    Then, like a month or two ago, the fire nation attacked the bots came crawling. I had sudden traffic spikes of up to 1000x, memory was hogged and the CPU could barely keep up. The worst was the git forge, public repos with bots just continuously hammering away at diffs between random commits, repeatedly building out history graphs for different branches and so on - all fairly intense operations.

    After the server went to its knees multiple times over a couple days I had to block public access. Only with proof of work in front could I finally open it again without destroying service uptime. And even weeks later, they were still trying to get at different project diffs whose links they collected earlier, it was honestly crazy.





  • It’s an interesting concept that I also started exploring last year, though somewhat less extreme.

    My deployments run on incus containers/VMs which are spun up by terraform. Those may in turn host things e.g. through docker or just bare-metal.

    But instead of going full packer-golden image, my principle orchestration is still done by Ansible which prepares the bare-metal host, gets incus rolling, and then starts the terraform process, before taking control again and operating on the now spun-up individual machines.






  • While a full ‘deletion’ of such an issue is certainly unfortunate, I can kind of see how it gets to such a decision point.

    You’re creating some software in the open, decide to ping some communities on reddit/lemmy and all of a sudden it seems like a disgruntled brigade is breaking down your door while you just wanted to show them the garden.

    What for us looks like earnest sleuthing can feel like abuse/harassment from the other side simply due to the asymmetrical nature of the internet.

    Would have probably still preferred a closed issue instead, but having a couple ‘niche-successful’ repos on github myself - I can at least certainly empathise.