The Multi-Site Use Case
You run a VPS with 3 sites: a WordPress blog on blog.example.com, a SaaS app on app.example.com, and a static landing page on example.com. You want one WAF to protect all three — no per-site overhead.
Adding Multiple Sites ...
Database Injection Is Still the Number One Threat
OWASP Top 10 hasn't changed. Database injection remains the most dangerous web vulnerability and the most common one. In 2025, about 23% of all reported web vulnerabilities were injection flaws.
Wh...
The Situation
You already have a Docker Compose stack running: Nginx + your app + PostgreSQL + Redis. It works. You don't want to rebuild it. But you want WAF protection in front.
Here's how to add SafeLine to an existing Docker Compose project wi...
The Dashboard Isn't Just Numbers
Your WAF blocks attacks. The Attack Logs tell you what those attacks were, where they came from, and whether any got through. Reading these logs turns random blocks into actionable intelligence.
Anatomy of an Attac...
The $5 Challenge
Can you run a production-grade WAF on the cheapest VPS available? I tested it on a $5/month VPS 1 vCPU, 1 GB RAM, 25 GB SSD from a major provider. The goal: protect a Node.js blog and a static site without exceeding the budget.
Th...
Good Bots vs Bad Bots
Not all bots are created equal.
| Bots You Want | Bots You Don't Want |
|---|---|
| Googlebot — indexes your site for search | Scrapers — steal your content |
| Bingbot — same as Google, different engine | Credential stuffers...
The Dashboard Isn't Just Numbers
Your WAF blocks attacks. The Attack Logs tell you what those attacks were, where they came from, and whether any got through. Reading these logs turns random blocks into actionable intelligence.
Anatomy of an Attac...
The $5 Challenge
Can you run a production-grade WAF on the cheapest VPS available? I tested it on a $5/month VPS 1 vCPU, 1 GB RAM, 25 GB SSD from a major provider. The goal: protect a Node.js blog and a static site without exceeding the budget.
Th...
Why Geo-Block?
Not every country needs to reach your server. If you run a local business in Brazil, you don't need traffic from North Korea. If you serve customers in the EU, you probably don't need visitors from 150 other countries hitting your lo...
The Setup
Deployed SafeLine Community Edition on a $10/month VPS in front of 3 small websites: a WordPress blog, a Node.js SaaS app, and a static portfolio. Let it run for 30 days, blocking nothing — pure observation mode. Here's what showed up.
D...
The Problem
Your login page, search endpoint, or contact form is getting hammered. Rate limiting is the fix — but implementing it in application code means finding every endpoint, writing middleware, choosing a storage backend, and deploying change...
Why APIs Need Different Protection
Web form attacks SQLi, XSS target HTML endpoints. API attacks are different — they exploit JSON bodies, GraphQL queries, auth tokens, and rate limits. Your API needs protection that understands these attack vector...
Week 1: The Scanner Flood
Within 24 hours of going live, the WAF started blocking automated scanners. Not targeted attacks — just internet background radiation hitting anything with a public IP.
Week 1 stats:
Total requests inspected: ~180,000
B...
Before You Start
Make sure Docker is installed
docker --version # Should be 20.10.6+
docker compose version # Should be 2.0.0+
Make sure you have room
df -h / # Need at least 5 GB free
free -h # Nee...
| | Plugin WAF Wordfence, etc. | Reverse Proxy WAF SafeLine |
|---|---|---|
| When it loads | After WordPress boots | Before traffic hits WordPress |
| Database hit per blocked request | Yes — WordPress and MySQL already queried | No — blocked at the...
Why Small Businesses Get Targeted
Attackers don't just go after banks and hospitals. They scan for vulnerable WordPress installs, unpatched plugins, and exposed admin panels — the kind of things small business sites have by the dozen. The average W...
I deployed SafeLine on a production VPS serving a handful of web apps. Here's what worked, what didn't, and whether it's worth your time.
What SafeLine Gets Right
Semantic analysis, not pattern matching. Most WAFs look for suspicious strings — ' OR...
You don't need to be a security engineer to deploy a WAF. If you can run docker compose up, you can have SafeLine protecting your applications in under 15 minutes.
What You'll Need
A Linux server Ubuntu 20.04+, Debian 11+, CentOS 7+
Docker 20.10....