DevOps. Self-hosted. Security.
RSS FeedNotes on DevOps, infrastructure, self-hosting and cybersecurity — practical guides from real-world operations.
Read the posts below or head over to the About page.
Recent Posts

A contact form on a static site: Cloudflare Turnstile + Pages Functions + D1 + Telegram — no backend of your own
A live contact form on a static Astro site, entirely inside Cloudflare's free tier: a Turnstile widget against bots, server-side token verification in a Pages Function, a message archive in D1 and an instant Telegram push. The whole "backend" is one TypeScript file — and the real traps were in configuration, not code.

The same architecture, self-hosted: rebuilding the part-1 AWS serverless diagram on your own VM for $0/mo (part 2/2)
We rebuild the part-1 serverless diagram on our own VM: Kong instead of API Gateway, Node.js instead of Lambda, PostgreSQL, MinIO, Keycloak, RabbitMQ, and Prometheus — the whole stack in one docker-compose.yml. What translates one-to-one, what has to be rewritten, and where the real difference between $0/mo and nearly-free serverless lies.

A minimal app architecture on AWS: a serverless stack — what every service does and how to read the diagram (part 1/2)
We take a reference serverless app diagram on AWS apart layer by layer: Route 53, CloudFront, S3, API Gateway, Lambda, DynamoDB, SQS, Cognito, CloudWatch — what each service does and why it hurts without it. A minimal SAM template rebuilds a copy of the diagram in one evening.

Chaitin SafeLine WAF: zero-config self-hosted WAF — and a free Pro license for writing about it
The WAF story continues: SafeLine by Chaitin — a self-hosted WAF with a management console and a semantic engine instead of regex rules. We install the free edition with one command, test it on SQLi payloads, compare it with Coraza, and unpack the Content Contributor Program that hands out Pro licenses for articles like this one.