Latest posts

  • No Plaintext Anywhere: A Secrets Pass Over the Whole Lab

    Before mirroring my repos to GitHub, I audited every place a credential could hide. Found a few. This is what the pass looked like.

    Read more

  • Checking on the Lab from Anywhere

    WireGuard gets me into the lab from anywhere through one UDP port. The real lesson is what the tunnel shouldn’t excuse behind it.

    Read more

  • Why I Self-Host GitLab and Still Mirror to GitHub

    Running my own GitLab means backups, upgrades, and runners are my problem. That’s the point. GitHub stays as the mirror.

    Read more

  • Homelab Monitoring Without the Guesswork

    Telegraf, InfluxDB, and Grafana in Docker. Numeric OIDs over MIBs, dashboards provisioned from git, and a diagnosis story about sparse graphs.

    Read more

  • Network Configs That Back Themselves Up

    Ansible pulls the configs, vault encrypts them, git keeps the history, Semaphore runs it on schedule. NetBox tells everyone what exists.

    Read more

  • Automating a Legacy Cisco Switch with Ansible

    My 2960G predates most of the tools trying to manage it. Legacy SSH crypto, paramiko pins, and the other gotchas of automating old IOS.

    Read more

  • Home Lab AI Update

    I’ve been running a home lab since 2002, but the last few weeks it’s turned into something closer to a full enterprise analog: NetBox as the source of truth, Ansible with vault-encrypted credentials, Semaphore running playbooks from Git, automated encrypted config backups, and a Telegraf/InfluxDB/Grafana monitoring stack. Self-hosted GitLab with a GitHub mirror for version…

    Read more

  • OPNsense Home Setup

    My OPNsense Setup My network runs modem → OPNsense → Cisco 2960G. The OPNsense box is just a Dell thin client I repurposed, and I 3D-printed a bracket so it mounts cleanly under my desk, completely out of the way. I’ve got VLANs set up in OPNsense to keep the security cameras isolated from the…

    Read more