• Auditing my VPS for signs of compromise

    Introduction I retired an old WordPress site last week. It had been running on my Virtual Private Server (VPS) for a while, and I was never fully confident it had been locked down properly (it was a temporary site to test some stuff for someone). So before I forgot about it entirely, I wanted an…

  • Attacker workstation on a Mac

    Introduction I run my daily work off a MacBook, and for a while I told myself I could install nmap and a handful of tools straight onto macOS with Homebrew and call it a day. That works until the first time you run something you don’t fully understand yet against a target, on the same…

  • Automated secured Hetzner VPS

    Introduction A few weeks ago we setup a cool VPS with WordPress, Traefik, etc. in an automated way. The only downside was that is could not be managed with the same code (only setup once), as explained in the post. Today we’re setting up a complete, automated WordPress hosting solution using OpenTofu, cloud-init and Ansible;…

  • Oneshot secured Hetzner VPS

    Introduction A complete, automated WordPress hosting solution using OpenTofu, Docker, and Traefik. Deploy a secure, fast WordPress site to Hetzner Cloud in minutes with TLS, caching, and security hardening out of the box. Find the code here. Update: I’ve split the code into 3 repos, making it more scalable for future deployments. Deploy them in…