🏳️‍⚧️ Christin Löhner 🏳️‍🌈

View original page

@christin@lsbt.me · Joined ⁨Nov⁩ ⁨2022⁩

Aktivistin für Digitale Unabhängigkeit, Trans* und LGBTIQ+ Rechte, Linux Server und Netzwerk Administratorin seit 25 Jahren, Infrastructure Engineer, Webdeveloper, Kaffeejunkie, Mutter

> Eigentümerin der #Mastodon Instanz lsbt.me
> Eigentümerin der App #FediSuite
> Eigentümerin des #APBoard
> Nur noch #Linux seit 1998!
> Mitglied bei DIE LINKE

ⓘ 𝘈𝘵𝘵𝘦𝘯𝘵𝘪𝘰𝘯: 𝘛𝘩𝘪𝘴 𝘶𝘴𝘦𝘳 𝘪𝘴 𝘴𝘶𝘴𝘱𝘦𝘤𝘵𝘦𝘥 𝘰𝘧 𝘣𝘦𝘪𝘯𝘨 𝘱𝘢𝘳𝘵 𝘰𝘧 𝘢 𝘵𝘦𝘳𝘳𝘰𝘳𝘪𝘴𝘵 𝘰𝘳𝘨𝘢𝘯𝘪𝘻𝘢𝘵𝘪𝘰𝘯 𝘤𝘢𝘭𝘭𝘦𝘥 𝘈𝘯𝘵𝘪𝘧𝘢 𝘎𝘮𝘣𝘏 & 𝘊𝘰.𝘒𝘎. 𝘐𝘯𝘤. 𝘗𝘭𝘦𝘢𝘴𝘦 𝘳𝘦𝘱𝘰𝘳𝘵 𝘢𝘯𝘺 𝘴𝘶𝘴𝘱𝘪𝘤𝘪𝘰𝘶𝘴 𝘣𝘦𝘩𝘢𝘷𝘪𝘰𝘳. ⓘ

#aktivist #antifa #fckafd #afdverbotjetzt #fcknzs #fckcdu #fckmrz #fckcsu #politician #feminist #lgbt 🏳️‍🌈 #queer #trans 🏳️‍⚧️ #transgender #tutor #teacher #writer #author #sexworker #she #her #fedi22

Pronomen
🇩🇪 sie/ihr 🇬🇧 she/her
Webseite
chrislo.de verified
Secure Your Server
secure-your-server.com verified
FediSuite
fedisuite.com verified
Matrix
@ christin : lsbt.chat
Friendica
chrislo@anonsys.net

Auf lsbt.me sind bis auf Weiteres Registrierungen komplett abgeschalten.

Grund: Nach der automatisierten Spam-Welle letztens, die man noch eindämmen könnte, indem man die Registrierung über die API deaktivierte, kommen nun täglich ständig offenbar manuell angelegte Registrierungen mit Phantasienamen und E-Mail Adressen wie onionmail, protonmail, etc. rein. Diese sind so "ausgereift", dass sie sogar halbwegs sinnvolle Registrierungs-Gründe schreiben.

Glücklicherweise ist lsbt.me eine doch recht spezialisierte Instanz (LGBT), weshalb die bei uns noch recht leicht zu erkennen sind und abzulehnen sind. Aber es ist einfach lästig.

@digitalcourage

#fediadmin #fediverseadmin #fediverse #spam

Quick heads-up for other Mastodon admins: this registration spam wave isn't over yet.

On lsbt.me, we first saw a flood of API registrations using Python/aiohttp. The telltale signs were usernames following the pattern bp plus 16 hex characters, and the sign-up reason was always "Automated protocol deliverability probe". A narrow block on that user agent stopped the first wave.

Today, however, five new registrations came in with the same usernames and the same sign-up reason. This time the bot simply identified itself as Chrome 126. That's exactly why a user agent is only useful as a short-term filter. It's a header the client can set to anything.

The requests go to POST /api/v1/accounts. This endpoint lets client apps create a new local account directly in the app. No app needs it for OAuth connections to existing accounts. #FediSuite doesn't use it either. It registers itself via /api/v1/apps, obtains consent via /oauth/authorize, and then works with a user token. Regular sign-up through the Mastodon website is also handled separately via POST /auth.

So I've completely disabled API account creation on lsbt.me. Web sign-up, OAuth, and existing clients keep working as before. Anyone who wants a new account just signs up once on the web as usual and can then use any client.

If you'd also rather not offer this optional native sign-up path, you can add the following to your Nginx server block, before the general location / block. The example assumes the @proxy location that many Mastodon Nginx configs already include:

location = /api/v1/accounts {
limit_except GET {
deny all;
}

try_files $uri @proxy;
}

This returns a 403 only for POST /api/v1/accounts. The read-only GET endpoint remains reachable. As always, run nginx -t afterwards and only reload once the test passes.

#Mastodon #Fediverse #MastoAdmin #FediAdmin #FediMod #FediBlock #Moderation #Registration #Spam #Nginx #SelfHosting #SysAdmin #ActivityPub

Kurzer Hinweis an andere Mastodon-Admins: Diese Registrierungs-Spam-Welle ist noch nicht überstanden.

Bei lsbt.me kamen zunächst massenhaft API-Registrierungen mit Python/aiohttp rein. Auffällig waren Nutzernamen nach dem Muster bp plus 16 Hex-Zeichen und als Antragstext immer Automated protocol deliverability probe. Eine enge Sperre auf diesen User-Agent hat die erste Welle gestoppt.

Heute kamen trotzdem fünf neue Registrierungen mit denselben Nutzernamen und demselben Antragstext. Der Bot gab sich diesmal einfach als Chrome 126 aus. Genau deshalb taugt ein User-Agent nur als kurzfristiger Filter. Er ist ein frei wählbarer Header.

Die Requests laufen über POST /api/v1/accounts. Dieser Endpoint erlaubt Client-Apps, einen neuen lokalen Account direkt in der App anzulegen. Für OAuth-Verbindungen bestehender Accounts braucht ihn keine App. Auch #FediSuite nutzt ihn nicht. Sie registriert sich über /api/v1/apps, holt die Zustimmung über /oauth/authorize und arbeitet danach mit einem User-Token. Die normale Registrierung über die Mastodon-Webseite läuft ebenfalls getrennt über POST /auth.

Ich habe die API-Kontoerstellung auf lsbt.me deshalb komplett abgeschaltet. Webregistrierung, OAuth und bestehende Clients laufen unverändert weiter. Wer einen neuen Account möchte, registriert sich einmal ganz normal wie bisher im Web und kann danach jeden Client nutzen.

Falls ihr diesen optionalen Native-Sign-up-Weg ebenfalls nicht anbieten wollt, könnt ihr in eurem Nginx-Serverblock vor dem allgemeinen location /-Block Folgendes ergänzen. Das Beispiel setzt den in vielen Mastodon-Nginx-Configs vorhandenen @proxy voraus:

location = /api/v1/accounts {
limit_except GET {
deny all;
}

try_files $uri @proxy;
}

Damit erhält nur POST /api/v1/accounts ein 403. Der lesende GET-Endpoint bleibt erreichbar. Danach wie immer nginx -t und erst bei erfolgreichem Test reloaden.

#Mastodon #Fediverse #MastoAdmin #FediAdmin #FediMod #FediBlock #Moderation #Registration #Spam #Nginx #SelfHosting #SysAdmin #ActivityPub

Replying to @⁨donelias@mastodon.cr⁩

🏳️‍⚧️ Christin Löhner 🏳️‍🌈@christin@lsbt.me

Dear #Fediverse and #Mastodon admins

currently there is a massive wave of spam registrations everywhere in the fediverse.

For mastodon, I have a solution that works for me:

Create new file /etc/nginx/conf.d/lsbt-registration-spam.conf:

  map "$request_method:$uri:$http_user_agent" $block_lsbt_registration_spam {
default 0;
~^POST:/api/v1/accounts:Python/3\.[0-9]+\ aiohttp/ 1;
}

Add to the server block in /etc/nginx/sites-available/mastodon:

  location = /api/v1/accounts {
if ($block_lsbt_registration_spam) {
return 403;
}

try_files $uri @proxy;
}

@michaela @njakob @MikeGorden
#fediverse #mastodon #registrationspam #spam #registration #Automatedprotocoldeliverabilityprobe #lsbt

Dear #Fediverse and #Mastodon admins

currently there is a massive wave of spam registrations everywhere in the fediverse.

For mastodon, I have a solution that works for me:

Create new file /etc/nginx/conf.d/lsbt-registration-spam.conf:

  map "$request_method:$uri:$http_user_agent" $block_lsbt_registration_spam {
default 0;
~^POST:/api/v1/accounts:Python/3\.[0-9]+\ aiohttp/ 1;
}

Add to the server block in /etc/nginx/sites-available/mastodon:

  location = /api/v1/accounts {
if ($block_lsbt_registration_spam) {
return 403;
}

try_files $uri @proxy;
}

@michaela @njakob @MikeGorden
#fediverse #mastodon #registrationspam #spam #registration #Automatedprotocoldeliverabilityprobe #lsbt

Liebe alle* auf lsbt.me

Ich habe für unsere Instanz lsbt.me gerade die Möglichkeit der Registrierung deaktiviert.

Den Grund seht ihr im Anhang.

Aktuell geht eine Registrierungswelle durch das ganze Fediverse. Auch andere Instanzen berichten davon. Ich weiss nicht, was das für Registrierungen sind und was die für einen Sinn haben, aber sie überschwemmen gerade das ganze Fediverse.

Bis auf Weiteres sind deshalb bei uns Registrierungen deaktiviert.

Update:

Die eigentlichen Registrierungen kamen über die Mastodon-API:

POST /api/v1/accounts

Nicht über normale Browser-UI. Der User-Agent war durchgehend:

Python/3.10 aiohttp/3.14.3

Am 10.09.2026 gab es 81 Requests auf diese Route, davon 47 allein in der Stunde 16 Uhr. Fast jede Registrierung kam von einer anderen IP. Die IPs tauchen im Nginx-Log genau passend als POST /api/v1/accounts auf, z. B.:

60.71.247.207  POST /api/v1/accounts  Python/3.10 aiohttp/3.14.3
153.173.5.131 POST /api/v1/accounts Python/3.10 aiohttp/3.14.3
126.47.110.125 POST /api/v1/accounts Python/3.10 aiohttp/3.14.3

Die Reverse-DNS-Auflösung zeigt überwiegend japanische Residential-/Mobile-Provider, u. a. docomo.ne.jp, au-net.ne.jp, au-hikari.ne.jp, ocn.ne.jp, bbtec.net, eonet.ne.jp, commufa.jp, ucom.ne.jp, miyazaki-catv.ne.jp.

Am besten blockt man die auf webserver Ebene, zum Beispiel via nginx:

POST /api/v1/accounts + User-Agent Python/3.10 aiohttp/3.14.3 → blocken

Also zum Beispiel so:

map "$request_method:$uri:$http_user_agent" $block_bad_signup_bot {
default 0;
"~^POST:/api/v1/accounts:Python/3\.10 aiohttp/3\.14\.3" 1;
}

server {
if ($block_bad_signup_bot) {
return 403;
}

...
}

LG Christin

@michaela @njakob @MikeGorden
#fediverse #mastodon #registrationspam #spam #registration #Automatedprotocoldeliverabilityprobe #lsbt