Reading up on Hetzner
12 deep · digging since jan 16
- A backdoor in a LinkedIn job offer - Roman Imankulov
A fake recruiter sent a LinkedIn job candidate a GitHub repo with a backdoor that executes on npm install by running a remote-controlled command payload hidden in a test file.
- I am building a cloud
exe.dev, co-founded by a Tailscale founder, offers SSH-accessible VMs for $20/month, aiming to simplify cloud infrastructure for AI agents.
- I run multiple $10K MRR companies on a $20/month tech stack
Running multiple $10K MRR businesses on a $20/month stack with SQLite, a VPS, and minimal services is possible, but the approach is controversial among developers.
- Vercel's CEO offers to cover expenses of 'Jmail'
Vercel's CEO offered to pay Jmail's $46k hosting bill after it went viral hosting Epstein files, sparking debate over the platform's pricing versus cheaper alternatives.
- The surprising attention on sprites, exe.dev, and shellbox - Lalit Maganti
New services like exe.dev, sprites, and shellbox succeed not on price or specs, but by offering frictionless, sandboxed cloud VMs for AI-driven developers who want fast prototyping and instant web service sharing.
- Linux boxes via SSH: suspended when disconected
Shellbox offers Linux VMs via SSH that suspend on disconnect, costing $0.02/hr running and $0.50/month parked, beating Hetzner under 186 hours of use per month.
Takes
If you wanna do it yourself, this is how: Buy (~15 min) 1. Cheap VPS from Hetzner or DigitalOcean (~€5-10/mo), Ubuntu 24.04, tick automatic backups at checkout 2. Add your domain to Cloudflare (free plan), switch nameservers at your registrar 3. Install Termius (SSH app) + Tailscale (private network) on laptop and phone, free tiers Lock it down (~20 min) 4. Generate an SSH key in Termius, add it to the VPS at creation. Keys only, never passwords 5. SSH in once via public IP, run updates, install Tailscale on the server, log it in 6. Disable Tailscale key expiry for the server (admin console, one click) 7. Verify you can SSH via the server's Tailscale 100.x address BEFORE the next step 8. Provider firewall: delete all inbound rules, allow only port 443 from Cloudflare's published IP ranges. No public SSH at all. You enter through the tunnel 9. Test from outside: public IP times out on everything, Tailscale IP connects. Server is now invisible 10. One SSH key per device. Phone gets its own key added to authorized_keys Install the brain (~5 min) 11. apt install tmux then install Claude Code (official native installer, one curl command) 12. Run Claude Code inside a tmux session so it survives disconnects and keeps working while your laptop is closed Hand over everything else 13. Write ONE long handover prompt telling Claude Code: the server facts, the security model (so it doesn't "fix" it), folder conventions (/srv/http/domain per project, one tmux session each), your preferences, and standing rules (confirm before destructive actions, new services bind to localhost/Tailscale only) 14. Make it write all of that into CLAUDE.md first, so every future session already knows everything 15. Backups before features: nightly job pushing your data to GitHub, tested, before a single page exists 16. Then let it install the web server (Caddy + Cloudflare DNS plugin plays nicest with the locked firewall), set up SQLite, deploy the first page From then on you never administer the server again. You open Termius from anywhere, on any device, and just say what you want. BOSH
@robj3d3
A few months ago my kids started vibecoding little web games with Cursor and wanted their friends to play them. GitHub Pages was fine until the games needed real backends, so I hacked together a setup where each game was a folder in one repo that deployed to a Hetzner box on every push. That held up until we shipped FULL SEND for Vibe Jam 2026 and it took off with 38,000+ players. The duct tape needed to become something real, so I rebuilt it properly and pulled it out into its own project. It turns one Linux server into a push-to-deploy host for many apps. The whole thing is a single Go binary that installs and drives Docker, Kamal, Cloudflare, Tailscale, and GitHub for you. After that: - Each app is a GitHub repo. - A git push is live in <5 seconds. - Deploys are zero-downtime. - Each app runs in its own container. - Automatic Cloudflare DNS and TLS tunnels. - SQLite-aware backup and restore. It's deliberately single server using convention over configuration, so for a typical app there's no YAML or Dockerfile to write. The idea is that one decent VPS can reliably run all your projects without per-app bills or piles of infra config. It's built on top of Kamal, so it's basically a Kamal wrapper for the "lots of apps on one server" case, with the Cloudflare, Tailscale, DNS, and backup glue wired up by convention. Setup is one interactive command on a fresh Linux box, which walks you through connecting everything. If you also have a bunch of projects you want to run on a single server, tell your Claude Code, Codex, Cursor, or favorite AI agent to grab a VPS and try it for you. It's fully open source and you can customize it to your liking:
@dvassallo
By far THE most annoying part of running a business for me is collecting receipts for my accountant Every month my accountants hounds me for invoices and receipts of every single expense I did, doesn't matter how tiny like $0.50, sometimes also for income (I don't know why) Most companies charge monthly so that means collecting 12 invoices per year at least One reason I am canceling so many SaaS is not even the cost, it's just that I hate bookkeeping so much so I think if I don't spend the money, I don't need to collect invoices and receipts for every single payment every month (also I like extremely high profit margins like 99.99%) I'm down to just about 10 companies I pay now, like Cloudflare, Hetzner, Backblaze etc. so that means only ~120 invoices to collect per year cause most are paid monthly Yes I have an automatic email filter that forwards invoices to my accountant but many companies do NOT send you an automatic invoice by email So you're talking about logging in to 10 websites, them sending you a 2FA code by email, opening your email, entering the code, trying to find wherever the Billing page is hidden, going to Invoices, opening the invoice, clicking Download to DPF (if it even exists) This week I tried to improve this, my accountant uses Xero, so I made a Xero API key, gave it to Claude Code, and asked it to login and figure stuff out, then it just asks me which expenses still need a receipt and a note, I find it and drag the PDF or screenshot into Claude Code and it resolves it Next step is letting it login to all my vendors and also download the invoice by itself which seems very very possible Much easier!
@levelsio
You get 20 TB of free bandwidth for $4.99/mo at @Hetzner_Online Way way way way more than enough for most websites! I'm not sponsored by them, I don't even get discounts or anything, just a great deal!
@levelsio
So @loaibassam asked me my stack recently, I replied: FREE: Nginx web server on Ubuntu (free) Auto upgrade with unattended-upgrade (free) Scheduled workers with Cron (free) Vanilla PHP for site backend (free) Vanilla CSS (free) Vanilla JS for code (free) Game servers I do in vanilla Node JS (free) SQLite for DB (free) Python for tool scripts (free) Cloudflare with Cloudflare tunnel for DNS/SSL (free) Tailscale for security (free) OpenFreeMap for maps (free) CHEAP: xAI for AI API (cheap) Stripe for payments (cheap) Cloudflare R2 for image storage (cheap) Hetzner VPS ($4/mo) Cloudflare domain reg (~$10/year) So about ~$5/mo total costs with about ~5M unique visitors per month per site (these are site averages)
@levelsio
In light of all the heroku drama, here are 3 services I use or have used extensively over the past few years for hosting/deploy/server stuff.@Railway — This to me is the spiritual successor to Heroku. Arguably does the best job at distilling eye-gouging sysadmin stuff down into…
@Shpigford