diff --git a/README.md b/README.md index bad9395..a7a7bc2 100644 --- a/README.md +++ b/README.md @@ -1,67 +1,32 @@ -# Nginx Pathfinder Proxy +# Nginx Pathfinder - Infraestrutura (Produção) -## Visão Geral -Proxy Reverso NGINX simplificado rodando em um **único container Docker**. -Este projeto foi refatorado para remover automações complexas, WAF (ModSecurity) e Fail2ban, focando em simplicidade e gerenciamento manual. +Este diretório contém o "motor" do Proxy Reverso Pathfinder. Ele gerencia a imagem Docker, a orquestração de serviços e os componentes de segurança de baixo nível. -## Arquitetura -- **Serviço**: `nginx-proxy` (Imagem Alpine Customizada) -- **Portas**: `80`, `443` (Modo Bridge) -- **Gerenciamento**: Manual via edição de arquivos no host. +## 🚀 O que este repositório faz: +* **Engine High-End:** Nginx 1.25 (Mainline) customizado. +* **Protocolos Modernos:** Suporte nativo a **HTTP/3 (QUIC)** e Brotli. +* **Segurança Nativa:** Compilado com **ModSecurity v3** (WAF). +* **Orquestração:** Gerencia o container Nginx e o Sidecar do **Fail2Ban**. +* **Auto-Healing:** Script `safe-deploy.sh` para validação atômica de configurações. -## Estrutura de Arquivos -``` +## 🏗️ Estrutura de Arquivos +```text . -├── conf.d/ # Configurações de sites (VHosts) - EDITE AQUI -├── snippets/ # Trechos reutilizáveis (Rate Limit, Cache, Maps) -├── ssl/ # Certificados SSL (.crt, .key) -├── nginx.conf # Configuração global -├── docker-compose.yml # Definição do serviço -└── Dockerfile # Definição da imagem +├── Dockerfile # Build Multi-stage (Compilação do Nginx + ModSec) +├── docker-compose.yml # Orquestração (Nginx + Fail2Ban + Volumes) +├── entrypoint.sh # Inicialização de serviços (Nginx, SSH) +├── safe-deploy.sh # Script para recarregar configs sem downtime +└── fail2ban/ # Configurações do sidecar de segurança ``` -## Como Usar +## ⚙️ Operação +Para gerenciar o ciclo de vida do container: +* **Build:** `docker compose build` +* **Start:** `docker compose up -d` +* **Logs da Infra:** `docker compose logs -f` -### 1. Iniciar -```bash -docker compose up -d --build -``` +--- -### 2. Adicionar Novo Site -Crie um arquivo `.conf` na pasta `conf.d/`. -**Exemplo:** -```nginx -server { - listen 80; - server_name exemplo.com.br; - - location / { - proxy_pass http://192.168.1.50:8080; - include /etc/nginx/snippets/proxy_params.conf; # Se houver params comuns - } -} -``` - -### 3. Aplicar Mudanças -Após editar qualquer arquivo (`nginx.conf` ou `conf.d/*`), recarregue o Nginx: -```bash -docker exec nginx-proxy nginx -s reload -``` - -### 4. SSL -Coloque seus certificados manualment na pasta `ssl/` e aponte no seu config: -```nginx -ssl_certificate /etc/nginx/ssl/meu-site.crt; -ssl_certificate_key /etc/nginx/ssl/meu-site.key; -``` - -## Cache -O sistema utiliza uma zona de cache dinâmica única. -Para ativar cache em um location: -```nginx -location / { - proxy_cache dynamic_cache; - proxy_cache_valid 200 1h; - proxy_pass http://backend; -} -``` \ No newline at end of file +> [!IMPORTANT] +> **Configurações de Sites:** Este repositório NÃO contém as regras de sites ou certificados. Para editar domínios, snippets e regras do WAF, utilize o repositório: +> [NGINX Pathfinder - Sites Ativos](../sites-ativos) \ No newline at end of file