Need help implementing ActivityPub - getting inconsistent results across platforms
My friend is working on adding ActivityPub support to his blog platform (BDServer) so people can follow/comment from Mastodon, Lemmy, etc. Current status: Lemmy and Misskey can find and follow his account (@[email protected] [/u/[email protected]]), but Mastodon can’t find it at all, even though he sees proper ActivityPub requests hitting his server. The technical details are pretty gnarly - RSA signature verification, HTTP header recreation, multi-threading issues. He wrote up the full journey here: Please Help Me With Activity Pub [https://blenderdumbass.org/articles/please_help_me_with_activity_pub] If anyone has ActivityPub experience or wants to take a look at the code (Python), we have a Matrix room for BDServer development. Any insights on why different platforms behave differently would be super helpful. https://matrix.to/#/#bdserver:tchncs.de [https://matrix.to/#/#bdserver:tchncs.de] Source code: ActivityPub.py [https://codeberg.org/blenderdumbass/BDServer/src/branch/main/modules/ActivityPub.py]
BDServer - Open source, plugin-based blog server
Been helping my friend test their blog server project and figured some of you might find it useful. It’s called BDServer and it’s basically what blog engine written in pure python. The cool part is it’s just Python files - no compilation, no massive dependencies and the best part is 0 JavaScript. Every aspect is customizable via plugins system. My friend runs their blog on it https://blenderdumbass.org/ [https://blenderdumbass.org/] and I’ve been running mine at https://blog.madiator.com/ [https://blog.madiator.com/] (in my case I made some own plugins as not liked orginal design) Some features included: - Built-in analytics that don’t phone home to Google - Markdown files for posts (but you can embed HTML if needed) - Plugin system so you can add weird features without breaking updates - Currently we working on fully adding Activity Pub support Source is on Codeberg: https://codeberg.org/blenderdumbass/BDServer [https://codeberg.org/blenderdumbass/BDServer] License: AGPL version 3 or later We hang out on Matrix if anyone wants to chat about it or needs help: https://matrix.to/#/#bdserver:tchncs.de [https://matrix.to/#/#bdserver:tchncs.de]
BunkerWeb For now giving another go to BunkerWeb probably most close thing I’m looking for. In my case proxy is on OVH and the final server on Hetzner. Mostly want to filter out AI bots from scrawling my pages.
Reverse Proxy with WAF and network monitoring
I’m currently self-hosting several services and looking to harden my setup. I already use Nginx Proxy Manager (NPM) with wildcard Let’s Encrypt certs, but I’m thinking of moving to something more robust with: A proper WAF (Web Application Firewall) Deep network monitoring (ideally per-container or per-service) Possibly some bot protection and anomaly detection (ai scrapping is annoying) I’ve looked into Traefik, BunkerWeb, and Pangolin. Each has pros and cons, BunkerWeb seems WAF-ready, but has some limitations (SSL setup is nightmare). Traefik is very flexible, but I’d need to add middleware myself (also runing non docker services). Pangolin looks great but werent able to get it work in my setup. Main goals: Secure exposure of HTTP(S) services (wildcard certs with Cloudlfare) Easy rules for blocking bad IPs or patterns Optional: rate-limiting, automatic fail2ban-style bans Bonus: nice dashboard or at least logs that make sense I also have a mix of Docker and bare metal services, so proxying non-container stuff cleanly is important. My final goal is setup like this: OVH (Reverse Proxy - Firewall) - Tailscale - Hetzner Server)