Skip to content

Commit

Permalink
docs updated.
Browse files Browse the repository at this point in the history
  • Loading branch information
fabriziosalmi committed Jan 19, 2025
1 parent c9eb4a9 commit 21427cd
Show file tree
Hide file tree
Showing 13 changed files with 963 additions and 247 deletions.
18 changes: 17 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
Okay, here's the updated `README.md` with the improved index, incorporating the file locations in `/docs` and making it more user-friendly:

# 🛡️ Caddy WAF Middleware

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.
Expand Down Expand Up @@ -137,7 +139,21 @@ Here's a minimal Caddyfile example to get started:

For complete documentation, including configuration options, rule format details, protected attack types, testing strategies, and more, please refer to the `/docs` directory in this repository.

[Link to `/docs`](/docs/)
### 📑 Table of Contents

1. [**Installation**](docs/installation.md) - *Instructions for installing the Caddy WAF middleware.*
2. [**Configuration Options**](docs/configuration.md) - *Detailed explanation of all available configuration settings.*
3. [**Rules Format (`rules.json`)**](docs/rules.md) - *A comprehensive guide to defining custom rules using the JSON format.*
4. [**Blacklist Formats**](docs/blacklists.md) - *Documentation of the formats used for defining IP and DNS blacklists.*
5. [**Rate Limiting**](docs/ratelimit.md) - *How to configure rate limiting, including parameters and usage.*
6. [**Country Blocking and Whitelisting**](docs/geoblocking.md) - *Details on how to configure country-based blocking and whitelisting.*
7. [**Protected Attack Types**](docs/attacks.md) - *An overview of the wide range of web-based threats that the Caddy WAF is designed to protect against.*
8. [**Dynamic Updates**](docs/dynamicupdates.md) - *How to dynamically update the WAF rules and other settings without downtime.*
9. [**Metrics**](docs/metrics.md) - *Details about the WAF's metrics endpoint and the different metrics collected.*
10. [**Prometheus Metrics**](docs/prometheus.md) - *Instructions on how to expose WAF metrics using the Prometheus format.*
11. [**Rule/Blacklist Population Scripts**](docs/scripts.md) - *Documentation on the provided scripts to automatically fetch, update and generate rules and blacklists.*
12. [**Testing**](docs/testing.md) - *Guidance on how to test the WAF's effectiveness using the provided testing tools.*
13. [**Docker Support**](docs/docker.md) - *Instructions on how to build and run the WAF using Docker.*

---

Expand Down
47 changes: 31 additions & 16 deletions docs/README.md
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.*
Loading

0 comments on commit 21427cd

Please sign in to comment.