docs: Atualiza README com detalhes da nova infraestrutura

This commit is contained in:
João Pedro Toledo Goncalves 2026-02-04 19:20:34 -03:00
parent 609c92f484
commit 44c0220cba
1 changed files with 24 additions and 59 deletions

View File

@ -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;
}
```
> [!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)