Something that's less annoying than Anubis is fail2ban tarpitting the scrapers by putting in a hidden honeypot page link that they follow, and adding the followers to fail2ban.
Selfhosted
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
Besides that point: why tf do they even crawl lemmy. They could just as well create a "read only" instance with an account that subscribes to all communities ... and the other instances would send their data. Oh, right, AI has to be as unethical as possible for most companies for some reason.
They crawl wikipedia too, and are adding significant extra load on their servers, even though Wikipedia has a regularly updated torrent to download all its content.
See your brain went immediately to a solution based on knowing how something works. That's not in the AI wheelhouse.
They're likely not intentionally crawling Lemmy. They're probably just crawling all sites they can find.
Because the easiest solution for them is a simple web scraper. If they don't give a shit about ethics, then something that just crawls every page it can find is loads easier for them to set up than a custom implementation to get torrent downloads for wikipedia, making lemmy/mastodon/pixelfed instances for the fediverse, using rss feeds and checking if they have full or only partial articles, implementing proper checks to prevent double (or more) downloading of the same content, etc.
I don't like Anubis because it requires me to enable JS -- making me less secure. reddthat started using go-away recently as an alternative that doesn't require JS when we were getting hammered by scrapers.
iirc there's instructions on completing the anubis challenge manually
Anubis just released the no-JS challenge in a update. Page loads for me with JS disabled. https://anubis.techaro.lol/blog/release/v1.20.0/
The development of Anubis remains a matter of enthusiasm: Zee is funding the project through Patreon and sponsorship on GitHub, but cannot yet afford to pursue it on a full-time basis. He would also like to hire a key community member, budget permitting.
It doesn't stop bots
All it does is make clients do as much or more work than the server which makes it less temping to hammer the web.
Yeah, from what I understand it's nothing crazy for any regular client, but really messes with the bots.
I don't know, I'm just so glad and happy it works, it doesn't mess with federation and it's barely visible when accessing the sites.
Personally my only real complaint is the lack of wasm. Outside if that it works fairly well.
But don't you know that Anubis is MALWARE?
...according to some of the clowns at the FSF, which is definitely one of the opinions to have. https://www.fsf.org/blogs/sysadmin/our-small-team-vs-millions-of-bots
tbh I kinda understand their viewpoint. Not saying I agree with it.
The Anubis JavaScript program's calculations are the same kind of calculations done by crypto-currency mining programs. A program which does calculations that a user does not want done is a form of malware.
That's guilt by association. Their viewpoint is awful.
I also wished there was no security at the gate of concerts, but I happily accept it if that means actual security (if done reasonably of course). And quite frankly, cute anime girl doing some math is so, so much better than those god damn freaking captchas. Or the service literally dying due to AI DDoS.
Edit: Forgot to mention, proof of work wasn't invented by or for crypto currency or blockchain. The concept exists since the 90's (as an idea for Email Spam prevention), making their argument completely nonsensical.
And quite frankly, cute anime girl doing some math is so, so much better than those god damn freaking captchas
One user complained that a random anime girl popping up is making his gf think he's watching hentai. So the mascot should be changed to something "normal".
Lol.
"My relationship is fragile and it's the internets fault."
Ok but if it allows anubis to judge the soul of my bytes as being worthy of reaching a certain site I'm trying to access, then the program is not making any calculations that I don't want it to.
Would the FSF prefer the challenge page wait for user interaction before starting that proof of work? Along with giving them user a "don't ask again" checkbox for future challenges?
The FSF explanation of why they dislike Anubis could just as easily apply to the process of decrypting TLS/HTTPS. You know, something uncontroversial that every computer is expected to do when they want to communicate securely.
I don't fundamentally see the difference between "The computer does math to ensure end-to-end privacy" and "The computer does math to mitigate DDoS attempts on the server". Either way, without such protections the client/server relationship is lacking crucial fundamentals that many interactions depend on.
I've made that exact comparison before. TLS uses encryption; ransomware also uses encryption; by their logic, serving web content through HTTPS with no way to bypass it is a form of malware. The same goes for injecting their donation banner using an iframe.
Right. One of the facets of cryptography is rounds: if you apply the same algorithm 10,000 times instead of just one, it might make it slightly slower each time you need to run it, but it makes it vastly slower for someone trying to brute-force your password.
I’ve, once again, noticed Amazon and Anthropic absolutely hammering my Lemmy instance to the point of the lemmy-ui container crashing.
I'm just curious, how did you notice this in the first place? What are you monitoring to know and how do you present that information?
Thanks for the "incoherent rant", I'm setting some stuff up with Anubis and Caddy so hearing your story was very welcome :)
I love Anubis just because the dev is from my city that's never talked about (Ottawa)
Well not never, you've got the Senators.
Which will never not be funny to me since it's Latin for "old men".
Hahaha I didn't know that but that is funny. Admittedly I'm not too big into hockey so I've got no gauge on how popular (edit: or unpopular 😅) the Sens are
I've been thinking about setting up Anubis to protect my blog from AI scrapers, but I'm not clear on whether this would also block search engines. It would, wouldn't it?
I'm not entirely sure, but if you look here https://github.com/TecharoHQ/anubis/tree/main/data/bots
They have separate configs for each bot. https://github.com/TecharoHQ/anubis/blob/main/data/botPolicies.json
You can setup the policies to allow search engines through, the default policy linked in the docs does that
This all appears to be based on the user agent, so wouldn't that mean that bad-faith scrapers could just declare themselves to be typical search engine user agent?
Most search engine bots publish a list of verified IP addresses where they crawl from, so you could check the IP of a search bot against that to know.
Yes. There's no real way to differentiate.
Actually I think most search engine bots publish a list of verified IP addresses where they crawl from, so you could check the IP of a search bot against that to know.
The Anubis site thinks my phone is a bot :/
tbh I would have just configured a reasonable rate limit in Nginx and left it at that.
Won't the bots just hammer the API instead now?
No. The rate limit doesn't work as they use huge IP Spaces to crawl. Each IP alone is not bad they just use several thousand of them.
Using the API would assume some basic changes. We don't do that here. If they wanted that, they could run their own instance and would even get notified about changes. No crawling required at all.
Futo gave them a micro-grant this month
@demigodrick@lemmy.zip
Perhaps of interest? I don't know how many bots you're facing.
I've been planning on seeing this up for ages. Love the creators vibe. Thanks for this.
Been seeing this on people's invidious instances
Also your avatar and the image posted here (not the thumbnail) seem broken - I wonder if that's due to Anubis?
Just updated the post again, yeah. But I think that was due to me changing nameservers for my domain at the time. Cheers.
I’ve seen some people reject this solution due to the anime.
I think AI can provide an interface to let user submit the site for crawling, such as some website scanner doing, like urlscan. Otherwise the site can reject the AI crawler.