DEV Community

Arina Cholee
Arina Cholee

Posted on

How I Protect My Website From Real Attacks With SafeLine WAF

Running a small online business sounds easy — until your website becomes a target.

Last year, I launched a niche subscription-based service. Traffic started growing, revenue stabilized… and then the attacks began.

At first, they were tiny anomalies:

  • Strange 404 patterns
  • Dozens of login attempts from impossible locations
  • Bots scraping every single page
  • SQL injection payloads showing up in my logs

I was relying on a simple CDN firewall, but it blocked only the most obvious threats. Eventually, I found myself spending more time cleaning up logs than improving my product.

That’s when I decided to try SafeLine, a self-hosted WAF.

What started as a security experiment became the thing that saved my website.

How the Attacks Started

One morning, I woke up to a notification from my monitoring system:

CPU at 98%.

My login API was being hammered by bots attempting credential stuffing. Worse, a scraper was downloading my entire knowledge base every hour — probably a competitor.

My CDN firewall wasn’t catching this. It treated everything as "legitimate traffic."

I needed something smarter.

I needed something that understood intent, not just patterns.

Discovering SafeLine

A friend in the security community recommended SafeLine, describing it as:

“A WAF that doesn’t just match signatures, it understands what the request is trying to do.”

That immediately caught my attention. I wanted real-time protection, but without giving all my traffic to a cloud provider.

Self-hosted, open source, semantic detection — exactly what I needed.

Deploying It on My Server

Installation took less than 5 minutes.

bash -c "$(curl -fsSLk https://waf.chaitin.com/release/latest/manager.sh)" -- --en
Enter fullscreen mode Exit fullscreen mode

Once the dashboard was running, I added my site:

  • Backend: http://127.0.0.1:8080
  • HTTPS enabled
  • Bot protection: ON
  • Semantic threat detection: STRICT mode

It instantly became the reverse proxy in front of my site.

Within 10 minutes, I was already seeing its first insights.

The First Attack SafeLine Stopped

Remember the login API attack?
SafeLine detected it immediately.

What happened:

  • A scraper was rotating IPs
  • Firing JSON login payloads at random intervals
  • Trying thousands of common passwords

What SafeLine did:

  • Detected abnormal request frequency
  • Flagged the TLS fingerprint as bot-generated
  • Auto-applied a rate limit
  • Then blocked the entire bot cluster

In the dashboard, the traffic graph suddenly went flat again — in a good way.

No more CPU spikes.
No more log floods.

I didn’t have to write a single custom rule.

Stopping the Scraper That Was Stealing My Content

A week later, the competitor scraper attempted 3 full-site extractions.

SafeLine caught it with:

  • Header entropy mismatch
  • Suspicious user-agent behavior
  • Lack of JavaScript execution
  • Irregular navigation pattern

It challenged the client with a dynamic validation page — the scraper failed instantly.

I didn’t even know validation challenges were possible in a self-hosted WAF.

It felt like having Cloudflare bot protection…
but on my own server, fully controlled by me.

Protecting My Payment and Dashboard Routes

To take things further, I added custom rules:

  • Block access to /admin/* for non-whitelisted IPs
  • Enable strict semantic checks on /api/payment/*
  • Add rate limiting on sensitive form submissions

SafeLine let me tune each application route differently.
Every request was logged, categorized, and analyzed.

I finally had visibility into what was happening behind the scenes.

The Day SafeLine Saved Me From an Injection Attempt

One afternoon, I saw a red alert in the dashboard:

Semantic Injection Attempt Blocked

Someone tried a complex SQLi payload embedded inside URL parameters — something generic WAFs often miss because the payload was encoded twice and mixed with legitimate strings.

SafeLine didn’t just match signatures.
It understood that the intent was to manipulate a database query.

My site kept running normally.
The attacker was blocked silently.

That was the moment I knew SafeLine wasn’t just a filter —
it was an intelligent security layer.

Before and After SafeLine

Here’s what life looked like before vs. after:

Before

  • Constant log noise
  • High CPU usage from bot traffic
  • Scrapers stealing content
  • Random brute-force attempts
  • Occasional service degradation
  • No visibility into attack patterns

After

  • 90% reduction in malicious traffic reaching my backend
  • Scrapers instantly challenged or blocked
  • Real-time visibility of everything hitting my site
  • Stable server performance
  • Custom rules tailored to my business
  • Zero cloud dependencies
  • Finally sleeping without worrying that my site might break overnight

SafeLine didn’t just protect my website.
It let me focus on growing my business again.

Why Self-Hosted Made Sense for Me

I considered cloud WAFs. But:

  • I wanted full control
  • I wanted traffic privacy
  • I wanted to avoid recurring fees
  • I wanted deep customization without vendor lock-in
  • I needed something I could tune like a real engineer

SafeLine checked all the boxes.

Would I Recommend It?

Absolutely — especially if:

  • You're running an online business
  • You host your own apps
  • You're annoyed by scrapers
  • You deal with bots or credential stuffing
  • You need a modern WAF that actually understands attacks
  • You want privacy and self-hosted control

If you rely on your website for revenue, customer accounts, or operations,
a WAF is not optional anymore — it's essential.

And SafeLine is the first self-hosted WAF that honestly feels like a modern product, not a legacy security module from the 2000s.

Deploying SafeLine changed the way I protect my online business.
It caught attacks I never saw, blocked bots I didn't know existed, and removed the constant anxiety of “what if my site goes down today?”

SafeLine helped me run my business with confidence —
and that peace of mind is worth more than any feature list.

👉 If you run your own site, give SafeLine a try:
https://safepoint.cloud/landing/safeline

Top comments (0)