41554 blogs · [ { "id": "01a087ac-d598-733e-81fe-62ba061b0e07", "title": "The People against Scalability", "url": "https://nbailey.ca/rant/scalability/", "published_at": "2026-07-01T00:06:40+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba0716c586", "title": "There's so much to do", "url": "https://nbailey.ca/rant/so-much-to-do/", "published_at": "2026-06-08T18:03:28+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba074e618d", "title": "How to turn anything into a router", "url": "https://nbailey.ca/post/router/", "published_at": "2026-03-28T01:19:47+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba07a75e98", "title": "Letters to my MP: Age Verification", "url": "https://nbailey.ca/rant/age-verification/", "published_at": "2026-03-19T15:59:28+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba0809af87", "title": "Deploy to Cloudfront from GitHub using OpenID Connect", "url": "https://nbailey.ca/post/cloudfront-static-site/", "published_at": "2026-03-12T22:30:00+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba083503f2", "title": "Data was the new oil; now AI is the new plastic", "url": "https://nbailey.ca/rant/plastic/", "published_at": "2026-02-20T17:00:00+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba08a3a6fa", "title": "Backup Postgres databases with Kubernetes CronJobs", "url": "https://nbailey.ca/post/backup-k8s-cronjob/", "published_at": "2026-02-19T01:58:43+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba08afc107", "title": "The spelling error made 200 billion times a day", "url": "https://nbailey.ca/post/spelling-error/", "published_at": "2025-11-27T22:42:11+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba09799a19", "title": "Restarting Kubernetes pods using a CronJob", "url": "https://nbailey.ca/post/restart-pods-everyday/", "published_at": "2025-11-21T22:30:00+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba09bd0493", "title": "You've just bought a new domain. Now what?", "url": "https://nbailey.ca/post/new-domain-now-what/", "published_at": "2025-10-27T00:58:45+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba0a550df6", "title": "On Building Pyramids", "url": "https://nbailey.ca/rant/pyramids/", "published_at": "2025-10-23T00:39:52+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba0adec089", "title": "Who Sawed My Motherboard???", "url": "https://nbailey.ca/post/who-sawed-my-mobo/", "published_at": "2025-09-12T19:01:30+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba0bb22a6b", "title": "Linux on the P8 Aliexpress Mini Laptop", "url": "https://nbailey.ca/post/p8/", "published_at": "2025-03-11T00:36:25+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba0bde7d68", "title": "Recovering Mysql/Mariadb after a nasty crash", "url": "https://nbailey.ca/post/mysql-recovery/", "published_at": "2024-07-29T15:28:08+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba0c799c01", "title": "Using EXIF data to pick my next lens", "url": "https://nbailey.ca/post/exif/", "published_at": "2023-11-24T20:55:00+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba0cfaba8a", "title": "Converting and developing RAW photos on Linux automatically", "url": "https://nbailey.ca/post/raw/", "published_at": "2023-10-28T17:30:06+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba0d028950", "title": "Thank you, 2016 iPhone", "url": "https://nbailey.ca/post/iphone/", "published_at": "2023-08-05T01:10:00+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba0d6efb77", "title": "Don't Make It Work", "url": "https://nbailey.ca/post/dont-make-it-work/", "published_at": "2023-07-05T21:12:15+00:00" }, { "id": "01a087ac-d598-733e-81fe-62ba0d86f11d", "title": "Self-hosted Surveillance with ZoneMinder", "url": "https://nbailey.ca/post/nvr/", "published_at": "2023-01-08T02:12:20+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30a67266d1", "title": "Backups, Monitoring, and Security for small Mastodon servers", "url": "https://nbailey.ca/post/mastodon/", "published_at": "2022-11-28T23:41:48+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30a6ee430b", "title": "Block web scanners with ipset & iptables", "url": "https://nbailey.ca/post/block-scanners/", "published_at": "2022-11-09T02:35:22+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30a7b92bb4", "title": "Executing commands over SSH with GitHub Actions", "url": "https://nbailey.ca/post/github-actions-ssh/", "published_at": "2022-09-18T21:37:08+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30a83f6c0f", "title": "Debian Sid on encrypted ZFS", "url": "https://nbailey.ca/post/debian-zfs/", "published_at": "2022-07-24T16:00:00+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30a8aa79c5", "title": "Protect your dangerously insecure redis server", "url": "https://nbailey.ca/post/redis-hack/", "published_at": "2022-05-23T01:50:05+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30a9316398", "title": "Debian: the luxurious boring lifestyle", "url": "https://nbailey.ca/post/debian-laptop/", "published_at": "2022-05-06T21:06:34+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30a97bd133", "title": "Monitor radiation with a Raspberry Pi", "url": "https://nbailey.ca/post/radiation-monitor/", "published_at": "2022-02-04T23:13:52+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30a98c9b23", "title": "Simple Linux server alerts: Know your performance, errors, security, syslog, and security", "url": "https://nbailey.ca/post/simple-alerts/", "published_at": "2021-12-18T22:28:06+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30aa535fce", "title": "NUC crashes on debian 11 - How I fixed it", "url": "https://nbailey.ca/post/nuc-crashes/", "published_at": "2021-12-13T15:08:14+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30ab205b91", "title": "Basic Linux server security with fail2ban, ossec, and firewall", "url": "https://nbailey.ca/post/make-your-things-less-dangerous/", "published_at": "2021-11-08T23:30:38+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30ab740df4", "title": "Windows 11 will create heaps of needless trash", "url": "https://nbailey.ca/post/win11-will-create-trash/", "published_at": "2021-06-27T18:23:59+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30ac1c8d9e", "title": "Your Car Has Two Steering Wheels", "url": "https://nbailey.ca/rant/your-car-has-two-steering-wheels/", "published_at": "2021-06-06T23:37:00+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30accae4db", "title": "Castles, alligators, machine guns, and mail", "url": "https://nbailey.ca/rant/castles-alligators-machine-guns-and-mail/", "published_at": "2021-05-31T15:39:33+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30ad77b835", "title": "The billion dollar hotdog stand", "url": "https://nbailey.ca/rant/billion-dollar-hotdog-stand/", "published_at": "2021-05-29T20:41:52+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30ade97cca", "title": "Domesticated Kubernetes Networking", "url": "https://nbailey.ca/post/k8s-networking/", "published_at": "2021-04-30T02:30:00+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30adfbb581", "title": "The Cursed Certificate", "url": "https://nbailey.ca/post/cursed-certificate/", "published_at": "2021-04-05T16:52:46+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30ae8ed19f", "title": "Our mostly disposable and entirely stupid world", "url": "https://nbailey.ca/post/disposable-and-stupid/", "published_at": "2021-03-04T22:37:17+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30ae95dea1", "title": "Trying out OpenBSD (as a Linux geek)", "url": "https://nbailey.ca/post/openbsd-as-a-linux-geek/", "published_at": "2021-03-03T19:00:00+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30af36dae1", "title": "Making VoIP Calls with Antique Rotary Phones", "url": "https://nbailey.ca/post/rotary-phone-voip/", "published_at": "2021-01-09T18:45:45+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30afd106ad", "title": "Monitoring WAN speed with speedtest-cli and ElasticSearch", "url": "https://nbailey.ca/post/wan-speedtest-elasticsearch/", "published_at": "2020-12-10T02:36:57+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30aff0214e", "title": "Monitoring WAN latency with InfluxDB", "url": "https://nbailey.ca/post/wan-ping-monitor-influxdb/", "published_at": "2020-12-08T00:38:21+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b0cc285f", "title": "The Zeroshell botnet returns", "url": "https://nbailey.ca/post/zeroshell-returns/", "published_at": "2020-12-02T22:53:33+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b1a28707", "title": "Installing Gentoo on a vintage Thinkpad T60", "url": "https://nbailey.ca/post/thinkpad-t60-gentoo/", "published_at": "2020-11-13T00:17:43+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b1d23365", "title": "Malware emails 2: Russian boogaloo", "url": "https://nbailey.ca/post/2020-10-malware-emails/", "published_at": "2020-10-23T20:15:01+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b222c82f", "title": "TP-Link Device Weirdness", "url": "https://nbailey.ca/post/tplink-device-weirdness/", "published_at": "2020-10-22T22:19:05+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b269240c", "title": "ElasticSearch broke all my nice things (a story of cascading failure)", "url": "https://nbailey.ca/post/elasticsearch-broke-all-my-nice-things/", "published_at": "2020-09-02T21:22:20+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b2e8cc08", "title": "A New Botnet is Targeting Network Infrastructure", "url": "https://nbailey.ca/post/zeroshell-botnet/", "published_at": "2020-08-04T17:30:50+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b396b07c", "title": "Malware on the Wire: Monitoring Network Traffic with Suricata and ClamAV", "url": "https://nbailey.ca/post/malware-on-the-wire/", "published_at": "2020-06-20T03:15:04+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b3ca7bf3", "title": "Cloud Threat Protection with OSSEC and Suricata", "url": "https://nbailey.ca/post/security-monitoring-ossec-suricata/", "published_at": "2020-05-20T02:00:00+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b4349cb3", "title": "Encrypted LVM/LUKS Linux Install", "url": "https://nbailey.ca/hacks/encrypted-lvm-install/", "published_at": "2020-04-10T19:13:21+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b474eb56", "title": "SSH Agent as Systemd User-Service", "url": "https://nbailey.ca/hacks/ssh-agent/", "published_at": "2020-04-10T16:49:12+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b55e6111", "title": "Malware Emails From Jerks", "url": "https://nbailey.ca/post/malware-emails-from-jerks/", "published_at": "2020-04-10T00:31:37+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b656fc18", "title": "Surviving the Apocalypse with an Offline Wikipedia Server", "url": "https://nbailey.ca/post/wikipedia-mirror-server/", "published_at": "2020-03-27T00:22:04+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b6bb11fd", "title": "Being Attacked by Bots", "url": "https://nbailey.ca/post/being-attacked-by-bots/", "published_at": "2020-02-18T22:37:11+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b72204f6", "title": "Linux Router, Firewall and IDS Appliance", "url": "https://nbailey.ca/post/linux-firewall-ids/", "published_at": "2020-02-14T05:46:40+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b75e6421", "title": "You Probably Don't Need a VPN", "url": "https://nbailey.ca/post/you-probably-dont-need-a-vpn/", "published_at": "2020-01-16T01:56:55+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b7e3e5d8", "title": "Fix an Oversharded Elasticsearch Cluster", "url": "https://nbailey.ca/post/oversharded-elasaticsearch/", "published_at": "2019-10-25T23:23:16+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b88336d8", "title": "Automating KVM Virtualization", "url": "https://nbailey.ca/post/kvm-ansible-automation/", "published_at": "2019-09-28T15:24:11+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b904cba6", "title": "Update all your linux servers as fast as possible", "url": "https://nbailey.ca/post/update-all-the-things/", "published_at": "2019-09-08T02:17:55+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b9884deb", "title": "Cleanup Systemd Journald Storage", "url": "https://nbailey.ca/post/clean-the-systemd-journal/", "published_at": "2019-07-10T01:51:35+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b9cd398d", "title": "Stop Putting Your SSH Keys on Github!", "url": "https://nbailey.ca/post/stop-putting-your-ssh-keys-on-github/", "published_at": "2019-07-05T00:40:25+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b9cf0c66", "title": "Clustering KVM with Ceph Storage", "url": "https://nbailey.ca/post/cephfs-kvm-virtual-san/", "published_at": "2019-03-05T01:11:36+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30b9fc999e", "title": "Stealing Windows Sessions", "url": "https://nbailey.ca/post/stealing-windows-sessions/", "published_at": "2019-02-02T00:50:15+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30ba94a172", "title": "FreeRadius Active Directory Integration", "url": "https://nbailey.ca/post/peap-freeradius/", "published_at": "2018-12-17T05:10:20+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30bb947a09", "title": "Retrieving WPA2 Keys on Windows", "url": "https://nbailey.ca/post/wlan-passwords/", "published_at": "2018-12-13T02:34:50+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30bbdbf55e", "title": "Deploy MDT Litetouch on Linux with TFTPD and Syslinux", "url": "https://nbailey.ca/post/mdt-linux/", "published_at": "2018-10-04T12:19:20+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30bc2bc5d6", "title": "Generating MSI transform files with Orca", "url": "https://nbailey.ca/post/hacking-msi/", "published_at": "2018-10-01T23:56:30+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30bc9b426a", "title": "The Inflatable Dinghy", "url": "https://nbailey.ca/post/dinghy/", "published_at": "2018-09-19T00:10:14+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30bc9e853f", "title": "Generating Cisco IOS config files with Python", "url": "https://nbailey.ca/post/netcode/", "published_at": "2018-09-18T14:08:57+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30bcbbb7e0", "title": "Homebrew SAN", "url": "https://nbailey.ca/post/homebrew/", "published_at": "2018-09-17T19:40:16+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30bd717697", "title": "Getting Cloudy", "url": "https://nbailey.ca/post/cloudy/", "published_at": "2018-09-15T14:23:02+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30be226882", "title": "Contact", "url": "https://nbailey.ca/contact/", "published_at": "2018-09-10T19:29:04+00:00" }, { "id": "01a087ac-d599-733f-bc22-4c30be8e98fe", "title": "About Me", "url": "https://nbailey.ca/about/", "published_at": "2018-01-12T19:24:21+00:00" } ] posts Claim your blog
Back to Posts
Blog · corpus.blog/blogs/nbailey.ca/posts

Posts

nbailey.ca

2026

2025

2024

2023

2022

2021

2020

2019

2018