-
-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
c9eb4a9
commit 21427cd
Showing
13 changed files
with
963 additions
and
247 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,36 @@ | ||
# 🛡️ Caddy WAF Middleware | ||
# 🛡️ Caddy WAF Middleware Documentation | ||
|
||
A robust, highly customizable, and feature-rich **Web Application Firewall (WAF)** middleware for the Caddy web server. This middleware provides **advanced protection** against a comprehensive range of web-based threats, seamlessly integrating with Caddy and offering flexible configuration options to secure your applications effectively. | ||
|
||
This documentation provides everything you need to deploy and manage the Caddy WAF middleware effectively. | ||
|
||
## 📑 Table of Contents | ||
|
||
1. * [Configuration Options](configuration.md) | ||
2. * [Rules Format](rules.md) | ||
3. * [Metrics](metrics.md) | ||
4. * [Protected Attack Types](attacks.md) | ||
5. * [Blacklist Formats](blacklists.md) | ||
6. * [Rate Limiting](ratelimit.md) | ||
7. * [Country Blocking and Whitelisting](geoblocking.md) | ||
8. * [Dynamic Updates](dynamicupdates.md) | ||
9. * [Testing](testing.md) | ||
10. * [Docker Support](docker.md) | ||
11. * [Rule/Blacklist Population Scripts](scripts.md) | ||
12. * [Prometheus Metrics](prometheus.md) | ||
|
||
|
||
--- | ||
### 🚀 Getting Started | ||
|
||
1. **[Introduction](introduction.md)** - *Overview of the Caddy WAF, its purpose, and key benefits.* (Optional - Add if you have an intro doc, otherwise this index page serves as intro) | ||
2. **[Installation](installation.md)** - *Instructions for installing the Caddy WAF middleware.* (Optional - if you have an explicit installation document) | ||
|
||
### ⚙️ Core Configuration | ||
|
||
3. **[Configuration Options](configuration.md)** - *Detailed explanation of all available configuration settings, including how to set up the different options and settings of the WAF.* | ||
4. **[Rules Format (`rules.json`)](rules.md)** - *A comprehensive guide to defining custom rules using the JSON format, with details about all the fields available and examples on how to use them.* | ||
5. **[Blacklist Formats](blacklists.md)** - *Documentation of the formats used for defining IP and DNS blacklists, providing examples and guidelines for managing these files.* | ||
6. **[Rate Limiting](ratelimit.md)** - *How to configure rate limiting, including parameters, usage and caveats.* | ||
7. **[Country Blocking and Whitelisting](geoblocking.md)** - *Details on how to configure country-based blocking and whitelisting using the MaxMind GeoIP2 database, including how to obtain the necessary files.* | ||
|
||
### 🛡️ Security Features | ||
|
||
8. **[Protected Attack Types](attacks.md)** - *An overview of the wide range of web-based threats that the Caddy WAF is designed to protect against.* | ||
9. **[Dynamic Updates](dynamicupdates.md)** - *How to dynamically update the WAF rules and other settings without downtime or restarting the Caddy server.* | ||
|
||
### 📊 Monitoring and Management | ||
|
||
10. **[Metrics](metrics.md)** - *Details about the WAF's metrics endpoint and the different metrics collected, which provide insights into traffic patterns and WAF behavior, to help fine-tune the rules.* | ||
11. **[Prometheus Metrics](prometheus.md)** - *Instructions on how to expose WAF metrics using the Prometheus format, for integration with your monitoring system.* | ||
12. **[Rule/Blacklist Population Scripts](scripts.md)** - *Documentation on the provided scripts to automatically fetch, update and generate rules and blacklists from external resources.* | ||
|
||
### 🧪 Testing and Deployment | ||
|
||
13. **[Testing](testing.md)** - *Guidance on how to test the WAF's effectiveness using the provided testing tools, with different ways of testing the WAF functionality.* | ||
14. **[Docker Support](docker.md)** - *Instructions on how to build and run the WAF using Docker, including best practices for containerized deployments.* |
Oops, something went wrong.