VPS Security Guide · 2026
CrowdSec VPS Guide 2026: Install a Crowdsourced IPS on Your Linux Server
A VPS exposed to the internet is scanned and attacked within minutes of going live — SSH brute-force, port scanning, web exploits, and DDoS botnets are constant threats every server owner faces. Traditional tools like Fail2ban only see attacks hitting your machine. CrowdSec takes a different approach.
CrowdSec is an open-source IDS/IPS that leverages crowdsourced threat intelligence — 70,000+ servers worldwide share malicious IP data, giving you a community blocklist that is 7–60 days ahead of other vendors. And the core engine is completely free.
Contents
What is CrowdSec?
CrowdSec is an open-source Security Engine (version v1.8 as of 2026) that detects and blocks malicious behavior on servers. Unlike Fail2ban, it uses Crowdsourced Threat Intelligence — when your server detects a malicious IP, that data is contributed to the community and returned as a continuously updated community blocklist that every CrowdSec user receives automatically.
- License: Open Source (Security Engine free)
- Version: v1.8
- Community: 70,000+ active users in 190+ countries
- Daily signals: 40 million+ aggressive IP signals
- Minimum hardware: 1 CPU core, 100 MB RAM, 1 GB disk
- OS support: Linux, FreeBSD, Windows, macOS, Docker, Kubernetes, WHM/cPanel
Core Architecture
CrowdSec is made up of four main components:
- Log Processor — reads logs from defined sources (SSH, Nginx, Apache, etc.) and analyzes patterns against scenarios
- AppSec (WAF) — filters malicious HTTP requests; supports web exploit and bot detection
- Local API (LAPI) — the broker between the Log Processor and Remediation Components
- Remediation Components (Bouncers) — enforce decisions: block IPs at the firewall, Nginx, or reverse proxy level
CrowdSec vs Fail2ban: Direct Comparison
Fail2ban remains a solid tool, but CrowdSec offers significant advantages in 2026:
| Feature | CrowdSec | Fail2ban |
|---|---|---|
| Crowdsourced blocklist | ✓ (70K+ servers) | ✗ (single machine only) |
| Free community blocklist | ✓ automatic | ✗ |
| Built-in WAF (AppSec) | ✓ | ✗ |
| Nginx Bouncer (Layer 7) | ✓ | ✗ (iptables only) |
| Web Dashboard | ✓ (app.crowdsec.net) | ✗ |
| Prometheus Metrics | ✓ port 6060 | ✗ |
| RAM footprint | ~100MB | ~30–50MB |
| WHM/cPanel support | ✓ native | manual setup |
| License | Open Source (free) | Open Source (free) |
Data as of October 2026 — verified from docs.crowdsec.net
Performance Statistics (verified from crowdsec.net)
From a real-world case study: Nicolas Iung, Head of CERT at Crédit Mutuel: "CrowdSec blocked 66.6 million attempts compared to Palo Alto's 11 million in the same period — with zero false positives."
Install CrowdSec on Ubuntu/Debian VPS
The following steps work on Ubuntu 22.04/24.04 LTS and Debian 11/12:
Step 1: Add the Repository
curl -s https://packagecloud.io/install/repositories/crowdsec/crowdsec/script.deb.sh | sudo bash
Step 2: Install CrowdSec
sudo apt update
sudo apt install crowdsec -y
After installation, CrowdSec detects your OS and automatically adds appropriate collections such as crowdsecurity/linux and crowdsecurity/nginx if Nginx is installed.
Step 3: Check Status
sudo systemctl status crowdsec
sudo cscli metrics
Step 4: View Installed Collections
sudo cscli collections list
Install additional collections as needed:
sudo cscli collections install crowdsecurity/nginx
sudo cscli collections install crowdsecurity/apache2
sudo cscli collections install crowdsecurity/sshd
Configure the Firewall Bouncer (cs-firewall-bouncer)
The Firewall Bouncer is a Remediation Component that blocks flagged IPs by injecting rules directly into iptables or nftables:
Install Firewall Bouncer
sudo apt install crowdsec-firewall-bouncer-iptables -y
Or for nftables (recommended on Ubuntu 22.04+):
sudo apt install crowdsec-firewall-bouncer-nftables -y
Verify the Bouncer
sudo cscli bouncers list
Output should show cs-firewall-bouncer with status valid.
Test That the Bouncer Is Working
sudo cscli decisions list
This shows currently banned IPs. If the community blocklist loaded successfully you'll see thousands of entries.
Configure the Nginx Bouncer (Layer 7)
The Nginx Bouncer operates at the HTTP layer — it can respond with a 403 Forbidden, CAPTCHA challenge, or redirect instead of just silently dropping packets at the firewall level.
Install Nginx Bouncer
sudo apt install crowdsec-nginx-bouncer -y
Configure /etc/crowdsec/bouncers/crowdsec-nginx-bouncer.conf
API_KEY=<your-api-key> # get it from: sudo cscli bouncers list
API_URL=http://127.0.0.1:8080
Add Directives to Your Nginx Server Block
server {
# ...
lua_package_path "/usr/local/share/lua/5.1/?.lua;;";
access_by_lua_file /usr/lib/crowdsec/lua/nginx/access.lua;
# ...
}
Then reload Nginx:
sudo nginx -t && sudo systemctl reload nginx
Essential cscli Commands
cscli is the primary CLI tool for managing all aspects of CrowdSec:
| Command | Description |
|---|---|
cscli metrics | View overall detection statistics |
cscli alerts list | List recent alerts |
cscli decisions list | Show currently banned IPs |
cscli decisions delete --ip 1.2.3.4 | Remove a ban on that IP |
cscli decisions add --ip 1.2.3.4 --duration 24h | Manually ban an IP for 24 hours |
cscli bouncers list | Show connected bouncers |
cscli collections upgrade --all | Upgrade all collections |
cscli hub upgrade | Update Hub (parsers/scenarios) |
cscli console enroll <key> | Connect to CrowdSec Console |
CrowdSec Console — Free Web Dashboard
The CrowdSec Console (app.crowdsec.net) is a web dashboard that lets you:
- View alerts and decisions in real time
- Manage multiple Security Engines from one place
- Receive notifications when attack volume surges
- View Prometheus metrics in a visualized format
Connect your Security Engine to the Console:
sudo cscli console enroll <enrollment-key-from-console>
sudo systemctl restart crowdsec
The Console Community tier is free with no limit on the number of enrolled Security Engines.
Pricing and Premium Plans (verified from crowdsec.net/pricing — October 2026)
| Plan | Price | Best For |
|---|---|---|
| Security Engine (Open Source) | Free | Everyone |
| Console Premium | Pay-per-engine (see website) | Mid-to-large teams |
| IP Reputation API | From $49/mo (5,000 queries) | Dev/SOC teams |
| Platinum Blocklists | From $1,900/mo (SMB) | Enterprise |
| Live Exploit Tracker | From $2,000/mo (SMB) | Enterprise Security |
| Local CTI Replication | From $9,000/mo | Large Enterprise |
Data as of October 2026 — verify current pricing at crowdsec.net/pricing
For individual VPS owners and startups, the free Security Engine + Community Blocklist provides solid day-to-day protection. Premium tiers are designed for organizations that need threat intelligence weeks ahead of the community blocklist.
Who Should Use CrowdSec?
Use CrowdSec if…
You run a VPS or dedicated server on Linux and want smarter automated protection than Fail2ban — especially if you host Nginx/Apache, WordPress, or any service exposed to the internet. CrowdSec is free, uses minimal RAM, and immediately provides the community blocklist with no manual configuration.
Works great with:
- VPS running Nginx/Apache + WordPress
- Servers with SSH exposed publicly
- Self-hosted services (Gitea, Nextcloud, Mattermost)
- Shared hosting running WHM/cPanel (native support)
- Docker container deployments
- Kubernetes clusters
May not be necessary if:
- You use managed shared hosting where the provider handles security (e.g., AsiaGB, Ruk-Com Cloud with CPGuard/Imunify360)
- You have Cloudflare WAF in front of your origin and do not run the origin server directly
Looking for a VPS that pairs well with CrowdSec? See our tested picks for Thailand.
Best VPS in Thailand 2026Frequently Asked Questions
Is CrowdSec really free?
The Security Engine (core product) is 100% free and open source. Premium offerings — Platinum Blocklists (from $1,900/mo), IP Reputation API (from $49/mo), and Console Premium — are available for organizations needing advanced threat intelligence well ahead of the free community blocklist.
How does CrowdSec differ from Fail2ban?
Fail2ban is single-machine only and only blocks IPs attacking your specific server. CrowdSec shares threat data across 70,000+ servers worldwide, providing a crowd-sourced blocklist automatically. It also includes a Nginx bouncer, AppSec WAF, web dashboard, and Prometheus metrics — features Fail2ban lacks entirely.
What are the hardware requirements?
CrowdSec requires 1 CPU core, 100 MB RAM, and 1 GB disk. It runs comfortably on budget VPS with 1 GB RAM and a single vCPU.
What data does CrowdSec send out?
When opted in, CrowdSec shares: the attacker's IP, timestamp, and the triggered scenario only. It does not send log content or user data. You can opt out entirely if privacy is a priority.
Does CrowdSec work with UFW?
Yes. The Firewall Remediation Component supports iptables, nftables, and pf. It works alongside UFW without conflict — CrowdSec injects rules directly into the iptables/nftables chain.
How often does the Community Blocklist update?
The Community Blocklist updates automatically with an average 5% daily IP rotation, sourced from 70,000+ servers sending 40 million+ signals per day. It stays 7–60 days ahead of conventional blocklists.
Can CrowdSec be installed on cPanel/WHM?
Yes — CrowdSec has native WHM support. An official installation guide is available at docs.crowdsec.net specifically for WHM environments.
Does CrowdSec support IPv6?
Yes, CrowdSec fully supports IPv6 for both detection and blocking. It handles IPv4 and IPv6 simultaneously without additional configuration.