SSH ProxyJump: Reach a Server Through a Jump Host
A server that only accepts SSH from one static IP does not need your private key on that IP. Tested ProxyJump setups, the errors you will see and how to lock down the jump host.
Archive
A server that only accepts SSH from one static IP does not need your private key on that IP. Tested ProxyJump setups, the errors you will see and how to lock down the jump host.
Three servers answer to the name MySQL. How to find out which one you run, where they behave differently, and what breaks when you move data from one to another.
Two critical PHP bugs fixed on 21 October 2026 can let one request run code on your server. How to find the PHP that serves your site, check the version, restart it and block the known paths.
The index to the Bash function library: every PHP string function with its pure-Bash equivalent, short tested snippets, and when to use awk or sed instead.
Writing Bash builtins in C: the .def format, compiling into bash vs enable -f, what my old awie-bash code got wrong, and a tested loadable port with timings.
Extra iptables matches and targets the kernel never shipped: country blocking with geoip, a TARPIT decoy port, port knocking, and the psd scan detector I ported.
Temp files and stale locks left behind by failed scripts are avoidable. Tested trap patterns for EXIT, INT, TERM and ERR, plus mkdir and flock locks.
One column for both address families: INET6_ATON() and INET6_NTOA(), IPv4-mapped addresses, correct sorting, indexed range queries and MariaDB's native INET6 type.
Export with WP-CLI, rebuild with a small Node script, keep every old URL working: what I learned relaunching this site as static HTML after dropping 1,600 posts.
Spread copies one level, the JSON trick breaks dates, maps and cycles, and structuredClone() fixes most of it. Tested examples, including what it still cannot clone.