2025-07-17 Bringing the Butlerian Jihad to Gemini

A long time ago I was very enthusiastic about Gemini. I wrote a wiki engine called Phoebe with many plugins for all sorts of things. Then I got disillusioned and dropped it all. Then I put some stuff back online using a patched satellite. It adds on-the-fly Markdown to Gemtext transformation, handles all the certificates transparently and just works.

Phoebe

patched satellite

Thank you, Gustavo Heinz! Your satellite is great.

Gustavo Heinz

satellite

I recently added logging to it. It does some rudimentary logging of all requests, including the IP number of the client making the request. You know where this is heading. `fail2ban` is coming to town and it's bringing the Butlerian Jihad! We're going to fight bots.

If you run the patched Satellite as a `systemd` service, this allows you to contain bots using `fail2ban` monitoring the `systemd` journal.

Use the following for `/etc/fail2ban/jail.d/satellite.conf`:

Use the following for `/etc/fail2ban/filter.d/satellite.conf`:

The result is that all requests are logged and any IP number that makes more than 20 requests in 40 seconds is banned. By default, `fail2ban` bans IP numbers for 10 minutes.

The result:

Use the various options to see what gets matched.

​#Gemini ​#Satellite ​#fail2ban