I discovered yesterday evening that Lemmy.ml is blocking all inbound ActivityPub requests from /kbin instances. Specifically, a 403 ‘access denied’ is returned when the user agent contains “kbinBot” anywhere in the string. This has been causing a cascade of failures with federation for many server owners, flooding the message queue with transport errors.
This doesn’t appear to be a mistake; it has been done very deliberately, only on Lemmy.ml. Lemmy.world and other large instances do not exhibit the same behavior. It also isn’t a side effect of the bug introduced in Lemmy 0.18. You can observe by sending the following in a terminal
> curl -I --user-agent "kbinBot v0.1" https://lemmy.world/u/test
HTTP/2 200
[...]
> curl -I --user-agent "kbinBot v0.1" https://lemmy.ml/u/test
HTTP/2 403
[...]
> curl -I --user-agent "notKbinBot v0.1" https://lemmy.ml/u/test
HTTP/2 403
[...]
> curl -I --user-agent "placeholder-user-agent" https://lemmy.ml/u/test
HTTP/2 200
[...]
Additional evidence of this not being a Lemmy 0.18 bug:
-
This occurs when making web requests to any location on the Lemmy.ml webserver, not just ActivityPub endpoints.
-
Go to https://fedidb.org/software/lemmy and pick an instance running 0.18.0. Perform the above commands, replacing the URL for Lemmy.ml with that particular instance’s address.
If this continues, my instance may need to defederate from Lemmy.ml. This is especially problematic because Lemmy.ml continues to federate information outbound to other kbin instances while refusing to allow inbound communication from them.
Spoofing the user agent is less than ideal, and doesn’t respect Lemmy.ml’s potential wish to not be contacted by /kbin instances. I don’t post this to create division between communities, but I do hope that I can draw awareness to what’s going on here. Defederating /kbin instances entirely would even be better than arbitrarily denying access one-way. This said, we should all attempt to maintain a good-faith interpretation until otherwise indicated by the Lemmy developers. It’s possibel that this is a firewall misconfiguration or some other webserver-related bug.
Relevant comment from me (#354 - [BUG] Critical errors/failed messages during messenger:consume)
Edits:
-
Yes, people have already tried reaching out to the Lemmy instance admins in their Matrix room with no answer.
-
Someone has posed a question on Lemmy.ml about the block here: https://lemmy.ml/post/1563840
This is utterly baffling and goes against the whole idea of the Fediverse. To take advantage of the impending mass migration, just days before Reddit shuts down their universal API access for good, this all leaves a very bad taste in my mouth.
So users now have to choose between two already-smaller communities when making the transition? This is only going to make a semi-complicated process even more confusing, and end up pushing users back to Reddit.
I had mostly used Lemmy.ml up to this point, but I didn’t leave Reddit to join another u/spez dictatorship. What a disappointing turn of events. Kbin is now my primary.
Presuming for the sake of argument that it’s a deliberate move by .ml to freeze out kbin users, it only really goes against the idea of the fediverse in that it’s an underhanded way to accomplish something that was meant to be done openly. By design, every instance is entirely free to choose whether or not to federate with any other.
And (again presuming for the sake of argument that it’s not simply a glitch), that’s the fediverse working exactly as intended. Just as every instance is free to choose which instances to federate with, every user is free to choose which instances to join or follow.
True, but the original intent was that defederation would be a nuclear option, reserved only for instances that totally failed to moderate stuff like hate speech, bot activity, etc-- given that it damages the Fediverse as a whole.
The lemmy.ml admins are free to federate or defederate from other instances as they please-- and we’re free to criticize their decision as we please, too.
We should not be moderating hate speech…that is a slippery slope. Simply disregard it.
Do you want another /r/the_donald? Because that’s how you get another /r/the_donald.
Something something, that’s how you get a Nazi bar.
Fuck that, I don’t want to give Nazis a safe space to organize and spread their hate.
Depends on where you live, doesn’t it? It could be illegal not to remove hate speech.
On top of that being literally illegal in most populous jurisdictions, communities cannot tolerate those who are intolerant. Leave.
deleted by creator
Decentralisation means a clash of egos
I don’t think it’s a case of a personal ego here. I think it’s something different, that has to go with the main devs’ ideology. I feel like @feditips 's concerns are quite valid.
deleted by creator
The admins of lemmy.ml are literal commie scum. No surprise that they are a tad authoritarian.
They’re Tankies. Don’t confuse Tankies and communists, even if there’s a certain historical adjacency there. They are ultimately different concepts.
No need to get on the high horse just yet. This is much more likely to be a sever/sync issue than some kind of shadowy conspiracy.
If lemmy.ml wanted to defederate, they’d just go ahead and do it.
I’m not sure how much you know about networking or HTTP, but from the evidence posted, this very much is not the kind of thing that just accidentally happens.