Another win for the decentralized Fediverse when a government domain takeback can’t shut it down!
Mali has decided to take back .ml from people who took advantage of the free domain like fmhy.ml & maybe lemmy.ml - https://lemmy.world/post/1915581
And while it sucks for those servers & those users may have to migrate, the #Fediverse and it’s plethora of platforms continues on. 💪 💜
@fediverse #lemmy #mastodon #calckey #mali #decentralization
That’s a very positive spin on quite a shitty situation (especially if lemmy.ml goes kaputt)
@freamon Agreed, it’s a silver lining post, for sure.
But generally I find people say “you see, this is why the Fediverse/Lemmy/Mastodon etc will never take off” for every blip of bad news or whatever. But in reality, while the news sucks for .ml servers, it highlights the resiliency of the Fediverse - which is a win.
And better to happen in the early days of Lemmy than when/if it got much bigger.
Newsflash: It’s getting bigger as we speak. Prepare for all of the scalability problems now, not later when it’s even harder to fix.
You say that as though there’s some kind of crystal ball we can all look into and see all of the obstacles that will need to be cleared and prepare accordingly. That’s not how scaling web services works, especially distributed ones that are built on a relatively new protocol.
I mean, the .ml domain belongs to Mali and they have every right to take it back.
True. It might have been better though if the Lemmy devs hadn’t been such cheapskates and forked over the 10 bucks it takes to get a domain name that isn’t sketchy.
Did we know before it’s sketchy?
The parent domain was apparently well known to be a common host of phishing domains and scam sites. Free domains tend to attract those types, so that’s a good reason from the start not to use that if you want your site to be reliably accessible and findable on search engines.
My work uses zScaler for its Internet web filters. zScaler has everything *.ml blocked.
So yeah, it’s fairly well-known to be sketchy.
.ml is just Mali’s country domain. Maybe your workplace should get a better filter?
Or maybe realising anything ending in .ml was most likely spam and if it caught the 5 legitimate Mali domains oh well, zero loss for anyone.
Kinda like how I wouldn’t download a file from a .ru site.
I did, I just messed up and didn’t tell anybody. I’m sorry folks, this is on me.
Yes. Hosting a service in a country other than where a TLD is designated for is bad practice and common knowledge for any web developer
Guess nobody told youtu.be or the million of services on .to or .it…
.be and .to are free to use by anyone as set by the respective countries registrars, anyone that registers a .it domain outside of Europe is just asking for trouble
Do Belgium and Italy have different policies?
deleted by creator
Pretty sure they went with .ml not for price reasons, but because they liked to pretend it stood for their political ideology.
They stated themselves that it was for price reasons.
Maybe. I read the idea about it standing for Marxist/Leninist, but there’s thousands of TLDs now - if you can get .diamonds and .world, there’s probably something that would evoke the same lefty idea (although maybe lemmy pre-dates the new domains, I don’t know)
lemmy.ml was a sort of prototype made by the devs of the lemmy software. It wasn’t really meant for widespread public adoption. So it makes sense that they went with a free domain.
Lol they could’ve just spend $10 from the donations they receive to secure an actual .com domain
“Every right”? No. They have the power to do so but that doesn’t make it right. They sold those domains fair and square. Contracts were signed.
Domains aren’t sold, they are leased for a period of time. In this case the lease was for ten years and is lapsing now.
@freamon can you imagine if Lemmy (in total) was just *poof* grabbed by a government?
The fediverse lives to ride another day.
A domain takedown was never able to shut a server down, not even with centralized servers. Most big services are accessible via multiple domains of different countries, and this would just disable one of them. But for the Fediverse that means that they also “disabled” an entire instance with all its users.
This actually shows us that relying on domains can be a problem for the Fediverse! Imo we need to upgrade the federation protocol to be able to handle these things, like propagating a domain change or migrating accounts to other instances.
I’ve been wondering why everyone has a domain on their instance, even if it’s a single-user personal thingy.
Because you need a way to be reachable over HTTPS for other instances to be able to securely send you updates (new posts/comments/votes etc.), so you need a trusted certificate. While HTTPS does not strictly require a domain name1 it vastly simplifies the process.
1: It’s possible to get a trusted certificate for an IP address, but not nearly as easy as getting one for a domain. And it’s probably also more expensive than just getting a domain and using Let’s Encrypt to get a certificate.
Makes sense, thanks.
Because you need a way to be reachable over HTTPS
Feels like this is the core key to be changed. Something like Debian’s packaging system for example, which doesn’t even need the Debian domain to be HTTPS.
Debian packages are signed individually, and usually people also don’t see downloading Debian packages as potentially privacy-sensitive, so plain download is acceptable.
For lemmy where user accounts are involved, and in general as a new protocol designed in the age of HTTPS, it makes sense to require HTTPS.
They don’t need it per se but there’s a reason apt-transport-https is a very popular package.
How does this works then?
Dunno the exacts, but why not the good ol’ GPG? You only need to be able to exchange keys out-of-band once, and it saves you from lots of other issues. Trust between Alice and Brian is a between-them thing, and should not depend on a thrid party like Caroline arbitrarily deciding to change Brian’s legal name to Brandon.
We should require all servers to have opennic DNS and opennic TLS certificates installed
This is one of the problems with using country TLDs. They look cute, but when you buy it, you may not realize who controls it. Lemm.ee is similarly in a precarious position.
I really wish we could all agree to stop using country TLDs for this
Not really, @sunaurus@lemm.ee the lemm.ee admin is an Estonian citizen and entitled to use the domain https://lemm.ee/comment/1374825
You have to be careful with any TLD. People outside the US have found themselves subject to US law because they had a US controlled domain name.
Some ccTLDs are fine, some are not, but you have to think carefully when you buy it.
Who owns or controls .world domains?
I think .ee and .ca are fine. lemmy.ca is for Canadians specifically
For .ca specifically: as long as you are a Canadian individual, or have a sufficient connection to Canada, or a Corp with a trademark registered in Canada then you are qualified to own that domain - but as to who is really checking I have no idea… CIRA complainants maybe?
Here’s some info about .world domains https://support.google.com/domains/answer/6300841?hl=en#zippy=%2Cterms-restrictions
Saving a search/click for people that don’t know which country .ee is: Estonia
@renwillis I’m not so sure this is a “win”, since the Fediverse wasn’t specifically targeted by any entity involved to begin with. If anything, it’s just a straight-up loss to the communities that have to reassemble themselves under a new domain again, many of whom were probably mostly new users to the Fediverse to begin with, and are likely to be turned off by this experience. If anything, this just exposes that the Fediverse is significantly sustained by flimsy, free/cheap platforms that are vulnerable to disappearing without any notice. That doesn’t exactly instill faith.
It’s a really bad look, to be perfectly honest.
@Chozo @fediverse disagree. It’s another argument for decentralization that 1 entity taking down another entity doesn’t take down the whole system.
If the US seized Reddit.com today, the whole site would just be gone. Poof!
The US could seize 1000 servers today and yet the Fediverse would continue on.
deleted by creator
If lemmy.world went down, so would most of Lemmy, so this is already a huge problem.
@renwillis The Fediverse is more than just the collective network. It’s also the individual communities, some of which no longer exist right now. Those communities are now scrambling to figure out what to do.
Yes, the whole of the Fediverse is just fine. But the overall health of the Fediverse relies heavily on the health of individual communities.
Removed by mod
If this is a loss, a loss compared to what? Centralised servers? If Lemmy was a centralised server, this would’ve taken the whole site down. As another commenter mentioned, if the US government decides take Reddit down, the whole service would be lost. But in the Fediverse no single government can stop it.
Another example is when lemmy.world was attacked. All other instances and the custom clients continued to work. If you say this is a bad look, what’s a good look in your opinion? All of Lemmy going down at the same time? If centralised services deploy techniques to keep their services stable (horizontal scaling, regional mirrors etc.), Fediverse apps can use all of those techniques plus then some.
I do kinda agree, this isn’t great for general adoption but it’s a vital learning curve and hopefully smart people in the community will help develop ways to avoid it going forward and tools to fix it when it does happen
We NEED better abilities to migrate accounts to other instances like what Mastodon has!
Is an internet pirate community an internet pirate community without the odd patch of rough seas?
yarr
Just looking at my list of subscribed communities… There are a lot on lemmy.ml.
They’re toast if Mali yoinks the domain name.
This seems really, really bad for Lemmy…
Lemmy as a whole not being hurt even if some domains are gone is the entire point of being decentralized. But yeah, it’s really bad that communities made there will also be gone as it is now.
We need user and community migration like Mastodon has, and quick.
How does Mastodon do it differently?
You can migrate to another instance with all your followers very easily in Mastodon.
I can see Lemmy comms being able to do the same and it’s already been opened as an issue on the GitHub
Counterpoint: the generic communities being hosted on Lemmy.ml (an instance with a very strong political identity) simply because it was oldest was a real risk for the growth of Lemmy as a whole and this is a fantastic opportunity to rebuild those core communities on more generic Instances like Lemmy.world.
Why did so many instances use .ml domains?
'Cos they were free.
lmfao, frickin seriously? you’re gonna build up an instance where the domain is part of all of your users’ identities and you’re not even gonna spend the $10/yr to keep that solid? with how much time goes into running a lemmy instance and not getting overrun by bots, that’s an absolutely ridiculous assignment of resources
You have to remember that until recently, there was sub 100 daily users, this wasn’t a big platform, and it wasn’t just lemmy.ml, but a bunch of <10 user instances.
It wasn’t worth paying for a small side project until it wasn’t and at that point it was too late, plus who would have predicted that the gov of Mali would forcefully take back all of their domains?
Bruh it’s 10 dollars PER YEAR.
I’ve owned a .com domain for over a decade, ever since BEFORE I actually had a job and was living on allowances, and it still doesn’t register as an expense to me.
The content I host on that domain has been used by 3 different people tops, which is me and a couple of my friends. It’s still worth it.
If I were to build a public-facing service I’d certainly fork over the bare minimum to guarantee that it fucking stays up even if I don’t expect thousands of users. It’s just a matter of doing things properly. Free domains have always been sketchy as fuck, every scam ever was hosted on a .tk domain at some point.
But as it has been stated multiple times already, the only reason they actually went with “.ml” is because they thought it would be funny for the marxist-leninist association. That’s literally it. It’s not about money. Anyone with access to a dev machine has 10 dollars a year to spend or they wouldn’t be shitposting on the internet.
You underestimate how different some people’s situations and priorities can be. For us, it’s forking 10-20 USD (not a big sum of money) once a year by credit card (which isn’t hard to obtain).
There are parts of the world with dire financial situations or simply outdated systrms that don’t offer easy access to electric or international payments. There will be devs wanting to experiment with web services, but for them it isn’t simply “forking over the bare minimum”.
I won’t reveal my location just for the sake of an internet discussion, but I lived in a country (It’s not exactly a “3rd world shithole”, but not a developed one either) where until around five to ten years ago or so getting a bank account with ‘credit card’ meant you ‘made it’.
Why? If you weren’t lucky and wanted to pay for something international, you needed a friend with the aforementioned credit card to do the transaction on our behalf. Buying on Amazon? Better make it worth before bothering our friend there. What if I wanted games on steam? The friend with credit card, or use an intermediary that charges an extra before they ‘gift’ the purchased game. And so on.
Now it has gotten much better, as fintech apps filled the gap offering virtual visa or mastercard payments, and the banks themselves started offering credit cards with lower quotas, but you have to remember that it wasn’t available until a couple of years ago, or even still out of reach for some.
So what if you’re a developer with no affordable access to international tx and want to experiment regardless? You find the ones that don’t require payment.
I get a little over 10 dollars a day. Also, while my country has an excellent, free system for internal financial transactions, any international transaction will be (a) complicated and (b) expensive.
I’m not saying I wouldn’t pay USD1USD0 for a website, but I sure wouldn’t do it for a hobby one.
i mean, good point on the project size, but buying a domain is honestly such a basic thing that it still feels like a weird result on that equation to me. for fmhy.ml, specifically, i understand their choice, since pirate sites do tend to be quite nomadic with their domains, and the fediverse being so domain-specific is a new thing.
still, domains are hella cheap. the $10/yr figure i quoted is for a “serious” one on one of the major tlds, you can get away with much less if you’re willing to go for a somewhat more niche but still reputable one. especially one that’s longer than two characters.
Even worse, the free .ml domain is not actually yours when you get it for free, but actually owned by the company that previously managed the .ml domain. I suspect Mali government has reclaimed all those free domain registrations now that the contract with the company has been expired. The .ml domains that still up was probably paid domain and Mali government are probably still honoring the contract.
Lol one would expect people technical enough to setup a Lemmy instance would be aware of the fall of freenom and the fate of those free domains
Alright, fair enough
Ahh, makes more sense.
Are there any other domains that could be in a similar situation now?
Niue is trying to wrangle control of .nu form Sweden, so I’m a little worried. It’s been ongoing for years though.
At the time you get .ml free, .TK, .GA, .CF, .GQ were also available for free (they ended up all being used by spam advertisers, so those domains get marked ‘suspicious’ a lot)
@azalty it was free.
I think a lot of them were tankies who thought it was cool to have ML in their domain name. They have lemmy.ml and lemmygrad.ml iirc. Honestly I don’t know whether to be happy those communities took a hit or sad that I might lose one way of identifying and avoiding auth-left instances.
I might be unaware of some technical issues here but why not just get another domain, point it at the server, then update the database to change all references to lemmy.ml to thenewdomain.tld and then make an announcement on a couple of the bigger instances? Federation will take care of propagating the news far and wide. Then, as users hear the news they can just login using the same details and those of us subscribed to Communities on .ml can just update our subscriptions.
I mean, it’s not a perfect solution but it’ll work, surely?
ActivityPub uses URLs as IDs for everything. And there’s no way to update those IDs, it’s possible to update inbox URLs and other things but the main address of the object itself is its URL and thus there’s no way to propagate it without essentially making a new one.
It’s not impossible to do, but managing to get that to federate to all instances in a sane way is not currently possible.
There’s a ridiculous amount of URLs in the database and even fixing all of those won’t fully do the job, as post content might still refer to the old URL and whatnot.
It’s a messy situation, you’re not supposed to lose your domain.
the URL is the id in the database
Who was the idiot that decided to use for a database ID an identifier that almost entirely depends on external (and, for fediverse purposes, usually antagonistic) entities?
The W3C, apparently. It’s both the ID and the URL of the object if you want to refresh it. They seem to suggest doing it that way because the URL of a user profile is going to be guaranteed to be unique, and can only be owned by the owner of the domain.
Lemmy assigns it its own internal ID per instance but it’s only used internally for joins and stuff.
For example, your person ID is https://feddit.cl/u/nintendiator. If you curl it in ActivityPub format you’ll get your user:
~ % curl -H "Accept: application/activity+json" https://feddit.cl/u/nintendiator { "@context": [.....] "type": "Person", "id": "https://feddit.cl/u/nintendiator", "preferredUsername": "nintendiator", "inbox": "https://feddit.cl/u/nintendiator/inbox", "outbox": "https://feddit.cl/u/nintendiator/outbox", ...... }
They seem to suggest doing it that way because the URL of a user profile is going to be guaranteed to be unique, and can only be owned by the owner of the domain.
Immediate design issue right there: the URL of a user profile is not guaranteed to be unique, and while it can “”“only”“” be owned by the owner of the domain, 1.- it’s not owned by the user of the profile and 2.- the ownership by the domain owner is revocable by a third party.
Design-wise, it feels to me like they decided that land / house deeds could be certified by municipal traffic signage.
Who was the idiot
The W3C, also known as the people who develop the web standards. It’s a reasonable expectation as you have to draw a line in the sand somewhere. Distributed identity is not a solved problem, so domains are the best solution we have right now.
What would you suggest they use as the identifier with which allows other entities uniquely identity you? There are no alternatives until you introduce a ton of cryptography, which is what DID hopes to address, but that’s still going to be bad UX.
The W3C, also known as the people who develop the web standards
Figures. The same people who added DRM to the web standards.
Now, I don’t know what other alternatives could have been used, but I know that URL was among the obvious ones to not use. Something that uniquely identifies you has to be non-transitive and non-revocable by a third party, of which URLs are neither (domain names are revocable, URLs don’t have addressing persistence let alone when you add query strings into the mix, etc). Among the few things that I can think are non-transitive and non-thirdparty-revocable are the good ol’ ssh-keygen keys, easy to generate and all that but I’ve never found a good mechanism or design to query about them.
That seems like an ActivityPub problem, not a problem with the admin who lost the domain. Perhaps somebody should fix dumbass design flaws to the protocol.
Federations won’t survive with obvious flaws like that. It needs resilienacy.
You’ll have to go complain directly to the W3C for that. The situation is Lemmy may fix it with some custom protocol extensions, but then it’ll still break every other piece of software that follows the spec like Mastodon, Kbin and others.
It’s like adding a 6xx status to HTTP. You technically can, but expect every standard compliant clients to be confused and bail on it.
You can’t just change domains with emails either and have everything seemlessly migrate over. Not losing a domain is not a completely unreasonable assumption to make.
Thankfully the users and communities aren’t lost, it’s just that people outside of fmhy will have to resubscribe to the communities on the new domain.
A lot of armchair developers in here who think there is an easy solution to distributed identity
There’s definitely better ways to handle this, like, the ID could be a public key or something. Chances of RSA/EC key conflicts is basically nonexistent or we wouldn’t use them.
But it’s the W3C, of course they assume URLs can and will be permanent. Your domain being seized is not something typical companies and organizations face. It’s something you expect to happen to a site hosting piracy and other illegal content, which FMHY is somewhat borderline with its piracy guides.
ActivityPub is not designed to be any sort of censorship resistant for sites that move addresses and servers frequently.
The problem is with the federation. Other instances will try to federate with the old domain and won’t recognize the new domain. Simply changing your domain will not update federation in other instances. AFAIK work is still underway to allow migrating to a new domain and allow other instance to recognize the domain change.
Time to create BGPML… a federation protocol router for .ml like situations. ;)
It’s my understanding that this isn’t possible. Migrating domains in Lemmy is not supported though it is possible with some very hacky solutions like you’re describing. But the old domain needs to be retained indefinitely as a pointer to the new domain or it will break federation with other instances. If they lose control of the domain or can’t keep it basically forever then federation will break. They can potentially migrate users and posts, but it is effectively like resetting and starting over as a new instance.
Right, but if Mali do reclaim all the .ml domains out there then there’s little option? Yes, federation will break for .ml and yes it’ll be like starting over on a fresh instance but only in terms of federation - all the users, communities, posts and comments will still exist, just under a new domain. Once the new domain starts federating people will catch on, especially if the news is posted on the larger instances.
Don’t get me wrong, I’m not saying its not a problem, I’m just not sure its a total disaster either.
Yes. It doesn’t outright kill an instance, but it’s definitely a major inconvenience and a learning opportunity.
What’s with this .ml love and Lemmy? Are people really building lemmy instances on those free domains obtained from freenom, unaware of its fall?
What’s going on with/in Mali anyway? When I search, all the results are just about the US military email fuckup.
@WhoRoger yeah, apparently the company managing the domain, their 10 year contract is up and Mali decided not to renew and brought it in house. https://domainincite.com/28897-freenom-is-losing-another-cctld-after-collecting-military-emails
Ok so I guess the old registrar were a bunch of twats, so the gov kicked them out and in the process potentially benefits from the US mil email thing.
All while doing the typical government thing of messing things up for everybody because they don’t know how anything works.
Am I right?
I don’t think the email thing is connected to this. That just happened at roughly the same time.
Yea it just prevents one from searching what’s going on, because web results are filled with this.
Maybe this will have the knock on effect of some migration tools being developed.
@SeeJayEmm I hope so, that’s a big miss on Lemmy right now.
Need to be able to migrate accounts & communities ASAP.
Oof best of luck to you guys on .ml instances, might be worth looking at buying a domain as a backup to migrate to. Don’t wanna be caught off guard like this especially if they are trying to recoup all their urls. I went with a .boo domain to be unique for my instance but there are loads of TLDs out there
i remember for a period of time it was really easy and completely free to get an .io url. i assume it’s something similar here.
In the internet biz since 1993 here (retired): choose your registrar as carefully as your domain name.
Lowest price is the dumbest reason. It’s never the way to choose anything. ID what your needs are, what satisfies that, then shop for the best price…
Anyway at the moment for my purposes the EU with it’s gdpr and other rules is the best choice for many reasons. I’m using joker.com.
Top level domains (.ml etc) have their own rules, you gotta read them carefully. I don’t know anything about .ml and whether they allowed that usage or not.
I was on fmhy now I’m on blahaj.zone, but I have to re-find and subscribe to all my communities
FYI I made a little tool for migrating / backing up your Lemmy subscriptions, blocks, profile settings, etc.
Nothing to be done for fmhy now that it’s gone, but for the future, it might help to have a backup.
Thanks, I’ll probably forget to do it once I get things built up again
Big whoop mf! At least they got the data so that guys like you have something to subscribe
Fuck that’s cool. Makes me feel like an Alpha.
Explain yourself.
This makes little sense. Piracy domains get cracked down regularly and they simply move and mirror. Has nothing to do with the Fediverse.
Is more annoying to move in the Fediverse because accounts are domain-based
@Aurix tell that to google & facebook in China. ;)