Building a Wiki - ♂ Right Version ♂


That Legionnaire’s Primer Manual page is the most unwieldy bag of ass on the entire website, for readers and for me.

If you think it’s hard to read, it’s even harder to edit or add to. I have to convert from markdown to HTML because the text editing tools here aren’t meant to do anything that crazy. I could do custom CSS and HTML but then I’m entering into the tech equivalent of bailing wire and duct tape when there are dedicated platforms for wiki type articles. I could pay for a plugin, except the words “website” and “plugin” are usually followed by a CVE entry.

Let me lay this out for you; Squarespace is not the website service you use for a wiki. This platform is more geared towards creating websites where you sell a product. So at most you have a landing page, product pages, a contact page, and a checkout page. You’re meant to be selling custom made ficus pots on this platform.

It ain’t meant to host a 5000 page wiki where people in the comment section of an article people ask for my PO box so they can send rope and printed out directions to the nearest tree branch because I think 7.62 is an acceptable rifle caliber. You wanna fight about how I need to retcon Frostpicks so they use 8.6 blackout? Nah fuck you leather head, how bout you get outta that uhhhh jabroni outfit and we settle this in the ring.

I’d like to facilitate autistic internet slap fights, but this ain’t the platform to do it on.

To that end I’m working on getting some type of dedicated wiki website set up. The issue here is how to go about it, and how to make it as bulletproof as I can. Less in the cybersecurity sense, but more in the “Someone is having a shitfit over something I did or said and organizing a takedown campaign in their Discord server” type of bulletproof. Not the easiest task but it should be doable.

There’s a few options to choose from, but I don’t want to go with some dedicated wiki hosting company for a few reasons.

  • This is going to be an “official wiki” which means I’ll be the one editing and adding articles. Most wiki hosting companies require the wiki to be editable by the public in some capacity since they’re meant to be collaborative projects. That’s perfectly a-okay for unofficial / fan projects, I’m all for that in those cases.

  • A hosting company for wikis is vulnerable to mass takedown / flagging campaigns, just like a normal web hosting company. Even this site is vulnerable to that. That’s to say it’s trivial for someone to bombard the hosting service with false reports / flagging reports by the hundreds of thousands, nonstop, until they take the wiki down because they don’t want to deal with it before booting you as a client.

    • The number of hosting companies resistant to that method are few and far between, usually located in South Africa, Poland or Ukraine.

But then there are benefits to a dedicated wiki hosting service.

  • They handle software updates, security and DDoS protection.

  • They handle hardware and storage.

  • They handle bandwidth, domain registrars, upstream providers, DNS, etc…

So now we get to the question of, what’s the best way to proceed? It comes down to three possibilities I’ve come up with but I’m a security guy, not a webmaster, so there’s very likely others I’m completely ignorant of.

Or ones I just don’t want to deal with because rat nest tech stacks trigger my caveman brain to start smashing it with a rock. Hearing “CI/CD pipeline” and “Github action runners” already causes my eye to twitch.

Option 1 - Obsidian Publish

This is the least painful option, because I write all my series notes and details within Obsidian. It’d be absolutely trivial to spin that up and just set up a dedicated vault for it and I wouldn’t need to do any conversion nonsense from markdown to HTML.

The issues:

  1. This is vulnerable to takedown / reporting spam attacks, like other dedicated wiki hosting providers. Obsidian doesn’t want to spend their time dealing with 900,000+ bot submitted reports about how my wiki contains step by step instructions on homemade explosives, they’d just drop the site.

  2. As far as I can tell you get 4GB max storage, so it’d need to be pure text with no images and even that has a set limit I have to be mindful of.

It’s an option, but there are downsides.

Option 2 - AWS + MediaWiki

This isn’t the worst thing in the world, but the moment you set up an AWS instance you’d better have that shit on lockdown. The amount of automated scanners looking for an excuse to turn your site into a flaming garbage pile is beyond most people’s comprehension.

The issues:

  1. Everything is on you hombre, hope you didn’t fat finger that Route 53 config and certificate setup.

  2. MediaWiki config is a whole new ballgame to learn.

  3. Still likely just as vulnerable to takedown spam.

  4. Oh your AWS instance got compromised and used as compute for someone’s shitcoin? That sucks, here’s your $200k bill.

It’s a possibility but there’s a lot of work behind it.

Option 3 - Fully Self Hosted / Other VPS

I have the hardware to run a server using some Linux variant (don’t you dare, trash that email draft) but then we get into the wonderful world of web hosting. That means setting up service with an ISP, colocation, DDoS mitigation, DNS, domain registrars, a TLD, and all that comes with it. Alternatively it’s possible to do something like AWS but use a service like Digital Ocean, which offers specialized VMs and handles a lot of the other legwork.

The issues:

  1. This is gonna be a wiki for my hobby, I ain’t doing all that and giving myself a second job.

  2. If you thought AWS was expensive, the cost of self hosting a website with everything included would only be feasible if I started gun running pallets of machineguns as part of a CIA operation.

  3. I don’t feel like having a conversation with the FBI after I missed a security patch and Lazarus used my site to shut down a power plant.

Conclusion

Hell if I know, but it’s leaning towards option 1 and I’ll just deal with the problems as they come up.