docs(crowdsec): fix documentation to match actual configuration#11
Merged
Conversation
Fixed multiple inaccuracies in CrowdSec documentation to reflect the actual implementation: Configuration Location: - Corrected path: compose/core/traefik/compose.yaml (not separate crowdsec dir) - CrowdSec is deployed alongside Traefik with shared networks Collections: - Documented pre-installed collections via environment variables: * appsec-generic-rules, appsec-virtual-patching * Dominic-Wagner/vaultwarden, LePresidente/authelia * openappsec/openappsec - Removed incorrect examples (http-cve was not pre-installed) Data Sources: - Docker container logs via use_container_labels (not file logs) - Containers monitored when labeled with crowdsec.enable=true - Added AppSec WAF component on port 7422 Traefik Bouncer: - Corrected configuration with all actual parameters: * AppSec WAF integration (crowdsecappsechost) * Redis cache (traefik-redict:6379) * Trusted IPs configuration * Forwarded headers trusted IPs - Removed simplified/incorrect examples CTI Integration: - Added complete CTI API configuration section - Documented background noise score-based profiles - Explained progressive ban duration formula - CTI false positive detection Notifications: - Added Telegram notifications section - Alert format with CTI scores - Setup instructions - Required secrets AppSec WAF: - New section documenting Application Security features - Virtual patching for known vulnerabilities - Protection against SQL injection, XSS, path traversal, etc. - AppSec metrics commands Network Architecture: - Corrected networks: vnet-traefik, vnet-socket - Docker API access via Cetusguard proxy (not direct socket) - DOCKER_HOST: tcp://cetusguard:2375 Whitelist Configuration: - Fixed path: compose/core/traefik/crowdsec/ip-whitelist.yaml - Documented RFC 1918 private network whitelist - Corrected YAML structure Profiles: - Documented bn_score profile with CTI background noise - Progressive ban duration based on repeat offenses - Telegram notification integration Troubleshooting: - Removed log file verification (uses Docker labels) - Added Cetusguard connectivity checks - Added container label verification - Added AppSec WAF testing examples Best Practices: - Added Redis cache monitoring - Added CTI score review - Added AppSec monitoring - Documented required Infisical secrets - Updated backup paths Monitoring: - Added acquisition sources check - Added AppSec metrics commands - Corrected metrics examples 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
📚 Documentation Build Report✅ Documentation built successfully! Site size: 6.1M Preview: Documentation will be deployed to GitHub Pages after merging to main. Build details
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Comprehensive review and correction of CrowdSec documentation to accurately reflect the actual implementation, including AppSec WAF, CTI integration, Telegram notifications, and Docker label-based log parsing.
Key Corrections
❌ What Was Wrong → ✅ What's Correct
Configuration Location
compose/crowdsec/compose.yamlcompose/core/traefik/compose.yamlalongside TraefikCollections
crowdsecurity/traefikandcrowdsecurity/http-cvecrowdsecurity/appsec-generic-rulescrowdsecurity/appsec-virtual-patchingDominic-Wagner/vaultwardenLePresidente/autheliaopenappsec/openappsecData Sources
/var/log/traefik)use_container_labels: true)Bouncer Configuration
crowdsecappsechost)traefik-redict:6379)Network & Docker Access
tcp://cetusguard:2375vnet-traefik,vnet-socketWhitelist
compose/crowdsec/config/parsers/s02-enrich/whitelist.yamlcompose/core/traefik/crowdsec/ip-whitelist.yamlNew Documentation Sections
1. Cyber Threat Intelligence (CTI)
CTI API Integration:
Custom Profiles:
Progressive bans based on repeat offenses:
2. Application Security (AppSec) WAF
Virtual Patching:
Configuration:
3. Telegram Notifications
Alert Format:
Setup Requirements:
4. Data Sources
Docker Container Labels:
Containers must be labeled:
5. Required Secrets
Documented all required Infisical secrets:
TRAEFIK_CROWDSEC_BOUNCER- Bouncer API keyCROWDSEC_CTI_API_KEY- CTI API keyTELEGRAM_BOT_ID- Telegram bot tokenTELEGRAM_CHAT_ID- Telegram chat IDUpdates by Section
Configuration
Collections
Data Sources
Traefik Bouncer
CTI
Notifications
AppSec WAF
Whitelists
Troubleshooting
Best Practices
Verification
All changes verified against actual configuration in:
compose/core/traefik/compose.yamlcompose/core/traefik/crowdsec/config.yamlcompose/core/traefik/crowdsec/acquis.d/*.yamlcompose/core/traefik/crowdsec/profiles.yamlcompose/core/traefik/crowdsec/telegram.yamlcompose/core/traefik/crowdsec/ip-whitelist.yamlcompose/core/traefik/rules/crowdsec.ymlImpact
Type of Change
🤖 Generated with Claude Code