linux
37 posts found
You’re Debugging DNS in the Wrong Namespace
Network namespaces isolate DNS resolvers from the host. A practical guide to finding which namespace your process lives in, dropping into it, and tracing the ac…
TCP Keepalive Does Not Keep Your Connection Alive
Linux defaults to a 2-hour keepalive time. Dead connections sit in your process table for hours before the kernel notices. Here is how to fix that and why appli…
Linux Systemd Sandboxing: Ten Security Directives for Production Daemons
Harden production Linux services using native systemd security directives including namespaces, seccomp syscall filters, and memory protection.
Why Read-Only Containers Do Not Stop Binary Execution
A read-only root filesystem prevents disk writes, but Linux kernels still permit staging and executing in-memory ELF binaries via memfd_create and unhardened tm…
Noise Handshakes for NAT Traversal: Rathole Multiplexing Architecture
An architectural look at how user-space Noise Protocol tunnels avoid TCP-over-TCP breakdown and solve CGNAT ingress bottlenecks.
How to Replace Static Authorized Keys with OpenSSH Cryptographic Certificates
Replace static authorized_keys with an OpenSSH Certificate Authority to issue time-limited certificates, eliminate known_hosts prompts, and enforce instant revo…
Your Localhost Server Is Listening on Every Interface
Running python http.server without --bind 127.0.0.1 opens every NIC to incoming connections. localhost in the URL bar does not equal loopback in the kernel.
Linux Nftables Flowtables: Netfilter Fastpath Connection State Gaps
Software flowtables cut CPU load on Linux routers by bypassing Netfilter chains. Here is why established connections ignore live firewall rule updates and how t…
Debugging WireGuard MTU Bottlenecks and TCP MSS Clamping
Why WireGuard connections drop large TCP payloads when ICMP Path MTU Discovery fails, and how to configure MSS clamping and interface MTU limits on Linux gatewa…
Android 17 Encrypted Client Hello Still Leaves Hostnames on the Wire
Android 17 turns ECH on by default, but RFC 9849 only hides SNI. Outer public names, dedicated origin IPs, and missing HTTPS ech= records still leak the destina…