
Let's Encrypt for Internal Hosts with DNS-01 and SSH Push
How I replaced a dozen ad hoc certbot setups with one central acme.sh instance. It uses DNS-01 validation through Cloudflare and pushes each certificate to its host over SSH.

How I replaced a dozen ad hoc certbot setups with one central acme.sh instance. It uses DNS-01 validation through Cloudflare and pushes each certificate to its host over SSH.

How I moved my domain’s email from a hosted provider to a self-hosted Postfix and Dovecot server in my home lab, the design choices behind it, and what I learned along the way.

How I self-host Matomo analytics for a static Hugo site. Matomo stays on an internal server, and a DMZ reverse proxy carries the tracking traffic, with the real visitor IP and GeoLite2 geolocation preserved.

How I run NextPVR alongside Jellyfin in one LXC container for live TV, how a one-line config setting broke every channel, and what it took to get Jellyfin onto a 2020 Samsung TV.

A MagicMirror² dashboard with weather, Home Assistant, Spotify, news, stocks and webcams, now rotating through two read-only Grafana pages for the home lab. Covers the hardware history, the kiosk setup and how Grafana is embedded safely.